Widgetset

From Free Pascal wiki
Jump to navigationJump to search
Lazarus App Architecture.png

Widgetsets are adapter libraries that provide an interface between a platform-inpedentent sourcecode and platform-specific system functions. Thus they allow for development of platform-native software without requiring to change the source code among platforms.

Therefore, widgetsets form the platform-sensitive "glue" between LCL and operating system.

Development status of widgetsets

Unit Item State Target Backend Responsible Comments
GTK1 Deprecated interface working 1.0 Gtk - -
GTK2 Main Linux (and similar UNIXes) interface working 1.0 Gtk2 Zeljan -
GTK3 Linux (and similar UNIXes) interface progress 1.4 Gtk3 Zeljan Alpha state
Win32 Desktop Windows for both 32 and 64 bits working 1.0 WinAPI Paul Ishenin and Vincent -
Qt The Qt4 interface working 1.0 Qt and LCL Zeljan Depends on qt4 bindings
Qt5 The Qt5 interface working 1.8 Qt5 and LCL Zeljan Depends on qt5 bindings
Qt6 The Qt6 interface working 2.4 Qt6 and LCL Zeljan Depends on qt6 bindings
WinCE The Windows CE interface working 1.0 Windows API and LCL - Depends on volunteers
fpGUI The fpGUI interface in progress no target fpGUI and LCL - Depends on volunteers
Carbon The Carbon interface stalled (deprecated) 1.0 Carbon and LCL - -
Cocoa The Cocoa interface working 2.6 - 2.8? Cocoa and LCL Dmitry Depends on volunteers
CustomDrawn The CustomDrawn interface in progress no target LCL, X11, Android NDK and SDK - Depends on volunteers

Legend:

Working - Stable, most or all parts implemented.

Partially Implemented - Works, but has some features missing

In progress - Someone is working on this

Not Implemented - Nothing done, needs your help

Deprecated - Outdated, obsolete, usage not recommended for new projects

Unknown - Please review whether this component is working, and set its status here

See also