[Lazarus] Object Inspector reuse ?

Mattias Gaertner nc-gaertnma at netcologne.de
Thu Sep 8 09:27:23 CEST 2016


On Thu, 8 Sep 2016 09:13:49 +0200 (CEST)
Michael Van Canneyt <michael at freepascal.org> wrote:

>[...]
> > These are property editors for the FCL/LCL types and the component tree
> > view.  They are LCL specific, not IDE specific.  
> 
> I beg to differ somwhat.... 
> A quick glance reveals that they reference for example the help system of the IDE.

It uses the hint window.
You can use this to show your own hints in your application.


> IDEWindowIntf is also not really something I want in my end-user binary.

IDEWindowIntf?


> I can probably find more..
> 
> > If you don't need the LCL editors, it should be easy to add some IFDEFs.  
> 
> That will create a serious mess, because for my project I would need to
> enable the define, and when compiling the IDE the define must be disabled
> etc.

A project can add defines to its packages. These will not be used when
compiling the IDE.
See here:
http://wiki.lazarus.freepascal.org/IDE_Window:_Compiler_Options#Add_a_flag_to_one_package_without_altering_the_lpk_itself

 
> IMHO Better is to have a TBaseObjectInspector/TIDEObjectInspector approach: 
> a base class that can be used without all (or most of) the IDEIntf stuff, 
> and a descendent that uses the IDE stuff to provide additional functionality.
> 
> As far as I can see, the only needed thing is the PropEdits unit, since that
> is what is needed to enable property editors.

Feel free to create a patch.
The name TObjectInspectorDlg should be changed anyway. "Dlg" is used in
the Lazarus sources for modal windows.
TBaseObjectInspector/TIDEObjectInspector is good.

Mattias


More information about the Lazarus mailing list