Age | Commit message (Collapse) | Author |
|
|
|
* Moved PtInRect() to fpg_main, from fpg_base
* New Rect and Point utility functions introduced in fpg_main
|
|
|
|
|
|
|
|
|
|
I found a problem with the deadkey support - it broke keyboard input under
Windows. The original deadkey input issue seems to have been X11 specific,
so should be fixed at widget level, but rather in the fpg_x11.pas unit.
|
|
This reverts commit ccfd4b2ae0a9dfae0d19ae7ba673118af70c75da.
|
|
|
|
|
|
This allows the developer to filter the file results by Files only,
Directories only, or both (default).
|
|
Under *nix systems, if we can't find the direct location of docview, we
try the 'which docview' command. If we get a positive response, we know
docview is in the system path, and we can go ahead and launch it.
At least this doesn't instantly throw an exception when docview can't
be found on the first attempt.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
With the FPC 2.7.1 having some form of Unicode support, and the String typing being
redefined... defining TfpgString as AnsiString, we know fpGUI will continue running
as normal.
|
|
Instead of just going with the assumption that the docview executable exists,
check for it first, before we go any further. Calling TProcess.Execute with
a non-existing executable gives an unwanted error in our applications.
|
|
The thinking behind this is so that we can trap fpGUI specific exceptions
in our applications if we wanted to. Thus handling them slightly different
to other exceptions.
|
|
image.
|
|
Both RGBTripleTofpgColor() and FPColorTofpgColor() incorrectly
bit shifted the Alpha channel value.
|
|
|
|
|
|
|
|
|
|
* 8 bit color channels are the norm in all gui toolkits.
* Deprecated the usage of TFPColor. TFPColor comes from the FPC
fpcanvas unit, which I do not plan to use any more.
|
|
|
|
This is so AggPas's canvas doesn't conflict, which also has a LineWidth
method. I want to prevent similar name confusion.
|
|
|
|
|
|
This now makes it easier to reuse this border style declaration in other
widgets. We need to refactor some other widgets too, that have there own
border styles as well.
|
|
|
|
value.
|
|
|
|
In KeycodeToText(), 'Shift+' came before Ctrl or Alt. This is not normal
practice, so I moved it.
|
|
|
|
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.
|
|
|
|
This is a placeholder for future use.
|
|
This is an initial implementation for Linux only. Currently this property
is read-only, but that alone is already very useful. Next I'll implement
the Windows support, and later the read-write support.
|
|
* 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! :-/
|
|
We used FHeight instead of FLeft!! Dope!
|
|
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.
|
|
* All fpGUI backends must override it as supply an implementation.
* Moved DowaitWindowMessage() implementations to the protected
section in the GDI and X11 backends.
|
|
Also made MessagesPending() a virtual abstract method in fpg_base.pas
which every fpGUI backend must supply an implementation.
|
|
Apparently it is good to allocate a instance, without
calling the constructor. I'm not exactly sure why, but it also
makes supporting FPC 2.5.1 a lot less messy (no casting required).
|
|
* also introduced virtual DoDragStartDetected which executes
the OnDragStartDetected event
* We also added a override of DoDragStartDetected in GDI for
some extra tasks.
|
|
* Also changed FormatCount to Count (more like standard list interface)
* Also introduced a Items property (more like standard list interface)
* The above to changes also made other implementations more
simplified, so I did a bit of refactoring.
|