[Lazarus] GTK 3.0

Graeme Geldenhuys mailinglists at geldenhuys.co.uk
Wed Jul 13 20:45:51 CEST 2016


On 2016-07-13 18:22, Dmitry Boyarintsev wrote:
> How does it handle an OS specific limitations?

Because I'm in full control of what fpGUI can do, I can implement
anything that is missing. The same can't easily be done with GTK2/3,
Qt4/5, OSX etc.


> For example:
> * drawing outside of the paint event? Where some (Carbon, Cocoa) widgetset
> forbid that.

fpGUI’s ‘develop’ branch allows that without problems because internally
it uses AggPas to do rendering to a image buffer. The ‘develop’ branch
also switched to a single-handle-per-form design, so the image buffer
represents the whole form. The actual Paint event simply bitblt’s the
image buffer to the actual OS window.


> * platform specific mouse behavior. OSX ctrl+mouseclick should trigger
> popup menu (= right click)

Like I mentioned in the first paragraph - such functionality can be
implemented because fpGUI is under our full control and is in the same
language as what LCL is written.

It has taken me years, but fpGUI is very consistent across platforms
now. I can (and have) develop any new widgets [or applications] no
matter how complex (think Ribbon widget complex) under a single
platform, and I know 100% it will look and behave the same on all other
supported fpGUI platforms. No IFDEF’s code anywhere in the widgets or
applications. This will help LCL consistency across platforms too.

Regards,
  Graeme

-- 
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

My public PGP key:  http://tinyurl.com/graeme-pgp


More information about the Lazarus mailing list