lazarus/lcl/widgetset
micha 5effa0b10e cursor management updated:
- lcl notifies interface via WSControl.SetCursor of changes
- fix win32 interface to respond to wm_setcursor callback and set correct cursor

git-svn-id: trunk@5398 -
2004-04-11 10:19:28 +00:00
..
README * Moved the implementation of (GTK)ButtonCreateHandle to the new 2004-03-19 00:03:15 +00:00
wsactnlist.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsarrow.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsbuttons.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wscalendar.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wschecklst.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsclistbox.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wscomctrls.pp * Moved the implementation of (GTK)ButtonCreateHandle to the new 2004-03-19 00:03:15 +00:00
wscontrols.pp cursor management updated: 2004-04-11 10:19:28 +00:00
wsdbctrls.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsdbgrids.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsdialogs.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsdirsel.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wseditbtn.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsextctrls.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsextdlgs.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsfilectrl.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsforms.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsgrids.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsimglist.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wslclclasses.pp * Removed all ComponentCreateHandle routines 2004-03-19 00:53:34 +00:00
wsmaskedit.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsmenus.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wspairsplitter.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsspin.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00
wsstdctrls.pp * Moved the implementation of (GTK)ButtonCreateHandle to the new 2004-03-19 00:03:15 +00:00
wstoolwin.pp * Fixes some typos and changes uses clause cases 2004-03-17 19:59:56 +00:00

This directory contains all sceleton widgetset component 
classes. These classes will never get instantiated and may 
only contain class functions.
  
=========  
IMPORTANT
=========  

Derivation and inheritance of classes is different then one
might be used to. It wil be explained by the following 
example.

Suppose the following LCL class hierarchy:

 TLCLComponent
     |
     v     
  TControl
     |
     v     
 TWinControl
 
the corresponding WS skeleton would be

 TWSLCLComponent
      |
      v     
  TWSControl
      |
      v     
 TWSWinControl


When method X of TWSControl gets implemented by 
widgetset Q the hierarchy looks like


 TWSLCLComponent
      |
      v     
  TWSControl --> TQWSControl.X
      |
      v     
 TWSWinControl


When the same method X is required in TWSWinControl
inheritance doesnt work since TWSWinControl.X calls
TWSControl.X
The following can be done to get around this:
*) try to move the LCL functionality to the lowest 
   class
*) Implement TQWSWinControl.X by simply calling
   TQWSControl.X
*) Implement the functionality of TQWSControl.X
   in the TQWidgetSet and call it from both    
   TQWSControl.X and TQWSWinControl.X