summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-02-07UI Designer: published Margin property in OI of TfpgComboBox.Graeme Geldenhuys
2011-02-07UIDesigner: Combobox FocusItem is now after Items property.Graeme Geldenhuys
This means the UI Designer can correctly apply the FocusItem, because Items would already exist.
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-07bugfix: Loading user notes lots LineEnding prefixes.Graeme Geldenhuys
Notes are now loaded, exactly like they were saved.
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-03temp storage for Encoding implementation in DocViewGraeme Geldenhuys
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-20PDF reporting: it is now possible to paint a surface delimited by a polygon.Jean-Marc Levecque
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-19ListView demo updated to show sorting in action.Graeme Geldenhuys
Clicking on the first column of the left ListView will sort the listview by that column. Both listviews will get updated.
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-13uidesigner: added designtime support for BackgroundColor property in treeview.Graeme 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-12docview: incorrect anchors were set for Delete button in Notes form.Graeme Geldenhuys
2011-01-12unimportant updates due to ui designer.Graeme Geldenhuys
2011-01-12uidesigner: Field variable was in wrong location in code.Graeme Geldenhuys
It's not something that should be managed by the ui designer.
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-12UI Designer: minor code cleanup.Graeme Geldenhuys
2011-01-12UI Designer widget position fixGraeme Geldenhuys
This changes is to keep the UI Designer on par with what has changed in the core framework regarding widget positioning. We now need to call UpdateWindowPosition to correct the internal state of widgets, as they are loaded. Also removed unused/commented code.
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-11Splitter handling improvement in main formGraeme Geldenhuys
* PageControl now has a MinWidth set, so that making it ridiculously small doesn't scew with the widget anchors. * Due to above change the default splitter snapping doesn't occur. So now we worked around that using a new OnDoubleClick event handler, by simply making the pagecontrol visible or not.
2011-01-11DocView config dialog fix. A button didn't have its Anchors set.Graeme Geldenhuys
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.
2011-01-10DoMessagesPending() renamed to MessagesPending()Graeme Geldenhuys
Also made MessagesPending() a virtual abstract method in fpg_base.pas which every fpGUI backend must supply an implementation.
2011-01-10DocView documentation updateGraeme Geldenhuys
2011-01-06fpgCheckTimers is now a function.Graeme Geldenhuys
A boolean return value of True means that there are active timers.
2011-01-06new fpgPause() function.Graeme Geldenhuys
This function blocks the calling method, but allows for framework messages still to be processed. Could be useful for some developers.
2011-01-06Timers bugfix. Timers did not always work under Windows or Linux.Graeme Geldenhuys
Windows uses OS messages for the timer, and Linux not. So the DoMessagePending code had to be tweaked to work for both. I made a note of this, to see if there is a better way of doing this.
2011-01-03Minor code improvements.Graeme Geldenhuys
2011-01-03Moved FDefaultFont instantiation to a new location in code.Graeme Geldenhuys
2011-01-03new overloaded version of TfpgStyle.DrawControlFrame()Graeme Geldenhuys
2010-12-30Docview: apply min width/height constraints to the main form.Graeme Geldenhuys
2010-12-30TfpgWidget.MsgResize never considered constraints when calculating size deltasGraeme Geldenhuys
Old behaviour calculated the size deltas, then applied the new sizes from the received message. The new sizes were not guaranteed due to widget size constraints that could be applied, which means the deltas could be wrong, which in turn meant child components could be positioned incorrectly. We now store the original size values in temp variables, apply the new sizes which handles possible constraints, then only do we calculate the deltas, and then pass those on to HandleAlignments().