DocMgr: added documentation

git-svn-id: trunk@34710 -
This commit is contained in:
dodi 2012-01-11 13:48:51 +00:00
parent ebb666cb58
commit fd406b79ea
16 changed files with 3469 additions and 78 deletions

7
.gitattributes vendored
View File

@ -3702,6 +3702,13 @@ examples/fontenum/mainunit.pas svneol=native#text/pascal
examples/fpdocmanager/FPDocManager.lpi svneol=native#text/plain
examples/fpdocmanager/FPDocManager.lpr svneol=native#text/plain
examples/fpdocmanager/README.txt svneol=native#text/plain
examples/fpdocmanager/docs/fconfig.xml svneol=native#text/plain
examples/fpdocmanager/docs/flogview.xml svneol=native#text/plain
examples/fpdocmanager/docs/fmain.xml svneol=native#text/plain
examples/fpdocmanager/docs/fupdateview.xml svneol=native#text/plain
examples/fpdocmanager/docs/ulpk.xml svneol=native#text/plain
examples/fpdocmanager/docs/umakeskel.xml svneol=native#text/plain
examples/fpdocmanager/docs/umanager.xml svneol=native#text/plain
examples/fpdocmanager/fconfig.lfm svneol=native#text/plain
examples/fpdocmanager/fconfig.pas svneol=native#text/pascal
examples/fpdocmanager/flogview.lfm svneol=native#text/plain

View File

@ -43,7 +43,7 @@
<PackageName Value="LCL"/>
</Item3>
</RequiredPackages>
<Units Count="9">
<Units Count="8">
<Unit0>
<Filename Value="FPDocManager.lpr"/>
<IsPartOfProject Value="True"/>
@ -92,11 +92,6 @@
<IsPartOfProject Value="True"/>
<UnitName Value="uLpk"/>
</Unit7>
<Unit8>
<Filename Value="$(FPCDir)\utils\fpdoc\dw_html.pp"/>
<IsPartOfProject Value="True"/>
<UnitName Value="dw_HTML"/>
</Unit8>
</Units>
</ProjectOptions>
<CompilerOptions>
@ -107,7 +102,6 @@
</Target>
<SearchPaths>
<IncludeFiles Value="$(ProjOutDir)"/>
<OtherUnitFiles Value="$(FPCDir)\utils\fpdoc"/>
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
</SearchPaths>
<Linking>
@ -121,7 +115,7 @@
<CompilerMessages>
<UseMsgFile Value="True"/>
</CompilerMessages>
<CustomOptions Value="-dDoDi"/>
<CustomOptions Value="-uDoDi"/>
<CompilerPath Value="$(CompPath)"/>
</Other>
</CompilerOptions>

View File

@ -7,7 +7,7 @@ uses
cthreads,
{$ENDIF}{$ENDIF}
Interfaces, // this includes the LCL widgetset
Forms, dw_HTML, umakeskel, fMain, fConfig, uManager, fLogView,
Forms, umakeskel, fMain, fConfig, uManager, fLogView,
fUpdateView, ulpk;
{$R *.res}

View File

@ -0,0 +1,481 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<fpdoc-descriptions>
<package name="fpdocmanager">
<!--
====================================================================
fConfig
====================================================================
-->
<module name="fConfig">
<short></short>
<descr>
</descr>
<!-- class Visibility: default -->
<element name="TCfgWizard">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buBack">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buNext">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buFclBat">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buSelRoot">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buDownload">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buSelFpc">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Button1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Button2">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buCancel">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.buRtlBat">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.edFpcDir">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.edRtlBat">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.edRoot">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.edFclBat">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Label1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.dlgSelRoot">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Label2">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Label3">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.dlgOpen">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Panel1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.Steps">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.sb">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.SelRoot">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.SelFPDir">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TCfgWizard.MkRTL">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buBackClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buBackClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buFclBatClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buFclBatClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buNextClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buNextClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buRtlBatClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buRtlBatClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buSelFpcClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buSelFpcClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.buSelRootClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.buSelRootClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.edFpcDirChange">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.edFpcDirChange.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.edRootChange">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.edRootChange.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.edRtlBatChange">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.edRtlBatChange.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.FormShow">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.FormShow.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.MkRTLShow">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.MkRTLShow.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.SelFPDirShow">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.SelFPDirShow.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TCfgWizard.SelRootShow">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TCfgWizard.SelRootShow.Sender">
<short></short>
</element>
<!-- variable Visibility: private -->
<element name="TCfgWizard.NoRun">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="CfgWizard">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
</module> <!-- fConfig -->
</package>
</fpdoc-descriptions>

