summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2011-05-06hook up the Style Manager.Graeme Geldenhuys
The fpgStyle global variable is now simply a reference to the current style in the fpgStyleManager. The Style Manager does the free'ing of the style too, so we simply need to tell the style manager when we want that done.
2011-05-06make the Style Manager available in the fpg_main unit.Graeme Geldenhuys
This is a bit of a cross-linking case, jumping from corelib code to gui code, but I can't see how this can be done any other way. After all, fpGUI is a GUI toolkit - not a non-gui utility library. For some strange reason the 'Win2000' and 'auto' did not register automatically, even though they are in the *.lpk package and in the initialization section. So I had to add that style unit to the uses clause. I need to investigate why this had to be done.
2011-05-06Just grouped the methods of TfpgStyle based on functionality and widgets.Graeme Geldenhuys
This is basically just some code formatting changes, making it easier for a developer to see what style methods related to what widgets - that's if the method names was not obvious enough. ;-)
2011-05-06Refactored the TfpgBaseEdit to use the new style painting method.Graeme Geldenhuys
2011-05-06Implemented a new style method that draws the EditBox background.Graeme Geldenhuys
This is a common style implementation - basically just paints the background a specific color. Nothing fancy.
2011-05-06Skeleton style units.Graeme Geldenhuys
These will later contain the various style implementations.
2011-05-06Style Manager factory implemenationGraeme Geldenhuys
This unit contains a Style Manager that will be used to register any new styles with. It also creates a default style instance. It also allows users to change the default style any other style, or custom developed style.
2011-05-05Added empty placeholder unit back into src directory.Graeme Geldenhuys
This unit will later contain the TfpgCommonStyle (currently known as TfpgStyle) code.
2011-05-05Moved fpg_style to prototypes fpg_styler unit.Graeme Geldenhuys
This gives use the fpg_style unit in the 'gui' directory to implement styles we can actually use at this time with the existing theming code.
2011-05-04Prototype style: implemented cuPushButtonLabelGraeme Geldenhuys
This fpg_style prototype unit should really be removed. I don't like the code at all, and it isn't actually used in any of the GUI widgets yet.
2011-05-04Prototype style: implement "draw focus rect" from scratch.Graeme Geldenhuys
2011-05-04Call methods from fpgStyle directly.Graeme Geldenhuys
Seeing that we already use a few methods directly from fpgStyle, lets change all the others to be consistent.
2011-05-04Introduced the usage of fpgStyle.GetButtonShift.Graeme Geldenhuys
Custom styles can now define there own button shift values and the TfpgButton will adhere to them.
2011-05-03AText variable was never really used, so I removed it.Graeme Geldenhuys
2011-05-03Fixed a compiler warning. I forgot to set the function result.Graeme Geldenhuys
2011-05-03New style method introduced: TfpgStyle.GetButtonShiftGraeme Geldenhuys
This allows a style to define by how much the button image and text must shift (if at all) when the button is pressed. Possitive numbers moves right and down. Negative numbers move up and left. Zero values means the icon and text doesn't move [like under Mac OS X].
2011-05-03marked various methods with overload.Graeme Geldenhuys
I know in FPC mode objfpc it is not strictly needed, but lets keep to the Object Pascal language standards for now.
2011-05-03Introduced a new overloaded method TfpgStyle.DrawButtonFace()Graeme Geldenhuys
2011-05-03promoted nested function CalculatePositions() to a method of TfpgBaseButtonGraeme Geldenhuys
2011-04-23minor TfpgEditButton improvements when used inside the UI Designer.Graeme Geldenhuys
2011-04-23new TfpgEditButton component with ellipses glyph on the button.Graeme Geldenhuys
2011-04-05Fixes a potential AV when ActiveWidget is freedGraeme Geldenhuys
If the ActiveWidget was freed, the parent never got notified. If focus was then changed, the parent tried to call ActiveWidget.HandleFocusKill, causing an access violation. The toolkit now correctly sets ActiveWidget to nil if it was freed, and as a extra failsafe, wraps the HandleFocusKill call in a try..except block.
2011-03-26Set the default value for IgnoreDblClick propertyGraeme Geldenhuys
2011-03-24Partial undo of commit 2ffdd747.Graeme Geldenhuys
The code change in the original commit worked fine for Windows, but caused other problems under Linux. So I have commented the original code change for Linux until I can find a more suitable solution.
2011-03-24Replaced direct API usage with an already implemented method.Graeme Geldenhuys
2011-03-24Replaced old reference to GFX to fpGUI.Graeme Geldenhuys
2011-03-24improved charset translation to UTF8Graeme Geldenhuys
2011-03-08Calendar Check Combo did not paint date text in correct position.Graeme Geldenhuys
Now it takes into account the height of the component and calculates the text position accordingly.
2011-03-08Combobox margin fixGraeme Geldenhuys
When painting the combobox did not take into account that the margin applies to both the left and right side of the combobox.
2011-03-08applied the missing setting for Lazarus IDE so package unit is not added to ↵Graeme Geldenhuys
a project uses clause.
2011-02-07ComboBox: New Margin default 3 -> 1.Graeme Geldenhuys
The Margin is how many pixels from the internal background the text must appear. Later we will replace this with SideMargin and HeightMargin properties.
2011-02-07ComboBox: text position is now the same as TfpgEdit.Graeme Geldenhuys
We now use Canvas.DrawString() to auto calculate the text position based on the text flags passed in. This is now the same as TfpgEdit does.
2011-02-07Combobox fix: Setting the Martin cause the Height to change.Graeme Geldenhuys
Now the Height will only change if AutoSize is actually enabled.
2011-02-07Default Font changes.Graeme Geldenhuys
* Linux now defaults to 'Liberation Sans' which comes standard with most Linux distros, and is metric compatible with Arial. The latter is freely available, but doesn't come standard with any Linux disto. * Windows default font size is now 8 (down from previous 10), which is now the same as the remainder of Windows apps. Strange that the same font as size (eg: Arial-10) is different sizes in pixels under Linux and Windows. Weird! :-/
2011-02-07Fix the URL of fpGUI's home page. We recently moved to SourceForge.Graeme Geldenhuys
2011-02-07HyperLink Label: published some more properties.Graeme Geldenhuys
2011-02-07Memo: SetText now assigns incoming text as is to the internal stringlist.Graeme Geldenhuys
No more manual handling of LineEnding characters etc, because StringList does that already, and our custom handling causes blank lines to disappear in the memo. Not what we want.
2011-02-02Using CreateLabel and a custom font did not resize label component correctly.Jean-Marc Levecque
2011-01-20adds extra checks to know when we shouldn't fire the OnClick eventGraeme Geldenhuys
2011-01-19OnClick now only triggers if the LeftMouseUp occurs in the bounds of the widget.Graeme Geldenhuys
Old behaviour was that the OnClick will trigger even if the left mouse button was released outside the bounds. This is not standard behaviour compared to other gui toolkits.
2011-01-19A little tweak to allow sorting of ListViewDavid Emerson
2011-01-14X11: OnDragDrop the Sender and Source parameters are now populated.Graeme Geldenhuys
Sender: the widget the mouse was over when drop occurs. Source: If whole DND is inside the same app, then Source is the original Widget the DND started from.
2011-01-14GDI: OnDragDrop the Sender and Source parameters are now populated.Graeme Geldenhuys
Sender: the widget the mouse was over when drop occurs. Source: If whole DND is inside the same app, then Source is the original Widget the DND started from.
2011-01-14X11: OnDragEnter now has Sender and Source parameters populatedGraeme Geldenhuys
Sender: = the widget the mouse entered and that triggered the event Source: = if whole DND occurs in same app, then Source is the Widget the DND action started from.
2011-01-14GDI: OnDragEnter now has Sender and Source parameters populatedGraeme Geldenhuys
Sender = widget the mouse entered and triggered the event Source = if the whole DND is inside the same app, then Source is the original Widget drag started from.
2011-01-13tabs: When creating tabsheets, there sizes are immediately calculated.Graeme Geldenhuys
* A new constructor was also added where you can pass the tabsheet title, so tabsheet size can be better calculated if tabs are set to Left or Right.
2011-01-13button: CreateButton() helper method never called UpdateWindowPositionGraeme Geldenhuys
2011-01-13treeview: various changes due to new resizing behaviour of toolkitGraeme Geldenhuys
* Also fixed the issue where the treeview did not always display in the UI Designer. * When the treeview is in the UI Designer, then only limited painting occurs.
2011-01-13treeview: publish more properties and set default values.Graeme Geldenhuys
2011-01-13Spinedit: extra check is required due to new resizing behaviour.Graeme Geldenhuys