Hi all,
attached are some files to customize HTML pages but could
easily? be extended to include at least the LATEX output format. The
patch makes it possible to add user defined commands in the same way as
e.g. the $dateandtime, $projectname etc. by including them in the file
defined by the HTML_HEADER tag. At creation time of an HTML file doxygen
calls a program (via popen()) defined by an new tag HTML_OUTPUT_ADAPTER.
As input arguments the program uses <source> <output_dir>:
<source> is most of the time a source file where the current object
(e.g. a class) is defined but when generating index files the first
value of the INPUT tag is used as the source.
<output_dir> is the definition of the OUTPUT_DIRECTORY tag.
The main idea behind the patch is to enable generation of many
subprojects, where the same group(s) (defgroup/ingroup) exists in more
than one project and still keep the unique information that might exists
from each subproject in the generated documentation. In that way it is
possible to show this information while viewing the HTML file, such info
could e.g. be a design responsible identification which lets the viewer
immediatelly know who to contact for more info.
Design information (doxygen):
The current design only works for the HTML_HEADER cause that satisfy our
needs, adding more such as HTML_FOOTER or LATEX_HEADER requires some
more thoughts. Probably one more argument has to be used when invoking
the "adapter program" since it is invoked for every generated file and
therefore it adds time to the total generation time. The argument could
state whether it is for the HTML header/ footer or the LATEX header so
it possible to decide whether to terminate immediatelly.
Desigin information (adapter program)
As already stated, there are two arguments <source> and <output_dir>.
The <source> usally contains the source file (including the absolute
path) to the definition of the current object, such as a class or e.g.
group definition. Sometimes the <source> argument contains the first
value of the INPUT tag, this is when generating the index files where no
real definition file exists.
The <output_dir> is always the value of the OUTPUT_DIRECTORY tag, as an
example we are using it to get the relative path for an image used in
the HTML header.
The output format shall be:
[USER_COMMAND]
$NameofVariable1FoundinHTMLHeaderfile=replacementString
$NameofVariable2FoundinHTMLHeaderfile=replacementString
$NameofVariable3FoundinHTMLHeaderfile=replacementString
$NameofVariable4FoundinHTMLHeaderfile=replacementString
In the current implementation the [USER_COMMAND] could have been left
out but we kept it for now. It is used to tell doxygen the expected
interpretation and where to temporarily store the information.
Regards,
Johan
PS The patch is for version 1.2.11 DS
|