[lazarus] LCL to widget set interface

Snijders, V. VSDS at CBS.nl
Fri Jan 28 11:08:23 EST 2000


Hi,

I am trying to clear up some things about the lazarus architecture for my
self, specially the LCL to widget set interface. I have written something
and I hope you will try to clarify where possible.

For the application developer everything is quite clear, you select the
right target (for OS) and define the appropiate define - GTK, QT or WIN32
(BTW doesn't that give naming conflicts) -  in the interface.pp unit and the
right interface is selected.

For a component developer two situations can be distinguished.
A. The control exists in the widget set. Then you can go along as described
in Shane's "Lazarus Project Information Page".

B. The control does not exist in the widget set (for example. Then you have
to draw the control yourself. I can see this happen in two places:
1: As part of the LCL you call functions in LCLLinux, which then becomes an
OS (and widget set)-indedepent winapi, which delegates the actually drawing
two the widget sets. This is what is currently being done with the mwEdit
component if I understand it correctly.
2: The other possibility would be that you write code to add a new widget to
the existing widget set and write code in the Interface Object (i.e.
GTKObject or QTObject) to access this new widget. After this you complete
the component writing as in case A. The avantage is that you can also write
components wrapping widgets present is some, but not all, of the widget
sets.

BTW Is Shane's "Lazarus Project Information Page" on the lazarus site too?






More information about the Lazarus mailing list