Homepage: http://delphidoc.sourceforge.net/
Project-Page: http://sourceforge.net/projects/delphidoc/
JADD - Just Another DelphiDoc
A note on the version numbers: they have no real meaning, just that they
grow over the time. The last part is the compilation counter. The third
part is regularly incremented. The second part is incremented, when I
make bigger changes or just feel "it's time".
changes (Version 1.7.7.467):
- Inline command
~[image ]
supports images in all registered graphic formats by including the
file extension.
- Fixed problem with images with the same name in different
directories.
- Screen shots of forms to be used to generate help about the forms
can be in other image formats by setting the file extension with
option
"GUIScreenShotExtension".
The form to create the GUI log files and screen shots can save
directly as PNG files.
- External files showing inter-dependence between files and
inheritance tree of classes and interfaces can be generated
as SVG (Scalable Vector
Graphics) images, several new texts to be localized have been
defined for it. Windows Meta Files (.wmf) of these images are
saved now as Enhanced Windows Meta Files (.emf).
- Diagrams can be exported as EMF (and WMF) and SVG. SVG files can
contain links to the documentation in HTML format. SVGs can be
compressed (.svgz).
- When generating documentation in one of the HTML formats the
diagrams created via the inline command
~[diagram ]
can
be saved as SVG.
- When using
~[diagram ]
in
PDF output, the diagrams will be drawn directly in PDF and not be
included as an image.
- A small dialog to search options and a component showing the
documentation from the HTML
documentation have been added to the main form to edit
options.
- Inline commands
~p
, ~br
and
~inheritDoc
can be written without the following
brackets []
.
- Fixed generating help on forms without a help context.
- Generators should use less memory while generating (until in a few
releases more features will be added that need the memory-using
alternative).
- Old frame to show the messages of the generators added again to be
used with Kylix, it compiles again after applying the
usual changes.
- Thanks to 明保 王 for pointing out an error
in the code handling the hiding of scroll bars in read-only memos
when not needed.
changes (Version 1.7.7.461):
- DelphiDoc is now released under the
GNU General
Public License version 3!
- Fixed mix-up of the generator IDs (adding "_old" to the old
ones).
- PDF supports inclusion of images in PNG (pixel) format and it has
been made the default format.
- PDF generator got options to set the paper size to one of lots of
standardized paper formats.
- Optimized speed of PDF generator.
- Improved handling of text in tables in PDF output.
- Window Help files (.hlp) will be renamed to names with correct
case.
- XHTML-support has been
added for both HTML generators via options "XMLConformity",
"UseCSS", "UseXHTMLHeader" and "FileExtension". May not be
perfect, files should be checked with a validator before
distributing them.
- Key words in HTML Help (.chm) have been fixed.
- Help on a GUI as HTML Help will include key words for each
component on a form.
- PNGImage library updated to the latest version (1.564), and
applied
patch
from its bug tracker.
- Inline commands are allowed in the more Javadoc-like syntax
"
~commandname[parameters]
" additionally to
"~[commandname parameters]
".
- GUI got check boxes to toggle between DelphiDoc's
and Javadoc's special characters, "
~[]
" and
"@()
" respectively, more easily.
- Names of the inline commands can now be customized, several names
are also allowed.
- Sections allow several names per section now, for
~result
, "return
" and
"returns
", and for ~exception
,
"throws
" and "raises
" have been
pre-defined.
- Options of the three additional sections slightly renamed from
"SectionName_Additional Attribute N" to
"SectionName_AdditionalAttributeN" with N in [1..3].
- Links on identifiers with the inline command
~[link LinkTarget [Link Text]]
will by default,
if no text to create the link on has been specified, create a link
for each part of the path used to specify the link target, instead
of only one link on the whole path, can be disabled via option
"UsePathLinks".
- Parsing of "relative" paths improved, it's also possible refer to
members of properties and to members of arrays of record-like
types (without brackets).
- Added inline commands
~[optionSupported Name]
and
~[optionValue Name]
to query values of options of
generator objects and whether an option is known.
- Added three options, "CommentMarker", "CommentMarkerAction" and
"CommentMarkerAfterWhiteSpace", to the extractor to filter
comments starting with a defined marker, it's also possible to
still use all comments but to remove the marker so it won't show
up in the documentation.
- Extractor "normalizes" text of the comments by converting
tabulator characters to spaces and removing whitespaces at the end
of the lines. It can be disabled with the options
"TransformTabToSpaces" and "RemoveTrailingWhiteSpaces". The width
of the tabulator stops can be set with "TabulatorWidth".
- Option "GUIHelpUseTopicAsKeyWords" controls whether the titles of
topics will be used as the key words instead of the names when
generating help on a GUI, this is done to hide internal component
names.
- Fixed manual help contexts in topics of GUIHelp.
- Additional support for help contexts, mapping files can be
generated with options "GenerateHelpContextIniFile" and
"GenerateHelpContextMappingFile".
- For Windows Help files a mapping file to the file containing a
topic of a help context can be generated with the option
"GenerateHelpContextFileMapping".
- With option "GenerateHelpContextDestinations" enabled the
generated PDF files contain additional link targets based on
the help contexts.
- HTML generators can generate a HTML file which will forward the
browser to the topic specified by a help context via
ECMAScript
(JavaScript) when one of the options
"GenerateHelpContextRedirector" and
"GenerateVisualHelpContextRedirector" is enabled. Several new
texts to be localized for these files.
- Unit "UUseGUIHelp.pas" with examples on how to use generated
documentation as context-sensitive (F1) help for a GUI created.
Unit separated into the new package "Extras" together with the
unit UFormHelp. It contains its own "ReadMe" file and every unit
contains also a good documentation in itself.
- Index of all identifiers and files in the documentation will no
longer contain topics with no entries, and a topic for all
non-ASCII-identifiers has been added.
- Revised DelphiDoc's documentation where necessary.
- Officially dropped support for Kylix, at least in the GUI
version.
- Fixed double clicking a message not always scrolling to its
position in source view.
- Fixed loading compiler options from .cfg/.conf doubling constants
for conditional compiling.
- Fixed a heap corruption when images with links are used in the
main index of the user documentation.
- Fixed freezing when circular aliases for help on GUI have been
defined.
- Fixed an error when searching for a file to be included from
within another included file.
- Fixed mixup of compiler defines and options when a file is
included by several different files near a uses clause (even an
empty one), especially if the uses clause or "implementation" etc.
is defined within the included file.
- Fixed up the read-only
TMemo
s in the GUI which show
different texts, the vertical scroll bar will now be shown when it
is necessary and only then.
changes (Version 1.7.6.420):
- PDF generator transformed to new generator concept.
- New component to show messages of generators.
- Fixed viewing speed of big PDF files.
- Types of indices of arrays are now actually parsed to their
type.
- "Unused" used units are listed by the parser - recognition is not
perfect.
- Fixed error when searching the default property in a class
without members.
- Fixed not updating list of log files when saving project file of
help on a GUI.
- Added the
LATEX
generator introduced in the last release also to the command line
version.
- Fixed command line option
--help
.
- New localized text "RawDataNotSupportedInPDF" for a warning
message.
changes (Version 1.7.6.395):
- Command line parameters completely revised.
- Options for help on a GUI can be saved to and loaded from files,
an own page in the GUI added, file extension
.ddgh
added.
- Possible to define an alternative content for main index of help
for GUIs.
- Compressing of contents of source files when saving the parsed
data (shrinking size to one third).
- Fixed using font Courier after symbols in PDF output.
- Fixed abortion of PDF output when an inline command at the end of
a preformatted line was encountered
- Fixed exported identifiers in split off Windows Help files.
- Limited support for members with the same name as a keyword - as
is possible in Delphi for .NET.
- Fixed
F1
-Help after changing the working
directory.
changes (Version 1.7.5.385):
- First release (candidates) of the two generators of the HTML
formats using the new internal system.
- Option to split the old Windows Help files into several files.
- Made generators of the new internal system the default.
- The new generators support help on a GUI and user
documentation.
- Fixed broken HTML files in HTML Help generator, at least in the new
one.
CheckHTMLFiles.tcl
included to check links in
generated HTML files.
- Fixed extracting comments on the same line - only at the end of
the line.
- Fixed the option "FilterIdentifiersByScope".
- Fixed the button to reset options of the generators.
- Added localization texts for links to trees of hierarchies of
classes in the old Windows Help file formats, and removed them:
DocumentationLinkListOfClassesPre,
DocumentationLinkListOfClassesLink,
DocumentationLinkListOfClassesMiddle and
DocumentationLinkListOfClassesPost
- Some smaller changes in the GUI.
changes (Version 1.7.4.372):
- First release (candidate) of the generator
TICWinHelpDoc
using a new internal system.
- Simple generators work again after being broken in the last
release.
- Messages of generators can be sorted.
- New option
GUIHelpUseTopicAsLinkText
.
- Constant parameters of variant types
array of
const
is now replaced with the real type array
of TVarRec
.
- Additional variable texts
ThisIdentifier
and
ThisClass
.
- Specifying the resolutions of images works.
changes (Version 1.7.3.354):
- Window to create diagrams can show "modules" and its tool bars
were updated.
- Fixed: Bug in PDF generation with too long words (f.i. identifiers)
or when indentation is too big.
- Fixed: Directive "overload" repeated at implementation of
function.
- Added localization text for heading of documentation on components
when generating help on a GUI in HTML format.
- Comments on the same line as identifiers are only extracted, when
they are at the end of the line.
- DelphiDoc is compiled with
FastMM.
changes (Version 1.7.2.340):
- Revision of compiler options: saved completly, unit aliases,
additional search paths
- some other general improvement on Unit-Alias handling
- Generator of Windows Help files parses log file when compiling and
ignores warning messages about the case of keywords, filtered log
is shown as "Status Text".
- gathering of some basic statistics, doing nothing with them so far
(only shown in a dialog).
- "Undocumented" identifiers are not listed anymore in the
documentation of other identifiers. If a file is filtered all
identifiers in it are also filtered. Two new options for all
generators: FilterFilesByName and FilterIdentifiersByName.
- Unit UDocumentationTexts for localization has been split up, new
pseudo-generator
available to create a new unit with a translation.
- Default buttons for most pages.
- Pop-up menus to copy and save messages.
- Command-line switch "-u" to add files with additional (user)
documentation, -U clears the list of files.
- Verbosity of command line version can be toggled separately for
parsing messages, unknown identifiers and generation
messages, for example -Vi.
- Filter for the messages of the generators for the command line
version with the switches -f and -F.
- The icons in PDF files for scopes etc. are real icons (of font
ZapfDingbats).
- In Kylix PDF files should use images directly.
- Fixed: stupid mistake preventing loading of saved parsed data of
current version
- Fixed: positions of some errors while parsing
- Fixed: documentation now using correct - and all - localized
texts
- Fixed: error when parsing unit System or SysInit (both)
- Fixed: the loss of "#"-signs in values and string-parts in
documentation (deleted invalid spaces)
- Fixed: adding user documentation files on the page "User
Documentation" does actually work.
- Fixed: extensions of images in Kylix (
.jpg
and
.png
)
- Fixed: HTML output now includes enumeration items
- Fixed: HTML output links on record-like type from inside the
types correctly
- updated ConvertForKylix.tcl.zip
changes (Version 1.7.1.332):
- The topics for options have been fixed when saving them to
an ini file, fixes also the automatic initialization of the objects
and loading of localized strings.
- The handling of errors in included files while parsing shows the
included file directly.
- Option "MaxPDFPagesCount" of PDF generator deleted, generated PDF
files up to 1.2 MB smaller.
- Links to examples for classes fixed in Windows Help files.
- All options are editable in one single dialog.
- Options of all generation objects can be specified at the command
line.
- The GUI version can filter messages after generating
documentation.
- Option "CharacterEncoding" to set the character encoding in the
HTML output formats.
- Option "DontQuoteSpecialCharacters" to keep HTML-Tags (i.e.
<
, >
, &
and
"
) in the documentation - without any
warranty.
- LATEX output
got an option "ApplyCharacterTranslation" to decided whether the
options "CharTranslation_<nnn>" should be applied to
change characters >= #127 depending on whether the
LATEX package
inputenc
is used.
- Improvements on parsing the .cfg file, especially for Delphi 8+,
thanks to Arthur Pijpers for pointing the changes out.
- Menu item "Save Diagram Layouts" now also queries to save the
current layout before saving.
- The diagram can be scrolled with mouse wheel and the middle mouse
button.
- The tree views to select the generator object etc. can now also be
shown in monochrome mode (more like black, white, several shades of
gray).
- The button to browse for the destination directory of the
documentation does work again and the path is actually saved
(thanks to Arthur Pijpers for pointing this out)
- Drag'n'Dropping directories and files on these pages does now also
work.
- Added set of scripts to convert
.dfm
files for
Kylix.
- Updated (corrected) documentation finally.
changes (Version 1.7.0.320):
- A new GUI!
- Breaked 100,000 lines of code (106,000).
- Splitting up in the generators in generator, extractors of comments
and evaluator of the extracted texts (still under
construction).
- File associations possible with
.ddp
,
.ddd
and .dddl
.
- Fixed a memory leak when using diagrams.
- Fixed local definitions causing the (global) types to be added to
the list of unknown types.
- Fixed problem with finding identifiers, now first searching
implementation usage then interface (and name of file itself at the
very first).
- Fixed problem with finding identifiers, in main program and
initialization and finalization sections (procedures).
- Fixed indentation of one single character (with ~[preformatted ])
in the PDF format.
- Identifiers in Windows Help files now get a symbol of their
scope in their documentation.
- The option "IgnoredMessages" has been deleted, because of a new
message system of the generators.
- GUI help can now use labels/titles for the forms/frames/pages.
- The pages of the GUI help are sorted by their names.
- The help on a GUI can now be constrained to a component and its
contained components. The format of the log files has changed (adds
a " 1" after each logged component).
changes (Version 1.6.0.289):
- Released generator
TDiagramCreator
to create diagrams of the classes and files of the parsed source
code.
- Released generator
TSaveDataDoc
to save the parsed data in a file.
- Released source code of components to show source code,
TPascalMemo
and TSourceGrid
. The latter
one allows to show the source code also with Kylix.
- Fixed (assertion) error when searching the comment of properties at
their read-member or -method if they are declared in a different
file.
- Fixed "type" and "file" to add/remove classes to/from a
diagram.
- Improved option
KeepLineBreaksInComments
, especially
when DontParseComments
is also used.
- Improved appearance of
~[sample ]
in
TWinHelpDoc
.
- No message anymore, if message parameter of message handlers is not
commented.
changes (Version 1.6.0.290):
- Already fixed in the last version, but forgot to mention:
Fixed list of used packages, when using more than one package in
the project options.
- Fixed form to create diagrams to be able to create diagrams of
classes again.
- Fixed a problem while parsing pascal statements
(TheFile not initialized in expressions).
- Fixed scope of enumerations as types of members of record-like
types (now get the file's scope).
- Fixed option to filter lines of comments by regular expressions,
previously this always resulted in an empty comment.
- Selecting boxes in the diagram form no long mark the diagram as
changed. Added scrolling of the diagram with the cursor keys (while
pressing Shift (and Control)).
changes (Version 1.6.0.271):
- Separating the internal representation of files from the
parsers. Leading also to a new version for the files of parsed
data.
- Positions are now real positions inside the files, i.e. rows and
columns are one-based and each character counts.
- Improved support for included files, positions in it are saved,
comments are read from them.
- Limited Delphi 2005-Support: strict-scopes are parsed (but treated
like the un-strict scopes), multicast eventhandlers/properties,
for ... in ... do
. Only partial support for
file-namespaces. Still no support for nested types and class
constants. UTF-8 still possible (now legal in identfiers), Unicode
not supported.
- Fixed cross-references in the documentation. Due to a problem with
filtering the sections, they were almost always filtered.
- Fixed loading of options of generators by the hierarchy.
- A simple algorithm to automatically layout diagrams of files is now
also available.
- Generator HMTL-Help: Fixed read-only and abstract icons, when
compiling with own sub-sub-directories for record-like types.
- Fixed some D7-incompatibilities in the source code (hopefully not
created new ones). The warning messages about unsure types and code
constructs in the source code are disabled by default.
- Changed the command line parameters slightly. F.i. added the
-k
to keep the parsed data to generate documentation
about it several times or to load previously parsed data from a
file.
- Fixed parsing of the .cfg/.conf file of programs when more than one
package is used.
changes (Version 1.5.0.255):
- Added a simple wizard/tour.
- Added ~[diagram ] to create diagrams and insert them into the
documentation.
- Checked compiling with Kylix again. Fixed form to create diagrams
(mostly). Fixed tree view of the options of the generator. Added
the "ConvertForKylix.tcl" to make an easier transition.
- Added "Reset" button to parse a new project.
- Fixed option IdentifierSectionsFilter of generator
TFormatCommentDoc.
- Fixed parsing of "class of SomeType" if SomeType is only a type
reference to a class instead of the class itself.
- Fixed using of 16-bit bitmaps with the WinHelp Generator if their
width is an odd number (32-bit alignment).
- Fixed alignment of images in PDF, now centered (as supposed)
instead of right-aligned.
- Generating a warning message if a file of ~[includeFile FileName]
isn't found.
- String options of the generators are no longer limited to 255
characters.
changes (Version 1.4.1.249):
- Extraction of content of comments with Regular Expressions.
- Expanded the option "UseSubdirectories" of the HTML Help generator
to allow spread the generated source HTML files in more
sub-directories and sub-sub-directories.
- Manual headers of HTML files are now defined with only one file,
replacing some special tags with the actual content.
changes (Version 1.4.0.246):
- Localization of key words is now possible.
- A progress window will be be shown, even when only generating the
user documentation or documentation about a GUI.
- Releasing the sources for the help on the GUI of
Delphidoc.
- Command line version got an additional switch "-auto" to skip the
waiting on a key at the end.
- Images can be included. Renamed two options of the PDF generator
regarding images.
- Added options "FileName" to several generators.
- Several options to filter some parts of the documentation added,
take a look in the category "Generation.Filter".
- The PDF generator got an option "TableOfContentsDetailLevel" to
limit the topics to list in the table of contents.
- The HTML Help generator got the option "UseSubdirectories" to
spread the generated source HTML files in several
sub-directories.
- Fixed images in the PDF generator. Fixed links from the user
documentation to identifiers or files. Fixed the inline command
~[userDoc ] while generating help on a GUI. Fixed compression of
Windows Help files (option was reversed).
changes (Version 1.4.0.239):
- Added a generator to generate
Compiled HTML Help files (
.chm
). Lots of files are
generated, even more than with the HTML generator, which are then
compiled to a big help files using Mircosoft's HTML Help Workshop.
Help contexts work like in the WinHelp generator.
- The new HTML help format is now also used as the help for the GUI
of DelphiDoc (to reduce the size). The connection from the
program to the help file is done with a few units supplied by
courtesy of The Helpware
Group.
- The WinHelp format got a content file. The normal HTML files got
some key words.
changes (Version 1.3.4.232):
- Added inline command
~[HelpContext HCNumber]
to
specify a help context for a topic in the documentation. Added
extraction of the help context of the window itself.
- Added PNG support for Kylix.
- Parsing of
^J
to insert special characters (here
#10
) should now also work directly at other string
constants.
- Compression in Segmented Hyper Graphic (SHG) image files to be used
in the windows Help files with links is now possible, but it seems
they are not compressed inside the generated file, so this feature
is disabled by default in this release of DelphiDoc.
changes (Version 1.3.4.231):
- Documentation as a help on a GUI can be generated in the formats
HTML, PDF and Window Help files, all using a screen shot of the
window with clickable components to get to the help.
The Windows Help file also uses the HelpContext
property of the components and links the help topics to them. A
help file for DelphiDoc is now also included.
- Two sets of parsed datas can now be simply compared.
- Saving of all
$INCLUDEd
files.
- Fixed the generator to extract the source code to use the
correct names of the directories in the path. Fixed inline command
~[defineTextIf ]
.
changes (Version 1.3.3.219):
- Diagrams of the parsed data can now be created, class
diagrams and diagrams of the files. The design and one of the
algorithms to automatically layout the diagrams have been
copied/tranfered from
ESS Model.
- Fixed the PDF generator again not to write several lines over each
other at the top of the pages.
- Fixed setting of numeric options of the generators by name. Always
use the point "." as the decimal separator in floating
point numbers (this is more portable).
- Managing of several parsed datas. This has currently no purpose,
but the functionality to compare two sets of parsed data should be
added in one of the next releases.
changes (Version 1.3.2.210):
- Created a generator to export all classes and interfaces to a
UML XMI file.
- Again fixed the sorting of lists of identifiers. One
identifier was dropped sometimes.
- Finally implemented option
OnlyPublicIdentifiers
and
added also IgnoredPortabilityIssues
to filter the
identifiers and files to generate documentation about.
- Fixed internal cloning of properties (shouldn't matter). Fixed
redirection of methods of implemented interfaces to methods with
another name. Fixed order of the attributes/directives of
functions. Fixed links and description of enumeration types and
items.
changes (Version 1.3.1.195):
- Corrected the kind of the members in each list. Fields and
properties were interchanged, what a mess!
- After the last rework of properties now also changed the
saving/loading to/from a file.
- Parsing of obsolete and ignored parameter list of a program
possible.
- More precise parsing of the exports-clauses. Also generating
lists of all exported identifiers.
changes (Version 1.3.1.190):
- Interpreting of
{$I file}
as
{$INCLUDE file}
. Better positions of errors in
included files.
- Correction of sorting of lists of identifiers (not members).
- Correction of some links in the HTML-generator. Corrected position
of line break in lists (conform to standard). Added CSS-class'es to
several tags to allow better customizing via CSS.
- Corrected option RemoveLeadingStars to handle empty lines in
comments. Added two options pertaining comments:
KeepLineBreaksInComments and UseOnlyStaredComments. Added two new
sections: ~author and ~version and three additional sections to be
defined by the user.
- Rework of the parsing of properties and saving of all parsed
directives.
changes (Version 1.3.1.184):
- Support of Localization. Added two compiler switches:
-l Name=Text
(lower L) assigns a text to a named
value.
-L LanguageOrFile
(capital L) loads the file of
localized texts or if it does not exist tries to use it as a
language to be used. Only "english" and
"deutsch" (and "german") are supported
internally so far.
- Corrected two errors when
{$INCLUDE }
ing some
files. Also checked, that always the correct ini file (in the same
directory as the executable) is used.
- Using left alignment for lists of identifiers in PDF
documentation. Creating links to local files with
~[linkExtern ]
if no protocol
("://"
) is specified.
- Added the possibility to define additional constants for
conditional compiling, like
RTLVersion
,
CompilerVersion
and GPL
in unit System.
Also changed the records TDefines
and
TDefineOptions
to classes and the version of saved
parsed data to "1" and also of the parser class.
- Faster saving of parsed data by using binary trees to access the
indices of the identifiers and files.
- A list of all still not implemented abstract methods is generated
in the documentation of all abstract classes.
- Added checks, whether names of identifiers are valid. Also added
lists for each unit, which files use them, including packages and
even programs using/requiring packages.
- Added an extra list for library files and directories. These files
are only parsed if they are used by other files.
- Added a list box to add additional files of user documentation like
~[userDoc ]
. Usefull if the comments shouldn't be
parsed. Also added an option to generate only this user
documentation.
- Three methods of
TIdentifierParser
have been removed,
they had been marked as deprecated. To a degree they have
been replaced by IsEndOfStmtToken
.
changes (Version 1.3.0.176):
- Internal optimizing: faster parsing;
everything else is remarkably faster.
- Added list of all overriding methods of a method. Better format of
text in block mode in the PDF generator. Saving/Loading of parsed
data updated for changes of last version. Old files can still be
loaded. Fixed error in size of generated WMF files.
- Clean up: removal of some useless inline commands and
variables. Added some new variable texts.
- It compiles and generates on Kylix!
- The program has (finally) been GPL'ed!
- Command line version gots finally a progress bar. It does
work in Delphi and Kylix and will be shown by default.
This also introduces some smaller changes of the program parameter
options. -q
has been deleted, verbose mode will now be
disabled by a capital -V
(enabled by a lower case
-v
). The progress bar is disabled by a capital
-R
and re-enabled by -r
.
Ctrl-C will abort the current progress, like the abort button in the
GUI. Any other signal (besides SIGQUIT) under *nix and Ctrl-Break
in Windows will kill it instantly.
- Several distributed
improvements/corrections/extensions/changes.
changes (Version 1.2.4.158):
- An ini file for the application and the generators is used.
- Fixed HMTL-generator.
- Changes at the PDF-generator (fixed links to members).
- A scroll bar for the component showing the parsed source code and
an option to use names of parameters as sections for their comments
have also been added. Indices of array properties are parsed now.
The variant parts of records are also now saved, but this doesn't
appear in the documentation so far (any suggestions how it
should?).
- Several distributed
improvements/corrections/extensions/changes.
changes (Version 1.2.4.150):
- After I shelved it for a long time I actually started at the
PDF generator and, well, the concept I conceived works
better than expected and I think it is finished. The created PDF
files look almost like the PDF files created with the generated
files of the
LATEX
generator.
- Fixed: Generator for
LATEX will now
show the used global identifiers.
- The names of the sections in the comments can be changed.
- Abstract methods are marked.
- Several distributed
improvements/corrections/extensions/changes.
changes (Version 1.2.3.142):
- Restructurizing of GUI and help.
- Finally added the capability to parse the
$INCLUDE
-compiler command.
$X
now affects if there is a
Result
-variable in functions.
- The order of the parsing of the files depends now on the
internal/mutual usage of the files (needed for conditional
compiling).
- A serious bug in the compiler defines dialog was fixed.
- Function types now also parse the ~param and ~result sections like
functions.
- Several distributed
improvements/corrections/extensions/changes.
changes (Version 1.2.2.125):
- The in Delphi 6 introduced portability issue-directives
deprecated, library and platform are
recognized and parsed, also finally the initialization of variables
with absolute. But the parsing of the new concept of
conditional compiling needed some bigger changes and can only
evaluate simple expressions.
True
and
False
shouldn't be declared (i.e. not in
SystemIdents.txt
) to use boolean constants.
- Program-parameter for an (minimum) integration in the Delphi-IDE.
By adding DelphiDoc to the Tools-menue of Delphi and
entering the parameters
"
$SAVEALL $SAVE -e $EXENAME
" (and others)
it's relatively easy to generate documentation for the current
project (also see the help of the program-parameters with
"-?
"). A small note: They are also fully
functional in the GUI-version.
- The initialization- and finalization-sections and
the main program are treated as special functions and appear as
such in the documentation.
- Several distributed
improvements/corrections/extensions/changes.
changes (Version 1.2.2.111):
- Corrected the lists of files and classes and inserted page breaks
(via macros) in the generator of documentation in the format
LATEX. Added
also the sorting of the files and classes. Corrected the
~[preformatted ] and ~[sample ]-inline commands.
- With the Expert-options can be chosen where to get the comment of
an identifier, from the interface or its implementation. When
choosing a generator in the GUI all values of common Expert-options
of the old generator are applied to the new one.
- Something I forgot to mention before: in both, the command-line
program and the GUI-version are parameter possible, just start with
-?
to see them.
- Something else I forgot: The values of the Expert-options can be
read out of the project file, if the correct generator was chosen
prior opening it. The options have to be put manually into the file
in an Ini-section with the exact name of the generator ([THTMLDoc],
[TWinHelpDoc] or [TLaTeXDoc]) in the usuals format Name=Value.
changes (Version 1.2.2.109):
- Another generator for
LATEX source
has been added. It is very much beta but seems to work so far. Any
comments on the documentation would be appreciated.
changes (Version 1.2.0.106):
- Besides Xfig-files also WMF-files (Windows Meta Format) are
generated, which should be easily insertable into
Office-documents.
- Templates for the beginnings and the ends of the generated
HMTL-files can be defined with the Expert-options.
- A very simple preview of the generated Xfig-files is available in
the GUI.
changes (Version 1.2.0.100):
- Comments can be ignored with the Expert-options.
- Windows help files can automatically be compiled and also launched
with the Expert-options.
- Automatic generation on one or more projects with command-line
options.
- Command-line program now available. I decided against a dll/package
for both executables because Delphi supports this in theory but in
practice in it's not correctly implemented in version 4.
- Step-by-step choosing of the files to parse and not is now
possible.
- Both generators create an index of all identifiers and files
(finally).
- ~example is finally parsed.
- Files with additional documentation not attached to identifiers can
be inserted in the documentation (~[userDoc FilePath]). It is also
parsed; the syntax of the comments apply to them as well.
- the usual corrections
changes (Version 1.1.1.46):
- It should be possible to change the special comment character
"~" (to use "@" instead) with the button
Expert.
- The unintentional whitespaces in the generated Windows help files
should be disappeared (they were already a day after the last
update, but I was to lazy to upload the update again).
- Files are now in the INI-format to facilitate future changes.
- Revision of the GUI.
- the usual corrections
older changes:
- Generation of a help project to create Windows help files is now
possible.
- the usual corrections
old changes:
- Noticeable more cross-references (links);
(hopefully) better structuring
- index of all methods
- Parsing of all comments (versus the simple copying into the
documentation) see here
- GUI has been optimized somehow
None of the following things has so far raised any issue or is not a
priority to to make. To be honest, this list is rather old and I don't
use it anymore or even look at it. But if anyone ever has a problem
or something similar with any item in this list feel free to remind me
of it.
Things to add or to correct:
- Recognize identifiers in assembler blocks.
- Distinction of used overloaded procedures is not sufficient, that
means there is no such thing, always the first is used.
- Calling of methods of [Ole]Varianten should be ignored (treating
Variant as a type of its own).
- With "
on E: SomeException do
"
access on private/protected fields of E should be possible if
permitted.
- Parsing of the types of parameters of overloaded procedures, if
the name of the file (unit) has been given in some cases, should be
corrected(/tested).
Already added/corrected features, but still to be tested:
- All paths are correctly and in case of relative paths also relative
to the correct path recognized and treated?
- Complex URIs in external links in documentation of WinHelp
(what characters have to be quoted in RTF/WinHelp inside such a
command?)
- Unit-aliases are correctly recognized and used?
- Default property is correctly recognized after arrays?
- Recursive callings of functions are recognized correctly?
raise Exception-expression at Address
always correctly recognized?
- Methods of classes that implement interfaces should be parsable
(no sample code available):
function IUnknown.QueryInterface = MyQueryInterf;
Also there seems to be changes to Delphi 7, that force to use the
original name of the interface always.
- "array of const"-parameter correct?
- Recognition of unknown units as identifiers is correct?