View File

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<fpdoc-descriptions>
<package name="fpdocmanager">
<!--
====================================================================
fLogView
====================================================================
-->
<module name="fLogView">
<short></short>
<descr>
</descr>
<!-- class Visibility: default -->
<element name="TLogView">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TLogView.edLog">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: default -->
<element name="TLogView.FormClose">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TLogView.FormClose.Sender">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TLogView.FormClose.CloseAction">
<short></short>
</element>
<!-- variable Visibility: default -->
<element name="LogView">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
</module> <!-- fLogView -->
</package>
</fpdoc-descriptions>

View File

@ -0,0 +1,693 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<fpdoc-descriptions>
<package name="fpdocmanager">
<!--
====================================================================
fMain
====================================================================
-->
<module name="fMain">
<short></short>
<descr>
</descr>
<!-- class Visibility: default -->
<element name="TMain">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.buSkel">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.buUpdate">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.buRefresh">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.buShowLog">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.buTest">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.dlgSelLpk">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.edINI">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.swShowUpdate">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.edLog">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.lbPackages">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.edUnit">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.GroupBox1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.lbUnits">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.MainMenu1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.MenuItem1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.mnImportLpk">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.mnPackage">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.mnConfig">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.MenuItem3">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.mnExit">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.dlgSelRoot">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.ViewINI">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.Units">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.swAll">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.swSingle">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.edXML">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.SynXMLSyn1">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.ViewXML">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TMain.ViewUnits">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.buRefreshClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.buRefreshClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.buTestClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.buTestClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.edLogChange">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.edLogChange.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.edXMLExit">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.edXMLExit.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.FormCloseQuery">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.FormCloseQuery.Sender">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TMain.FormCloseQuery.CanClose">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.FormCreate">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.FormCreate.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.FormResize">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.FormResize.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.lbPackagesClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.lbPackagesClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.lbUnitsClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.lbUnitsClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.mnConfigClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.mnConfigClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.mnExitClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.mnExitClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.mnImportLpkClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.mnImportLpkClick.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.swShowUpdateChange">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.swShowUpdateChange.Sender">
<short></short>
</element>
<!-- procedure Visibility: default -->
<element name="TMain.swSingleClick">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.swSingleClick.Sender">
<short></short>
</element>
<!-- variable Visibility: private -->
<element name="TMain.LogName">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: private -->
<element name="TMain.LogFile">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.ProjectsChanged">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.ProjectsChanged.Sender">
<short></short>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.LogToFile">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.LogToFile.Sender">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TMain.LogToFile.msg">
<short></short>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.LogToMsgBox">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.LogToMsgBox.Sender">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TMain.LogToMsgBox.msg">
<short></short>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.LogStart">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.LogDone">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.ShowUpdate">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: private -->
<element name="TMain.OnParseImport">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- argument Visibility: default -->
<element name="TMain.OnParseImport.Sender">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TMain.OnParseImport.ASource">
<short></short>
</element>
<!-- argument Visibility: default -->
<element name="TMain.OnParseImport.ALink">
<short></short>
</element>
<!-- variable Visibility: public -->
<element name="TMain.CurPkg">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: public -->
<element name="TMain.CurUnit">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- procedure Visibility: public -->
<element name="TMain.UpdateDocs">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="Main">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
</module> <!-- fMain -->
</package>
</fpdoc-descriptions>

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<fpdoc-descriptions>
<package name="fpdocmanager">
<!--
====================================================================
fUpdateView
====================================================================
-->
<module name="fUpdateView">
<short></short>
<descr>
</descr>
<!-- class Visibility: default -->
<element name="TUpdateView">
<short></short>
<descr>
</descr>
<errors>
</errors>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="TUpdateView.edUpdate">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
<!-- variable Visibility: default -->
<element name="UpdateView">
<short></short>
<descr>
</descr>
<seealso>
</seealso>
</element>
</module> <!-- fUpdateView -->
</package>
</fpdoc-descriptions>

View File

