lazarus/lcl/interfaces/gtk3
zeljko a257e58d2a gtk3: implemented TPopupMenu.OnClose.
git-svn-id: trunk@47301 -
2015-01-04 19:48:38 +00:00
..
gtk3bindings gtk3: added cairo_format_stride_for_width(). Patch by Cedric. issue #27205 2014-12-30 19:13:08 +00:00
alllclintfunits.pas
gtk3cellrenderer.pas Gtk3: implemented TCustomListView.ItemDelete, fixed crash in gtk3cellrenderer 2013-10-11 08:17:51 +00:00
gtk3defines.inc Updated gtk3 bindings to 3.8.6. Also bindings now include the missing error: PPGError on all needed procedures 2014-01-06 19:43:08 +00:00
gtk3int.pas
gtk3lclintf.inc gtk3: fixed inverted r & b colors on masked images. issue #27224 2015-01-02 18:23:50 +00:00
gtk3lclintfh.inc
gtk3object.inc Gtk3: initialize TGValue. 2014-11-24 07:50:18 +00:00
gtk3objects.pas gtk3: fixed memleak with cairosurface. 2015-01-03 08:48:32 +00:00
gtk3private.pas LCL: use TFileStreamUtf8 for LoadFromFile/SaveToFile for Grids, TTextStrings, TWin32MemoStrings, TWinCEMemoStrings, TQtMemoStrings, TGtk2MemoStrings, TGtk3MemoStrings, 2014-11-07 14:52:30 +00:00
gtk3procs.pas Set TColortoTGdkRGBA alpha to 1 by default 2014-01-07 04:33:09 +00:00
gtk3widgets.pas gtk3: do not report debug line for GDK_GRAB_BROKEN as unhandled. GDK_GRAB_BROKEN is usually send when popupmenu is activated over widget. 2015-01-04 19:25:46 +00:00
gtk3winapi.inc gtk3: implemented TGtk3WidgetSet.FrameRect() 2014-10-23 16:37:27 +00:00
gtk3winapih.inc
gtk3wsbuttons.pp
gtk3wscalendar.pp
gtk3wschecklst.pp gtk3: implemented TCheckListBox handle - TGtk3CheckListBox 2013-09-27 08:47:13 +00:00
gtk3wscomctrls.pp gtk3 Added remove implementation for tpagecontrol 2014-01-08 03:18:11 +00:00
gtk3wscontrols.pp gtk3: implemented TGtk3WidgetSet.DrawFocus() 2013-06-23 13:52:59 +00:00
gtk3wsdialogs.pp gtk3: added gtk3wsextdlgs. Fixed crash with TOpenPictureDialog. issue #27216 2014-12-30 20:15:23 +00:00
gtk3wsextctrls.pp
gtk3wsextdlgs.pp gtk3: added gtk3wsextdlgs. Fixed crash with TOpenPictureDialog. issue #27216 2014-12-30 20:15:23 +00:00
gtk3wsfactory.pas gtk3: added gtk3wsextdlgs. Fixed crash with TOpenPictureDialog. issue #27216 2014-12-30 20:15:23 +00:00
gtk3wsforms.pp LCL: TScrollBox, remove unnecessary Invalidate on Windows. Issue #0026087 Move Invalidate in WS code for all other WS 2014-04-28 20:17:56 +00:00
gtk3wsimglist.pp
gtk3wsmenus.pp gtk3: implemented TPopupMenu.OnClose. 2015-01-04 19:48:38 +00:00
gtk3wsspin.pp
gtk3wsstdctrls.pp LCL: fixed GetDefaultColor for TStaticText, TNoteBook, TTabSheet, TGroupBox, bug #26535 2014-08-06 16:54:36 +00:00
interfaces.pp
Makefile
Makefile.compiled LCL: updated Makefiles 2013-09-15 15:12:42 +00:00
Makefile.fpc
README.txt

TODO:
* Cursors
* Themes (gtk3themes)
* Paint system (brush is critical)
* Paint system coordinates and transformations.
* Paint system text
* RawImage (bitmap, device)
* Other missing ws controls (trayicon, dragimagelist, splitter etc).
* Clipboard
* Caret
* Dialogs
* Designer
* Fix modal windows behaviour under kwin (metacity and xfwm works ok for now).
* For beta status move all signal handlers into separate unit, so gtk3widgets stay
  clean.
* Keep interface as simple as possible ! *
* If there's any problem which is fixed unlogical code,
  check if it's gtk3 bug first.



*KNOWN PROBLEMS:
1. GtkTextView inside GtkScrolledWindow with disabled scrollbars (GTK_POLICY_NONE)
   grows memo control. Seem that it's fixed in 3.8.2
   https://bugzilla.gnome.org/show_bug.cgi?id=688472
   https://bugzilla.gnome.org/show_bug.cgi?id=658928
   POSSIBLE SOLUTION IS TO OVERRIDE PGtkTextViewClass() for get_preferred_size

2. cairo clip rect in paint event have strange bounds when it paints only part
   of control (added temporary workaround after TGtk3Widget.GtkEventPaint call).

3. Window state isn't accurate (GtkWindow active/inactive property isn't updated
   correctly by gtk.

4. GtkNotebook switch-page cannot control is we forbid page switch when user clicks
   on it (tab).

Some links about gtk3:
http://igurublog.wordpress.com/tag/gtk3/


*NAMING OF UNITS* inside of gtk3bindings subdirectory:
All units are prefixed with laz eg. lazgtk3.pas to avoid
clashes with future versions of fpc which will probably have package named gtk3
and gtk3.pas unit inside.