[lazarus] LCL to widget set interface

Shane Miller SMiller1 at stvgb.org
Mon Jan 31 11:03:24 EST 2000


You seem to have a handle on the setup of Lazarus.  

If the control exists in GTK, but not in LCL, you can define it in LCL by adding a unit and adding messages and procedures to handle those messages to the gtkinterface files.  If the control doesn't exist in gtk you must draw it by yourself.

I am not sure if the "Lazarus Project Information" page that I wrote is available or not on the site.  MHESS, is it around, does it need to be cleaned up yet, can we post it?

Shane


>>> VSDS at CBS.nl 01/28/00 10:10AM >>>
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?

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus






More information about the Lazarus mailing list