<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
 <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
 </head>
 <body>
  <p style="margin: 0pt;">
   <span>
    <span></span>
   </span>
  </p>
  <p style="margin: 0px; "></p>
  <div style="margin: 5px 0px;">
   <br/>
   Hans-Peter Diettrich <DrDiettrich1@aol.com> hat am 19. Januar 2012 um 16:55 geschrieben:
   <br/>
   <br/>
   >[...]
   <br/>
   > >> FPDoc Editor doesn't show anything as well, even if I added the RTL/FCL
   <br/>
   > >> help directories to its search path.
   <br/>
   > >
   <br/>
   > > I enabled fpdoc for the FCL package.
   <br/>
   >
   <br/>
   > FPDoc Editor still seems not to recognize the FCL units correctly. When
   <br/>
   > I want to add documentation on e.g. fcl-xml/src/dom.pp, it complains
   <br/>
   > that this unit is not owned by any package or project. What should I do
   <br/>
   > to add this and other FCL units to the FCL package, so that I can extend
   <br/>
   > the FCL documentation?
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">Good question. </p>
  <p style="margin: 0px;">The fcl.lpk is only a representative package, e.g. registering FCL components and containing the IDE registration code. It is not meant to handle the whole FCL. </p>
  <p style="margin: 0px;">Technically the fcl.lpk only contains the units in the packager/registration folder. </p>
  <p style="margin: 0px;">Maybe the fpdoc editor can be extended to ask the user where to put the xml file.  </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   >
   <br/>
   > >> Can somebody explain how the RTL and FCL docs are found at all, when RTL
   <br/>
   > >> the RTL is not (and FCL a different) Lazarus package?
   <br/>
   > >
   <br/>
   > > Every designtime package can register help for source directories.
   <br/>
   >
   <br/>
   > The RTL at least is not a registered Lazarus designtime package, and the
   <br/>
   > FCL package obviously doesn't cover the full FCL :-(
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">Yes.</p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   >
   <br/>
   > >> As already mentioned, we should rethink the packaging for Help. IMO the
   <br/>
   > >> LCL docs should include LazUtils
   <br/>
   > >
   <br/>
   > > Means?
   <br/>
   >
   <br/>
   > Please explain how the LCL documentation is organized. The Lazarus
   <br/>
   > 0.9.30 LCL was one synthetic package, covered by a corresponding lcl.chm
   <br/>
   > file. But now (trunk) the package LCL contains the widgetsets, while the
   <br/>
   > common code resides in packages LCLBase and LazUtils. I would like to
   <br/>
   > have a single document (chm) for these 3 packages as well.
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">Why? </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   > I wonder how FPDoc Editor finds the documentation on e.g. unit
   <br/>
   > barchart.pp, which is part of the LCLBase package, but barchart.xml
   <br/>
   > mentions this module as part of the lcl package?
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">The fpdoc editor has to find the xml file for a package, not the other way round. So for the fpdoc editor it does not matter what module is in the xml file. </p>
  <p style="margin: 0px;">But for fpdoc the module should be the Lazarus package name. The xml files needs to be updated.  </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   > Should the LazUtils units documentation use the same hack?
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">What hack? </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   > >> , and the RTL and FCL docs must be made
   <br/>
   > >> available, somehow. My previous attempt to add RTL and FCL directories
   <br/>
   > >> to the Lazarus/docs/xml was dropped, because it cannot be synced with
   <br/>
   > >> reasonable efforts with the FPC docs. But now we have accessible FCL
   <br/>
   > >> documentation any more, what certainly is intolerable.
   <br/>
   > >
   <br/>
   > > What is the problem?
   <br/>
   >
   <br/>
   > Lazarus seems to create its own package structure, different from the
   <br/>
   > FPC structure. This becomes obvious with the LazUtils package,
   <br/>
   > containing modified copies(?) of the corresponding FCL units.
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">For example? </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   > The documentation again introduces a different package structure, with the
   <br/>
   > units of the LCLBase package merged into the lcl package.
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">The code is logically divided into separate package. Therefore I think the fpdoc xml files should be in separate directories too. The chm help format has the ability to combine multiple fpdoc files into one. It is useful to combine all xml files of a package into one chm. But of course it is also possible to combine multiple packages into a single chm file. I leave this decision to the chm packagers.  </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   > When I'm working with FPDoc code (FPC/utils/fpdoc), the units refer to
   <br/>
   > the FCL XML modules (e.g. FPC/packages/fcl-xml/src/dom.pp), while
   <br/>
   > LazUtils contains an different set of units, e.g. lazutils/laz_dom.pas,
   <br/>
   > which redefine the FCL classes and identifiers. This means duplicate
   <br/>
   > documentation efforts, for the FCL and LazUtils units. That's a
   <br/>
   > maintenance nightmare :-(
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">The laz_dom unit is pretty old and the dom unit has gained many updates and changes. So it makes sense to have different docs.</p>
  <p style="margin: 0px;">The laz2_dom is the UTF-8 port of the dom unit with a few additions. </p>
  <p style="margin: 0px;">Because the IDE uses it for its config files it is important that these units do not change like the FCL units. Therefore they are in the Lazarus sources. </p>
  <p style="margin: 0px;">That is not optimal, but better than data corruption. </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <div style="margin: 5px 0px;">
   >
   <br/>
   > WRT LCL documentation see above: should the LazUtils units be made part
   <br/>
   > of the LCL documentation package, and will that really work?
  </div>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;"> </p>
  <p style="margin: 0px;">Mattias</p>
  <p style="margin: 0px;"> </p>
 </body>
</html>