@ -0,0 +1,30 @@
<?xml version="1.0"?>
<fpdoc-descriptions>
<package name="fpdocmanager">
<!--
====================================================================
uLpk
====================================================================
-->
<module name="uLpk">
<short/>
<descr/>
<!-- function Visibility: default -->
<element name="ImportLpk">
<short>Imports an .lpi or .lpk file, creates a documentation project.</short>
<descr/>
<errors/>
<seealso/>
</element>
<!-- function result Visibility: default -->
<element name="ImportLpk.Result">
<short/>
</element>
<!-- argument Visibility: default -->
<element name="ImportLpk.AFile">
<short/>
</element>
</module>
<!-- uLpk -->
</package>
</fpdoc-descriptions>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,7 @@ object Main: TMain
Height = 270
Top = 0
Width = 317
ActivePage = TabSheet2
ActivePage = ViewUnits
Align = alClient
TabIndex = 1
TabOrder = 1
@ -483,6 +483,7 @@ object Main: TMain
''
)
VisibleSpecialChars = [vscSpace, vscTabAtLast]
ScrollBars = ssAutoBoth
BracketHighlightStyle = sbhsBoth
inline SynLeftGutterPartList1: TSynGutterPartList
object SynGutterMarks1: TSynGutterMarks
@ -519,7 +520,7 @@ object Main: TMain
end
end
end
object TabSheet2: TTabSheet
object ViewUnits: TTabSheet
Caption = 'Units'
ClientHeight = 242
ClientWidth = 309
@ -635,6 +636,23 @@ object Main: TMain
end
end
end
object ViewINI: TTabSheet
Caption = 'INI'
ClientHeight = 242
ClientWidth = 309
object edINI: TMemo
Left = 0
Height = 242
Top = 0
Width = 309
Align = alClient
Lines.Strings = (
'edINI'
)
ScrollBars = ssAutoBoth
TabOrder = 0
end
end
end
object MainMenu1: TMainMenu
left = 10

View File

@ -26,6 +26,7 @@ type
buShowLog: TButton;
buTest: TButton;
dlgSelLpk: TOpenDialog;
edINI: TMemo;
swShowUpdate: TCheckBox;
edLog: TEdit;
lbPackages: TComboBox;
@ -40,13 +41,14 @@ type
MenuItem3: TMenuItem;
mnExit: TMenuItem;
dlgSelRoot: TSelectDirectoryDialog;
ViewINI: TTabSheet;
Units: TPageControl;
swAll: TRadioButton;
swSingle: TRadioButton;
edXML: TSynEdit;
SynXMLSyn1: TSynXMLSyn;
ViewXML: TTabSheet;
TabSheet2: TTabSheet;
ViewUnits: TTabSheet;
procedure buRefreshClick(Sender: TObject);
procedure buTestClick(Sender: TObject);
procedure edLogChange(Sender: TObject);
@ -83,9 +85,9 @@ var
implementation
uses
fConfig, fLogView, fUpdateView,
fConfig, fLogView, fUpdateView;
//dw_HTML, //more writers?
uLpk;
//uLpk;
{$R *.lfm}
@ -288,6 +290,9 @@ begin
fn := pkg.ProjectFile; //initialized where?
if fn <> '' then
edXML.Lines.LoadFromFile(fn);
fn := pkg.IniFileName;
if FileExists(fn) then
edINI.Lines.LoadFromFile(fn);
//load units...
lbUnits.Items.BeginUpdate;
lbUnits.Clear;

View File

@ -3,7 +3,9 @@
<Package Version="4">
<PathDelim Value="\"/>
<Name Value="FPDocEngine"/>
<AddToProjectUsesSection Value="True"/>
<Author Value="DoDi"/>
<AutoUpdate Value="Manually"/>
<CompilerOptions>
<Version Value="11"/>
<PathDelim Value="\"/>
@ -18,6 +20,7 @@
</Other>
</CompilerOptions>
<Description Value="FPDoc tools as a package."/>
<License Value="LGPL"/>
<Version Major="1"/>
<Files Count="18">
<Item1>
@ -93,6 +96,7 @@
<UnitName Value="sh_pas"/>
</Item18>
</Files>
<LazDoc Paths="docs"/>
<RequiredPkgs Count="1">
<Item1>
<PackageName Value="FCL"/>

View File

