LCL Defines
This page documents the defines that can be utilized to recompile the different widgetsets of LCL. It isn´t a compreensive list, but may become one as more defines are added.
Why use defines?
Defines allow to add non-standard functionality to LCL, test experimental features or to add debug output that helps testing the widgetsets.
Recompiling LCL with a define
To recompile LCL with a special define go to the Lazarus menu Tools -> "Configure Build Lazarus"
There add -d<DEFINE_NAME> on the Options box.
So if you wish to add the PassWin32MessagesToLCL define, you will add -dPassWin32MessagesToLCL to this box.
Win32 defines
PassWin32MessagesToLCL - Allows the use of user messages, i.e. messages greater then WM_USER + 32 I think?
WindowsUnicodeSupport - Toggles on experimental Unicode support on Windows.
WinCE defines
Gtk defines
DebugLCLComponents
This activates saving information on every creation or destruction of LCL components, device contexts, gdi objects (pen, brush, font, ...) and main widgets. It will spot mem leaks and double frees with stacktraces.
TraceGDICalls
This activates saving information on every creation or destruction of gdi objects (pen, brush, font, ...). It will spot mem leaks and double frees with stacktraces.
Qt defines
VerboseQt - Shows extensive debug information about the creation and deletion of Qt objects and LCL Objects.
VerboseQtWinAPI - Shows extensive debug information about the small WinAPI emulation layer implemented by interfaces, utilized througth the LCLIntf unit.
Carbon defines
List of Carbon defines used to show debug info when tracing:
- DebugEventLoop
- VerboseObject - Carbon interface application
- VerboseTimer
- VerboseWinAPI
- VerboseLCLIntf
- VerboseMouse
- VerboseCursor
- VerboseKeyboard
- VerbosePaint
- VerboseCanvas
- VerboseMenu
- VerboseScroll
- VerboseWidget - TCarbonWidget class
- VerboseAppEvent - Carbon application event handlers
- VerboseControlEvent - Carbon control event handlers
- VerboseWindowEvent - Carbon window event handlers
- VerboseCommonEvent - Carbon common event handlers
- VerboseWSClass} - TCarbonWS classes