summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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().
2010-12-30Doubled the message queue size to handle lots more messages.Graeme Geldenhuys
eg: When you resize continuously for a few seconds to test widget anchor processing, it was possible to reach the message queue limit. After this change, that is not so likely any more.
2010-12-30X11: Correctly implemented the handling of X11's GraphicsExpose event.Graeme Geldenhuys
2010-12-30Docview: Fixed anchors for OK and Save buttons in Config dialog.Graeme Geldenhuys
Also set min width/height constraints for the dialog.
2010-12-22Fixes a Index out of bounds error in Memo. Thanks Michael van CanneytGraeme Geldenhuys
2010-12-10solves a bug relating to height calculationJean-Marc Levecque
for groups, and text wrapping on PDF.
2010-12-01Added new images for the report engineJean-Marc Levecque
2010-11-30A simple example of customized MenuBar theme.Graeme Geldenhuys
Now the menu bar has a gradient look to it.
2010-11-30minor bugfix in menubar repainting after a popup window closes.Graeme Geldenhuys
2010-11-30Herewith are patches either for the demo and the report engine, plusJean-Marc Levecque
additional images that I am using in the preview form. Main improvements are the orientation of pages which can be changed at the section level, and the outline PDF view available when more than one section is defined.
2010-11-30TfpgMenuBar now offloads menu bar background painting to current fpgStyle ↵Graeme Geldenhuys
instance.
2010-11-30New theme function to paint MenuBar backgroundGraeme Geldenhuys
2010-11-30MenuBar now shows selected menu item of shown popup menu as indented bevelGraeme Geldenhuys
2010-11-30menu: consistent parameter name as used in TfpgMenuBar.Graeme Geldenhuys
2010-11-29it is now possible to create a document divided into sections, with differentJean-Marc Levecque
headers and footers. See the new multi sections demo.
2010-11-26Minor typo fixesGraeme Geldenhuys
2010-11-26A PDF Reporting engine and DemoJean-Marc Levecque
2010-11-19UI Designer: Register BoxLayout property for RadioButton widget.Graeme Geldenhuys
2010-11-19Radiobutton image repositioned the same as was done for Checkbox widget.Graeme Geldenhuys
* Painting is now near identical to Checkbox painting. * Focus rectangle is now only around text. Same reason as before. The left margin was 4px's which meant radiobuttons never aligned nicely with other widgets. Now the margin is only 2px so alignment is much better using the same left co-ordinate.
2010-11-18PageControl: introduced BeginUpdate and EndUpdate methods.Graeme Geldenhuys
Because new now only paint inside the HandlePaint() method, we need some optimization while setting properties. BeginUpdate now blocks painting until EndUpdate it called.
2010-11-18PageControl: tabs painting is now only done in HandlePaint()Graeme Geldenhuys
Painting outside the HandlePaint is possible but very unpredictable, so it is best we do not do it.
2010-11-18This X11 work-around doesn't seem to be needed anymore.Graeme Geldenhuys
Now that the Align issues have been resolved, this work-around is not needed any more. Commented, it now produces the exact same events as under Windows too. This is good, obviously. :)
2010-11-18TfpgWidget.SetAlign called the wrong ReAlign() method.Graeme Geldenhuys
Not calling Parent.Realign ment we (self widget) is not being resized (excluded from the re-align calculation), and thus the self widget status at its current location and dimentions - until the end-user actually resizes the top-level form. This has now been fixed. NOTE: If you create extra widgets (eg: frames) outside the control of the UI Designer, but still created before resource handles are created, and you use Align property in those widgets, you need to rather create those in Form.OnShow(). Align changes are not always acted apon before they have a window handle, so it's best to do it in Form.OnShow for example. I'm still figuring out how best to handle this.
2010-11-18UI Designer: minor code cleanup.Graeme Geldenhuys
2010-11-18grids: A massive speed improvement in destroying a grid with large amounts ↵Graeme Geldenhuys
of columns.
2010-11-16UIDesigner: has a new option to include/exclude code regions in new ↵Graeme Geldenhuys
dialogs/forms
2010-11-16ReadFormState in INI handling can now ignore size dimensions if needed.Graeme Geldenhuys
This is handy if you apply version version information to your ini files, and on a new version the program must ignore the old size values (because that sepecific form might have changed dimensions at design time).
2010-11-16fixed spelling mistakes in class documentation.Graeme Geldenhuys
2010-11-15Fixed compiler errors when DEBUG define is defined globally.Graeme Geldenhuys
2010-11-15A new compiler define for debuging GDI key input messages.Graeme Geldenhuys
2010-11-12checkbox: improved painting, and slight adjustment to image positionGraeme Geldenhuys
* Before, the image was 4 pixels away from the left, in default layout So when you align many components with there left edges, it looked as if the checkbox widget wasn't aligned correctly. * Now the image is only 2 pixels from the edge, so aligning with other widgets looks much better. * Focus rectangle is now only drawn around the text portion of the widget too. This is now similar to most OSes.
2010-11-12fpGUI Designer now registers new properties for ComboBox widget.Graeme Geldenhuys
2010-11-12ComboBox widget now has a AutoSize property default set to FalseGraeme Geldenhuys
* ComboBox was always auto sized which is not always desired. We now have a property to control that behaviour. * Default is False, in preperation for layout managers which control the size. * Widget frame borders are now retrieved from the current Style instance. * default Height is set to 24px. The same default used for TfpgEdit widget. Default sizes have been moved up into TfpgBaseComboBox, out of TfpgBaseStaticCombo.
2010-11-12Edit widget: changed AutoSize default to FalseGraeme Geldenhuys
* This was done in preperation for layout managers which will control widget sizes, and AutoSize will just interfere. * Default Height is now set at 24px (same as what it was before with default Arial font) * Also implementeted setter for AutoSize property. This now correctly adjusts the widget set when the property is changed to True.
2010-11-12extension to TfpgStyle. functions to return widget border sizes.Graeme Geldenhuys
2010-11-12Minor docs for Canvas.GradientFill()Graeme Geldenhuys
2010-11-12X11: extra checks and precautionsGraeme Geldenhuys