summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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
2011-01-13Creating various Edit components via helper functions now call UpdateWindowStateGraeme Geldenhuys
This means that the internal state of the result component instances are set correctly - without extra developer intervention.
2011-01-12Set Width and Height properties so internal state is correcty.Graeme Geldenhuys
We must not use field variables for Width, Heigh, Top and Left any more.
2011-01-12PageControl: Set a default value for published property ActivePageIndexGraeme Geldenhuys
2011-01-12Use Width and Height properties instead of internal fields in constructorGraeme Geldenhuys
This is sow that the internal FPrevXXX and other state information is setup correctly. The Edit Button controls also needed some extra code to work correctly in the UI Designer.
2011-01-12Incorrect anchors was set for pnlChar in Character Map dialog.Graeme Geldenhuys
2011-01-12UpdateWindowPosition now called irrespectively in MoveandResize.Graeme Geldenhuys
Because widget positioning is new possible before it is show, we need to call UpdateWindowPosition any time we set Width, Height, Top or Left so that it can update the internal state of the widget correctly.
2011-01-12Fix stupid typo bug in HandleMove.Graeme Geldenhuys
We used FHeight instead of FLeft!! Dope!
2011-01-11fixes Alignment and Anchor calculation even before we have a window handleGraeme Geldenhuys
Updated the following methods by rather checking the ComponentState, than the HasHandle result. Why? Because we want alignment and anchor calculations to work, even before we have a window handle. Something that happens often when using a Frame-type design for the UI. * HandleMove() * HandleResize() * UpdateWindowPosition() Due to removing the HasHandle check in UpdateWindowPosition, we had to do the HasHandle check in each backend code instead. We don't want to trigger API calls when we don't have a window handle yet.
2011-01-10DoWaitWindowMessage() defined as virtual abstract in fpg_baseGraeme Geldenhuys
* All fpGUI backends must override it as supply an implementation. * Moved DowaitWindowMessage() implementations to the protected section in the GDI and X11 backends.