summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2011-12-08Introduced a BaseGauge class which TfpgGauge descends from.Graeme Geldenhuys
- Also made the various xxxDraw methods virtual and moved them to the protected section. So they can be overridden in descendants if needed. - Fixed the default color value of the Color property. The value stored in RTTI was different to the actual value assigned in the constructor.
2011-12-08New functions to return darker or lighter variations of a color.Graeme Geldenhuys
2011-12-08embedded TAB characters replaced with Space character indentation.Graeme Geldenhuys
2011-12-06Hide the hint window when the mouse button is pressed.Graeme Geldenhuys
2011-12-05Bump visibility of BorderStyle property in StringGrid and FileGrid widgetsGraeme Geldenhuys
2011-12-05Implements BorderStyle property for basegrid widget.Graeme Geldenhuys
2011-12-05Remove redundant painting code in basegrid.Graeme Geldenhuys
The HandlePaint() method is already wrapping with BeginDraw/EndDraw calls in the TfpgWidget class.
2011-12-02version bump to 0.8Graeme Geldenhuys
2011-12-01treeview: Adds BeginUpdate / EndUpdate support.Graeme Geldenhuys
This drastically improves performance, if you have some code that iterates and updates all nodes.
2011-11-29Implements BorderStyle for TfpgMemo.Graeme Geldenhuys
2011-11-29move declaration of TfpgEditBorderStyle so it is more accessible.Graeme Geldenhuys
This now makes it easier to reuse this border style declaration in other widgets. We need to refactor some other widgets too, that have there own border styles as well.
2011-11-21Fixed the parameter modifier of TfpgStyleManager.AssignStyleTypes()Graeme Geldenhuys
We can now pass in the Lines property of a Memo or Combobox directly, without the need of an extra local TStrings variable.
2011-11-21TfpgWindowBase now introduces a BringToFront() method.Graeme Geldenhuys
2011-11-18First draft of MDI support.Graeme Geldenhuys
This work equates to about 3 hours of coding. Not bad I think! ;-) The general idea is to have to new classes. The MDIWorkArea class is the parent widget form MDI child forms. We then also have a MDIChildWindow class which implements the outer child window - thus the one with the titlebar and blue borders. The end use creates a form based on TfpgFrame, not TfpgWindow. This design might change later. The users form is then embedded inside the MDIChildWindow, and displayed inside the bounds of the MDIWorkArea.
2011-11-07fixes a spelling mistake in a code commentGraeme Geldenhuys
2011-11-07Timer related functions now check to see if global fpgTimers exists or not.Graeme Geldenhuys
2011-11-07new overloaded DumpStack() can now output to a TStringListGraeme Geldenhuys
It wasn't always desireable for DumpStack to output to the console, because it doesn't always exist, and the user will normally not see it if app is launched from a icon. We can now output that info to a stringlist, and display it to the end-user in whatever way we want.
2011-10-31report tool: move some images into standard images listJean-Marc Levecque
2011-10-27tree: improved the spacing / positioning of the node text inside the focus ↵Graeme Geldenhuys
selection The text was right on the left edge of the focus selection rectangle. Now it is evenly spaced with 2px margin on each side.
2011-10-27tree: Added a note about the limitation of Node.HasChildren call.Graeme Geldenhuys
For now, please use Node.Count instead.
2011-10-26new handy function to covert individual R, G and B values into a TfpgColor ↵Graeme Geldenhuys
value.
2011-10-26treeview: implemented StateImageList support (treeview with checkboxes for ↵Graeme Geldenhuys
example) - Added StateImageList to TfpgTreeview - Added StateImageIndex to TfpgTreeNode - Added OnStateImageClicked event for TfpgTreeview. - Reworked the TfpgTreeview.HandlePaint() method for the new functionality, and also removed all the code duplication that existed before. - The node selection rectangle now only cover the text portion of a node, and note the images related to that node. - Minor bugfix in the selection rectangle, when depending on various properties, the selection rectangle was too small, and the node text wasn't fully visible.
2011-10-26fpg_tree: replaced all debugging writeln() statements with SendDebug() callsGraeme Geldenhuys
We can now use the fpGUI's Debug Server to monitor any debug events.
2011-10-26TfpImageList.Items[] property is now set as the default property for the class.Graeme Geldenhuys
2011-09-21fixed bug where combobox hint closes the dropdown window.Graeme Geldenhuys
2011-09-21PromputUserDialog: changes so descendants have better access to certain data.Graeme Geldenhuys
- We can new set an initial UserID too. - Moved two TfpgEdit components to protected section.
2011-09-21SelectFileDialog() can now specify the initial directory too.Graeme Geldenhuys
2011-09-13x11: implemented window grouping support used by some X11 window managers.Graeme Geldenhuys
2011-09-13new utility function to get the current executable nameGraeme Geldenhuys
2011-09-07Changed the password char from asterisk to unicode black circleGraeme Geldenhuys
2011-09-02Corrected the timing when AfterCreate is called in TfpgFrameGraeme Geldenhuys
2011-08-31add sharing options when opening po files.Graeme Geldenhuys
This doesn't have any affect under Linux, but it might under Windows.
2011-08-31pofile unit now uses the UTF-8 safe file functions.Graeme Geldenhuys
2011-08-31updates KeycodeToText() to use the new resource string constants.Graeme Geldenhuys
2011-08-31adds resource string constants for menu key shortcuts.Graeme Geldenhuys
- also updated the translation include files. ready for translation.
2011-08-26x11: removed trailing whitespaceGraeme Geldenhuys
2011-08-26x11: fixed a compiler hint about an invalid/unsafe typecast.Graeme Geldenhuys
2011-08-24bugfix in PageControl keypress handling. Consume incorrectly set.Graeme Geldenhuys
We incorrectly set the consumed variable, and called inherited unnecessarily. This is now improved.
2011-08-24menu: correctly handle keyboard shortcut events nowGraeme Geldenhuys
Before the menu only used to process the Alt+<key> events for the mainmenu bar (top level menus). Now we recursively run through all menu items looking for a hotkey match.
2011-08-24forms: HandleKeyPress() is replaced my DoKeyShortcut()Graeme Geldenhuys
This is done because DoKeyShortcut() clearly says what it does. It only processes keyboard shortcut events.
2011-08-24added begin..end block to make code more readable.Graeme Geldenhuys
2011-08-24bugfix: Menu key never set consumed = True in key press processingGraeme Geldenhuys
2011-08-24reworked TfpgWidget.MsgKeyPress() to correctly handle keyboard shortcuts.Graeme Geldenhuys
processing order is now as follows; - widget that keypress occured it trys to handle the event. - then to keyboard shortcut processing for the widget's children - then work back towards the top-level form giving chance for keyboard navigation (tabstop) processing. eg: pressing Tab key - then let the top level form to keyboard shortcut processing eg: allowing MainMenu to process the event. - then allow the top level for to process OnKeyPress if such an event handler is implemented. - then if the top level form is not the MainForm, and the current top level form is not shown model, allow the application.mainform to process the keyshortcut in it's main menu.
2011-08-24Introduced DoKeyShortcut() into TfpgWidgetGraeme Geldenhuys
This is similar to HandleKeyPress() but takes into account the original widget that started the process, so it doesn't process that widget or its children twice.
2011-08-24Shift comes after Ctrl or AltGraeme Geldenhuys
In KeycodeToText(), 'Shift+' came before Ctrl or Alt. This is not normal practice, so I moved it.
2011-08-18Added TfpgFrame to fpGUI.Graeme Geldenhuys
This is a UI Designer friendly component that allows you to embed frames "Windows" inside other windows.
2011-08-17hint window timer field variable renamed.Graeme Geldenhuys
- Renamed the timer field variable from T_Chrono to FTimer. - Renamed the OnTimer event handler from T_ChronoFini to HintTimerFired - Disabled the timer *before* hinding the hint window. This prevents those add AV's that occur when you close an application. - No need to explicityl disable the timer in HintWindow destructor. When you free a timer, it automatically gets disabled.
2011-08-17TfpgCaret doesn't need it's timer enabled at creation.Graeme Geldenhuys
Now the internal blink timer only gets activating when a Canvas is assigned.
2011-08-17Fixed KeycodeToText that overwrote the ShiftState of previous values.Graeme Geldenhuys
2011-08-17GDI: Fixed the rubbish timer implementation.Graeme Geldenhuys
I was clearly smoking something that day! Anyway, the GDI timer is now correctly implemented, and doesn't push up the CPU load any more. No matter how long the timer runs for. The timer is much more accurate/consistent in firing as well. :-)