Difference between revisions of "Custom Drawn Interface"

From Free Pascal wiki
Jump to navigationJump to search
Line 24: Line 24:
 
*VerboseCDWinAPI - Extended verbose information for LCLIntf calls
 
*VerboseCDWinAPI - Extended verbose information for LCLIntf calls
 
*VerboseCDForms - Extended verbose information for TWSCustomForm methods and about the non-native form from customdrawnproc (when utilized)
 
*VerboseCDForms - Extended verbose information for TWSCustomForm methods and about the non-native form from customdrawnproc (when utilized)
 +
*VerboseCDEvents - Extended verbose information for native events (for example mouse click, key input, etc)
 
*VerboseCDApplication - Verbose info for App routines from the Widgetset object
 
*VerboseCDApplication - Verbose info for App routines from the Widgetset object
 
*VerboseCDMessages - Verbose info for messages from the operating system (Paint, keyboard, mouse)
 
*VerboseCDMessages - Verbose info for messages from the operating system (Paint, keyboard, mouse)

Revision as of 18:26, 28 November 2011

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

  • VerboseCDPaintProfiler - Adds profiling information to indicate how fast the paint event is processed
  • VerboseCDWinAPI - Extended verbose information for LCLIntf calls
  • VerboseCDForms - Extended verbose information for TWSCustomForm methods and about the non-native form from customdrawnproc (when utilized)
  • VerboseCDEvents - Extended verbose information for native events (for example mouse click, key input, etc)
  • VerboseCDApplication - Verbose info for App routines from the Widgetset object
  • VerboseCDMessages - Verbose info for messages from the operating system (Paint, keyboard, mouse)