lazarus/lcl/interfaces/gtk3
2024-08-16 22:56:34 +03:00
..
gtk3bindings GTK3: Fixed function return type and got rid of deprecated function call. 2023-11-16 00:33:35 +01:00
alllclintfunits.pas lcl: update_allunits: omit warning used not used 2023-07-20 14:53:55 +02:00
gtk3boxes.pas Lazarus trunk requires at least FPC 3.2.0. Remove checks for earlier FPC_FULLVERSION. 2023-07-07 17:39:03 +03:00
gtk3cellrenderer.pas GTK3: Updated GObject2 unit generated with new gir2pas version. 2023-06-17 15:40:08 +00:00
gtk3defines.inc LCL-GTK3: Turn WriteLn into DebugLn. Make sure they compile. Cleanup. 2022-01-20 19:30:40 +02:00
gtk3int.pas lcl: gtk3: fixed getting style constraints 2023-07-31 13:30:36 +02:00
gtk3lclintf.inc GTK3: Fixed computation of default widget height bounds. 2023-11-28 22:52:25 +01:00
gtk3lclintfh.inc lcl: gtk3: fixed getting style constraints 2023-07-31 13:30:36 +02:00
gtk3object.inc LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3objects.pas LCL-GTK3: Force new path on color change. Issue #40971, patch by Anton Kavalenka. 2024-06-28 12:54:40 +03:00
gtk3private.pas LCL-GTK3: Turn WriteLn into DebugLn. Make sure they compile. Cleanup. 2022-01-20 19:30:40 +02:00
gtk3procs.pas GTK3: Fixed cursor update when dragging. 2023-12-03 18:45:41 +01:00
gtk3widgets.pas LCL-Gtk3: fixed autosizing of TUpDown buttons for some themes, patch by Anton Kavalenka, issue #41086 2024-08-16 22:56:34 +03:00
gtk3winapi.inc IDE, LCL: Lazarus help output refactoring by n7800, issue #40690: 2024-01-20 05:04:42 +03:00
gtk3winapih.inc IDE, LCL: Lazarus help output refactoring by n7800, issue #40690: 2024-01-20 05:04:42 +03:00
gtk3wsbuttons.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wscalendar.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wschecklst.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wscomctrls.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wscontrols.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wsdialogs.pp LCL-GTK3: Fix picture preview dialog. Issue #41004, patch by Anton Kavalenka. 2024-06-28 17:54:46 +03:00
gtk3wsextctrls.pp LCL/TShape: Inherit TShape from new TCustomShape class. 2023-09-12 12:03:54 +02:00
gtk3wsextdlgs.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wsfactory.pas LCL/TShape: Inherit TShape from new TCustomShape class. 2023-09-12 12:03:54 +02:00
gtk3wsforms.pp lcl: gtk3: fixed gtk warnings with docked forms 2023-07-31 13:30:36 +02:00
gtk3wsimglist.pp LCL-GTK3: OOP approach in SelectObject, hatched brushes implemented etc. Issue #36744, patch from Anton Kavalenka. 2020-04-08 15:16:12 +00:00
gtk3wsmenus.pp LCL-GTK3: Support TFrame as a MenuItem's owner. Issue #40446, patch by haword. 2023-08-24 11:00:19 +03:00
gtk3wsspin.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wssplitter.pas LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wsstdctrls.pp LCL: Use TLCLHandle instead of a redefined LCLType.THandle or TLCLIntfHandle. Deprecate them. 2023-07-03 11:17:01 +03:00
gtk3wstrayicon.pas Systray on Unix needs to write user specific file to /tmp 2022-05-06 21:30:21 +10:00
interfaces.pp LCL-GTK3: Turn WriteLn into DebugLn. Make sure they compile. Cleanup. 2022-01-20 19:30:40 +02:00
issues.xml Issues.xml: TListView.OnChanging not supported (cocoa,gtk2,gtk3,qt,qt4,qt5,qt6. the other WS don't have an issue.xml, or are deprecated). 2024-01-08 19:28:29 +01:00
Makefile updated makefiles 2023-08-14 20:31:20 +02:00
Makefile.compiled updated makefiles 2023-09-12 16:25:55 +02:00
Makefile.fpc updated makefiles 2023-08-14 20:31:20 +02: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.