@ -25,7 +25,8 @@ function ImportLpk(const AFile: string): TDocPackage;
implementation
//uses
uses
umakeskel;
type
eKey = (kvEof, kvName, kvIncl, kvOther, kvFilename, kvDocPaths, kvReq, kvTitle
@ -43,11 +44,18 @@ var
lt, eq, q2: integer;
key: eKey;
function ImportCompiled(const LpkFile: string): boolean;
function ImportCompiled(const LpkFile: string; APkg: TDocPackage): boolean;
var
mfc: string;
f: TextFile;
begin
(* Makefile.compiled is an XML file, containing
<Params Value=" ..." --> extract -Fi and other options.
-Fu is quite unusable, contains units/%(CPU_TARGET)-%(OS_TARGET)
other options seem omittable?
Try use <prj>.compiled in unit output dir?
*)
mfc := ExtractFilePath(LpkFile) + 'Makefile.compiled';
Result := FileExists(mfc);
if not Result then
@ -57,9 +65,22 @@ begin
Reset(f);
try
//parse
ReadLn(f, ln);
//todo...
//ImportCommandline (CmdToPrj?)
while not EOF(f) do begin
ReadLn(f, ln);
if Pos('<Params ', ln) < 1 then
continue;
eq := Pos('"', ln);
if eq < 1 then
continue;
ln := Copy(ln, eq+1, Length(ln) - eq);
while ln <> '' do begin
value := GetNextWord(ln);
if (Copy(value,1,2) = '-d') or (Copy(value,1,3) = '-Fi') then begin
APkg.CompOpts := value; //collects all options
end;
end;
//todo...
end;
finally
CloseFile(f);
end;
@ -141,6 +162,7 @@ begin
finally
CloseFile(f);
end;
ImportCompiled(AFile, pkg); //ignore result, is optional
end;
end.

View File

@ -656,7 +656,7 @@ end;
function TFPDocMaker.UnitSpec(AUnit: string): string;
var
i: integer;
s, w: string;
w: string;
begin
for i := 0 to SelectedPackage.Inputs.Count - 1 do begin
w := ExtractUnitName(FPackage.Inputs, i);
@ -955,6 +955,7 @@ var
Cmd, Arg: String;
begin
Cmd:=S;
Arg := ''; //make compiler happy
Result := ParseCommon(Cmd, Arg);
if Result <> caInvalid then
exit;
@ -1094,11 +1095,11 @@ end;
function TFPDocMaker.ParseUpdateOption(const s: String): TCreatorAction;
//procedure ParseOption(const s: String; Options: TEngineOptions);
var
Cmd, Arg: String;
begin
Cmd:=S;
Arg := ''; //make compiler happy
Result := ParseCommon(Cmd, Arg);
if Result <> caInvalid then
exit;

View File

@ -34,6 +34,7 @@ type
*)
TDocPackage = class
private
FCompOpts: string;
FDescrDir: string;
FDescriptions: TStrings;
FIncludePath: string;
@ -46,6 +47,7 @@ type
FRequires: TStrings;
FUnitPath: string;
FUnits: TStrings;
procedure SetCompOpts(AValue: string);
procedure SetDescrDir(AValue: string);
procedure SetDescriptions(AValue: TStrings);
procedure SetIncludePath(AValue: string);
@ -61,6 +63,7 @@ type
protected
Config: TIniFile;
procedure ReadConfig;
function IniFileName: string;
public
constructor Create;
destructor Destroy; override;
@ -72,6 +75,7 @@ type
property ProjectFile: string read FProjectFile write SetProjectFile; //xml?
//from LazPkg
procedure AddUnit(const AFile: string);
property CompOpts: string read FCompOpts write SetCompOpts;
property LazPkg: string read FLazPkg write SetLazPkg; //LPK name?
property ProjectDir: string read FProjectDir write SetProjectDir;
property DescrDir: string read FDescrDir write SetDescrDir;
@ -91,7 +95,6 @@ type
TFPDocHelper = class(TFPDocMaker)
private
FProjectDir: string;
procedure CleanXML(const FileName: string);
procedure SetProjectDir(AValue: string);
public
InputList, DescrList: TStringList; //still required?
@ -138,7 +141,7 @@ type
Procedure DoLog(Const Msg : String);
public
Config: TIniFile; //extend class?
constructor Create(AOwner: TComponent);
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure BeginUpdate;
procedure EndUpdate;
@ -156,7 +159,7 @@ type
function Update(APkg: TDocPackage; const AUnit: string): boolean;
public //published?
property FpcDocDir: string read FFPDocDir write SetFPDocDir;
property LazarusDir: string read FLazarusDir write SetLazarusDir;
//property LazarusDir: string read FLazarusDir write SetLazarusDir;
property RootDir: string read FRootDir write SetRootDir;
property Packages: TStrings read FPackages;
property Package: TDocPackage read FPackage write SetPackage;
@ -185,6 +188,18 @@ begin
FDescrDir:=AValue;
end;
procedure TDocPackage.SetCompOpts(AValue: string);
begin
(* collect all compiler options
*)
if FCompOpts=AValue then Exit;
if AValue = '' then exit;
if FCompOpts = '' then
FCompOpts:=AValue
else
FCompOpts:= FCompOpts + ' ' + AValue;
end;
procedure TDocPackage.SetDescriptions(AValue: TStrings);
(* Shall we allow for multiple descriptions? (general + OS specific!?)
*)
@ -212,17 +227,20 @@ begin
Import;
end;
(* Requires[] only contain package names.
Internal use: Get/Set CommaText
*)
procedure TDocPackage.SetRequires(AValue: TStrings);
procedure Import;
var
i, j: integer;
i: integer;
s: string;
begin
FRequires.Clear; //assume full replace
for i := 0 to AValue.Count - 1 do begin
s := AValue[i]; //<name.xct>,<prefix>
FRequires.Add(ExtractImportName(s) + '=' + s);
FRequires.Add(ExtractImportName(s)); // + '=' + s);
end;
end;
@ -230,10 +248,12 @@ begin
if FRequires=AValue then Exit;
if AValue = nil then exit;
if AValue.Count = 0 then exit;
{
if Pos('=', AValue[0]) > 0 then
FRequires.Assign(AValue) //clears previous content
else
Import;
}
Import;
end;
procedure TDocPackage.SetUnits(AValue: TStrings);
@ -361,21 +381,25 @@ begin
//todo: common options? OS options?
for i := 0 to Units.Count - 1 do begin
s := Units.ValueFromIndex[i];
if CompOpts <> '' then
s := s + ' ' + CompOpts;
//add further options?
pkg.Inputs.Add(s);
end;
//add Descriptions
if DescrDir <> '' then begin
//add Descriptions - either explicit or implicit
if (DescrDir <> '') and (Descriptions.Count = 0) then begin
//first check for existing directory
if not DirectoryExists(DescrDir) then begin
MkDir(DescrDir); //exclude \?
end else if Descriptions.Count = 0 then begin
APrj.ParseFPDocOption('--descr-dir=' + DescrDir); //adds all XML files
end;
end;
for i := 0 to Descriptions.Count - 1 do begin
s := Descriptions[i];
pkg.Descriptions.Add(s);
end else begin
APrj.DescrDir := DescrDir; //needed by Update
for i := 0 to Descriptions.Count - 1 do begin
s := Descriptions[i];
pkg.Descriptions.Add(s);
end;
end;
//add Imports
for i := 0 to Requires.Count - 1 do begin
@ -401,7 +425,6 @@ end;
*)
function TDocPackage.ImportProject(APrj: TFPDocHelper; APkg: TFPDocPackage; const AFile: string): boolean;
var
j: integer;
s: string;
begin
//check loaded
@ -441,7 +464,7 @@ begin
if Loaded then
exit;
if Config = nil then
Config := TIniFile.Create(Manager.RootDir + Name + '.ini');
Config := TIniFile.Create(IniFileName);
//check config
s := Config.ReadString(SecDoc, 'projectdir', '');
if s = '' then begin
@ -450,6 +473,7 @@ begin
end;
ProjectFile := Config.ReadString(SecDoc, 'projectfile', '');
FInputDir := Config.ReadString(SecDoc, 'inputdir', '');
FCompOpts := Config.ReadString(SecDoc, 'options', '');
FDescrDir := Config.ReadString(SecDoc, 'descrdir', '');
Requires.CommaText := Config.ReadString(SecDoc, 'requires', '');
//units
@ -475,16 +499,15 @@ procedure TDocPackage.UpdateConfig;
end;
end;
var
i: integer;
begin
//create ini file, if not already created
if Config = nil then
Config := TIniFile.Create(Manager.RootDir + Name + '.ini'); //in document RootDir
Config := TIniFile.Create(IniFileName); //in document RootDir
//general information
Config.WriteString(SecDoc, 'projectdir', ProjectDir);
Config.WriteString(SecDoc, 'projectfile', ProjectFile);
Config.WriteString(SecDoc, 'inputdir', InputDir);
Config.WriteString(SecDoc, 'options', CompOpts);
Config.WriteString(SecDoc, 'descrdir', DescrDir);
Config.WriteString(SecDoc, 'requires', Requires.CommaText);
//units
@ -494,6 +517,11 @@ begin
Loaded := True;
end;
function TDocPackage.IniFileName: string;
begin
Result := Manager.RootDir + Name + '.ini';
end;
procedure TDocPackage.AddUnit(const AFile: string);
var
s: string;
@ -606,7 +634,6 @@ function TFPDocManager.LoadConfig(const ADir: string; Force: boolean): boolean;
var
s, pf, cf: string;
i: integer;
pkg: TDocPackage;
begin
s := IncludeTrailingPathDelimiter(ADir);
cf := s + ConfigName;
@ -652,6 +679,7 @@ begin
(* Protection against excessive saves requires a subclass of TIniFile,
which flushes the file only if Dirty.
*)
Result := True; //for now
end;
(* Add a DocPackage to Packages and INI.
@ -784,8 +812,6 @@ begin
end;
function TFPDocManager.ImportLpk(const AFile: string): TDocPackage;
var
s: string;
begin
BeginUpdate;
//import the LPK file into? Here: TDocPackage, could be FPDocProject?
@ -793,12 +819,7 @@ begin
if Result = nil then
DoLog('Import failed on ' + AFile)
else begin
//todo: ImportCompiled - where?
//RegisterPackage(Result);
Result.Loaded := True; //should write config file!?
//CreateProject(AFile, Result);
//FModified := True; //always?
//Changed;
Result.Loaded := True; //import and write config file
end;
EndUpdate;
end;
@ -855,6 +876,9 @@ function TFPDocManager.Update(APkg: TDocPackage; const AUnit: string): boolean;
begin
BeginTest(APkg.ProjectFile);
try
Result := APkg.CreateProject(Helper, ''); //only configure, don't create file
if not Result then
exit;
Result := Helper.Update(APkg, AUnit);
finally
EndTest;
@ -886,8 +910,6 @@ end;
(* Prepare MakeSkel on temporary FPDocPackage
*)
function TFPDocHelper.BeginTest(APkg: TDocPackage): boolean;
var
pf: string;
begin
if not assigned(APkg) then
exit(False);
@ -956,8 +978,6 @@ begin
end;
function TFPDocHelper.TestRun(APkg: TDocPackage; AUnit: string): boolean;
var
pf, dir: string;
begin
(* more detailed error handling?
Must CD to the project file directory!?
@ -990,10 +1010,12 @@ function TFPDocHelper.Update(APkg: TDocPackage; const AUnit: string): boolean;
InputList.Clear;
InputList.Add(UnitSpec(AUnit));
DescrList.Clear;
OutName := DescrDir + AUnit + '.xml';
OutName := AUnit + '.xml';
if DescrDir <> '' then
OutName := IncludeTrailingBackslash(DescrDir) + OutName;
Options.UpdateMode := FileExists(OutName);
if Options.UpdateMode then begin
DescrList.Add(APkg.DescrDir + AUnit + '.xml');
DescrList.Add(OutName);
OutName:=Manager.RootDir + 'upd.' + AUnit + '.xml';
DoLog('Update ' + OutName);
end else begin
@ -1026,31 +1048,6 @@ begin
EndTest;
end;
(* Kill file if no "<element" found
*)
procedure TFPDocHelper.CleanXML(const FileName: string);
var
f: TextFile;
s: string;
begin
AssignFile(f, FileName);
Reset(f);
try
while not EOF(f) do begin
ReadLn(f, s);
if Pos('<element ', s) > 0 then
exit; //file not empty
end;
finally
CloseFile(f);
end;
//nothing found, delete the file
if DeleteFile(FileName) then
DoLog('File ' + FileName + ' has no elements. Deleted.')
else
DoLog('File ' + FileName + ' has no elements. Delete failed.');
end;
procedure TFPDocHelper.SetProjectDir(AValue: string);
begin
if FProjectDir=AValue then Exit;