summaryrefslogtreecommitdiff
path: root/src/corelib/fpg_main.pas
AgeCommit message (Collapse)Author
2014-10-12Surface the Window related to the Canvas instance.Graeme Geldenhuys
This is so we can do more advance things with themes like calling invalidate on a widget (eg: animated theme on hover)
2014-09-16Edit2 font alias is now a variable and not hard coded.Graeme Geldenhuys
This makes it a bit more configurable (default values) for various platforms. Thanks to Marcus Sackrow for the suggestion.
2014-07-25Merge branch 'release-1.2' into developGraeme Geldenhuys
This is so we can get the latest bug fixes from the release branch.
2014-07-21new ToggleBox widgetAndrew Haines
Hi I made a Togglebox widget descended from TfpgComboBox. It has button that slides side to side for checked/unchecked with a subtle animation when toggled. Various colors can be changed and the animation disabled.
2014-07-20Fixed "button pressed" painting for Normal and Embedded buttons.Graeme Geldenhuys
The pressed state never looked right. I simply forgot and got used to it. Now it has finally been fixed.
2014-03-29style: new fpgStyle methods for painting a ComboBox widgetGraeme Geldenhuys
2014-03-29style: new style methods for checkbox customisationGraeme Geldenhuys
2014-03-29style: new button state btfEnabledGraeme Geldenhuys
2014-01-25hyperlink: defined a new named color clHyperLink and used in in TfpgHyperLinkGraeme Geldenhuys
This makes it easier to customise in themes - without needing to override TfpgCanvas.DrawString()
2013-12-22Auto-register new "dark" themes as part of the standard available themes.Graeme Geldenhuys
2013-08-27Replaced the FPC dbugintf unit with the customised fpGUI one.Graeme Geldenhuys
2013-07-12New Rectangle and Point methods introduced in fpg_mainGraeme Geldenhuys
* Moved PtInRect() to fpg_main, from fpg_base * New Rect and Point utility functions introduced in fpg_main
2013-06-07Introduced a new OnKeyChar event for TfpgWidgetGraeme Geldenhuys
2013-05-20Removed Canvas.DrawControlFrame() - fpgStyle has tha functionality nowGraeme Geldenhuys
Canvas.DrawControlFrame() simply passed it along to fpgStyle for a long time already. Now we finally separate the two, so the Styling code can be separated from the corelib code.
2013-04-02core: Debug output is now sent to the Debug Server instead of console output.Graeme Geldenhuys
This makes testing a bit easier on all platforms.
2013-04-02Buttons & Styles now support hover effect on standard buttons too.Graeme Geldenhuys
Before we only had the mouse hover effect on Flat buttons. But now the Style can enable hover support for normal buttons too. Important for Win7 and MacOSX like themes.
2012-11-22Adds alpha channel values to all the named colors.Graeme Geldenhuys
We already done this for all the predefined colors, but somehow forgot about these.
2012-10-18Moved some constants from fpg_main to fpg_constants unit.Graeme Geldenhuys
2012-08-21changes param type from String to TfpgStringGraeme Geldenhuys
2012-03-19copyright updateGraeme Geldenhuys
2012-03-16Adds an IFDEF to control what graphics engine to use Xlib/GDI or AggPas.Graeme Geldenhuys
Once Agg-enabled canvas is fully test, it will become the new default graphics engine.
2012-03-15Fixes the checking of named colors.Graeme Geldenhuys
Now that we use the Alpha channel in TfpgColor and TRGBTriple, we need to improve the algorithm to check if a color is a named color.
2012-03-15Factory method to create the Canvas instance used for every Window.Graeme Geldenhuys
It is now possible for a developer to create a descendant TfpgCanvas class, and override the DefaultCanvasClass variable to rather use this new class for all Windows. A nice way to extend the Canvas capability for your own applications - without modify the fpGUI library code.
2012-03-15improved the signature of Canvas constructors.Graeme Geldenhuys
2012-03-15Canvas read-only LineWidth property changed to a function GetLineWidth()Graeme Geldenhuys
This is so AggPas's canvas doesn't conflict, which also has a LineWidth method. I want to prevent similar name confusion.
2012-03-09Adds a new property ScanLine[] to TfpgImage.Graeme 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-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-17TfpgTimer refactoring.Graeme Geldenhuys
Refactored the TfpgTimer by introducing a TfpgBaseTimer and X11 & GDI Timer descendants. This now allows use to add platform specific extensions to the timer implementation.
2011-07-25parameter handling improvementsGraeme Geldenhuys
Old behaviour was that we simply assumed the first parameter will be the X11 -display parameter. This is just WRONG! We now query the parameter list for the value of -display, that's if it exists in the first place.
2011-07-23wip stashGraeme Geldenhuys
2011-05-08Included Motif as one of the default registered styles in fpGUI.Graeme Geldenhuys
2011-05-08Corrected the button border sizes in the common style TfpgStyleGraeme Geldenhuys
2011-05-08added comments and fixed spelling mistakes in comments.Graeme Geldenhuys
2011-05-08globally renamed TFTextFlags to TfpgTextFlagsGraeme Geldenhuys
Somehow I forgot to rename this type when we introduced the 'fpg' prefix years ago.
2011-05-08globally renamed TFButtonFlags to TfpgButtonFlagsGraeme Geldenhuys
Somehow I forgot to rename that type name when we moved over to the 'fpg' prefix.
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-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-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-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-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-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.