Custom Drawn Interface

From Free Pascal wiki
Jump to navigationJump to search

Other Interfaces

Platform specific Tips

Interface Development Articles

Introduction

The LCL-CustomDrawn Backends

LCL-CustomDrawn needs backends to implement the most basic parts of the widgetset. Each backend should implement the following minimal parts:

  • TWidgetSet.Run, ProcessMessages, etc
  • TForm
  • TWinControl with all events
  • TTrayIcon

TCanvas

TCanvas will be fully non-native in this widgetset.

Windowed visual controls

All Windowed visual controls (TButton, TPageControl, etc) will be based in the Lazarus Custom Drawn Controls

Conditional defines accepted by LCL-CustomDrawn

{$IFDEF VerboseCDPaintProfiler} - Adds profiling information to indicate how fast the paint event is processed {$IFDEF VerboseWinAPI} - Extended verbose information for LCLIntf calls {$IFDEF VerboseCDForms} - Extended verbose information for TWSCustomForm methods