[Lazarus] Help on FCL?

Hans-Peter Diettrich DrDiettrich1 at aol.com
Thu Jan 19 16:55:21 CET 2012


Mattias Gaertner schrieb:
> On Thu, 19 Jan 2012 00:08:14 +0100
> Hans-Peter Diettrich <DrDiettrich1 at aol.com> wrote:
> 
>> The Lazarus package FCL seems to hide the FPC/FCL, at least I cannot get 
>> any context sensitive help on FCL units or identifiers (using CHM) :-(
> 
> Have you installed the rtl.chm and fcl.chm?

I'm a bit confused now. When I wrote this message, I really couldn't 
access the fcl.chm by F1, or the related docs via FPDoc Editor. Today it 
seems to work, at least for F1.

>> FPDoc Editor doesn't show anything as well, even if I added the RTL/FCL 
>> help directories to its search path.
> 
> I enabled fpdoc for the FCL package.

FPDoc Editor still seems not to recognize the FCL units correctly. When 
I want to add documentation on e.g. fcl-xml/src/dom.pp, it complains 
that this unit is not owned by any package or project. What should I do 
to add this and other FCL units to the FCL package, so that I can extend 
the FCL documentation?


>> Can somebody explain how the RTL and FCL docs are found at all, when RTL 
>> the RTL is not (and FCL a different) Lazarus package?
> 
> Every designtime package can register help for source directories.

The RTL at least is not a registered Lazarus designtime package, and the 
FCL package obviously doesn't cover the full FCL :-(


>> As already mentioned, we should rethink the packaging for Help. IMO the 
>> LCL docs should include LazUtils
> 
> Means?

Please explain how the LCL documentation is organized. The Lazarus 
0.9.30 LCL was one synthetic package, covered by a corresponding lcl.chm 
file. But now (trunk) the package LCL contains the widgetsets, while the 
common code resides in packages LCLBase and LazUtils. I would like to 
have a single document (chm) for these 3 packages as well.

I wonder how FPDoc Editor finds the documentation on e.g. unit 
barchart.pp, which is part of the LCLBase package, but barchart.xml 
mentions this module as part of the lcl package?

Should the LazUtils units documentation use the same hack?

>> , and the RTL and FCL docs must be made 
>> available, somehow. My previous attempt to add RTL and FCL directories 
>> to the Lazarus/docs/xml was dropped, because it cannot be synced with 
>> reasonable efforts with the FPC docs. But now we have accessible FCL 
>> documentation any more, what certainly is intolerable.
> 
> What is the problem?

Lazarus seems to create its own package structure, different from the 
FPC structure. This becomes obvious with the LazUtils package, 
containing modified copies(?) of the corresponding FCL units. The 
documentation again introduces a different package structure, with the 
units of the LCLBase package merged into the lcl package.

When I'm working with FPDoc code (FPC/utils/fpdoc), the units refer to 
the FCL XML modules (e.g. FPC/packages/fcl-xml/src/dom.pp), while 
LazUtils contains an different set of units, e.g. lazutils/laz_dom.pas, 
which redefine the FCL classes and identifiers. This means duplicate 
documentation efforts, for the FCL and LazUtils units. That's a 
maintenance nightmare :-(

WRT LCL documentation see above: should the LazUtils units be made part 
of the LCL documentation package, and will that really work?

DoDi





More information about the Lazarus mailing list