lazarus/lcl/interfaces/gtk3
juha a714a91311 LCL: Move TLCLPlatform and related non-GUI code to a new unit to be used without GUI.
Organize uses-sections by package so that dependencies can be easier seen.

git-svn-id: trunk@53711 -
2016-12-17 22:58:08 +00:00
..
gtk3bindings
alllclintfunits.pas
gtk3cellrenderer.pas
gtk3defines.inc
gtk3int.pas LCL: Move TLCLPlatform and related non-GUI code to a new unit to be used without GUI. 2016-12-17 22:58:08 +00:00
gtk3lclintf.inc
gtk3lclintfh.inc
gtk3object.inc
gtk3objects.pas
gtk3private.pas
gtk3procs.pas lcl: less with-blocks for FPC 3.1.1 2015-11-11 13:24:06 +00:00
gtk3widgets.pas
gtk3winapi.inc lcl: added SM_LCLHasFormAlphaBlend to GetSystemMetrics, added OnDrawDockImage, when widgetset supports alphablend use a transparent hint window for dock (preview) image, patch #29426 2016-01-19 17:15:03 +00:00
gtk3winapih.inc lcl: less with-blocks for FPC 3.1.1 2015-11-11 13:24:13 +00:00
gtk3wsbuttons.pp
gtk3wscalendar.pp
gtk3wschecklst.pp
gtk3wscomctrls.pp LCL-GTK2: Use AIndex param for column width. Fix off by 1 (ANewIndex-1) error in TGtk2WSCustomListView.ColumnMove. Solves issue #31024. 2016-11-30 14:57:40 +00:00
gtk3wscontrols.pp LCL: Implement TCustomMemo.ScrollBy. Refactor widgetset ScrollBy from ScrollingWinControl to WinControl. Solves issue #29067. 2015-11-29 18:45:53 +00:00
gtk3wsdialogs.pp GTK2/GTK3: Fix TOpenDialog.Files if ofAllowMultiSelect is not in Options. Issue #0031133. 2016-12-17 16:48:52 +00:00
gtk3wsextctrls.pp
gtk3wsextdlgs.pp
gtk3wsfactory.pas
gtk3wsforms.pp gtk3: fixed setBounds() for forms with constraints. 2016-03-01 12:38:34 +00:00
gtk3wsimglist.pp
gtk3wsmenus.pp
gtk3wsspin.pp
gtk3wsstdctrls.pp
interfaces.pp
Makefile lcl: updated makefiles 2016-03-20 13:05:51 +00:00
Makefile.compiled
Makefile.fpc IDE+lazbuild+makefiles: on darwin use -gw instead of -g 2015-10-01 18:40:54 +00:00
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.