Commit aacd1557 authored by Dimitri van Heesch's avatar Dimitri van Heesch

Release-1.8.3.1-20130209

parent dcd4714c
DOXYGEN Version 1.8.3.1 DOXYGEN Version 1.8.3.1-20130209
Please read the installation section of the manual Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions. (http://www.doxygen.org/install.html) for instructions.
-------- --------
Dimitri van Heesch (20 January 2013) Dimitri van Heesch (09 February 2013)
DOXYGEN Version 1.8.3.1 DOXYGEN Version 1.8.3.1_20130209
Please read INSTALL for compilation instructions. Please read INSTALL for compilation instructions.
...@@ -26,4 +26,4 @@ forum. ...@@ -26,4 +26,4 @@ forum.
Enjoy, Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (20 January 2013) Dimitri van Heesch (dimitri@stack.nl) (09 February 2013)
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2006 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* $Id$ * $Id$
* *
* *
* Copyright (C) 1997-2012 by Dimitri van Heesch. * Copyright (C) 1997-2013 by Dimitri van Heesch.
* *
* Permission to use, copy, modify, and distribute this software and its * Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby * documentation under the terms of the GNU General Public License is hereby
......
...@@ -6,12 +6,12 @@ distclean: clean ...@@ -6,12 +6,12 @@ distclean: clean
$(RM) -rf Makefile doxyapp.pro Makefile.doxyapp $(RM) -rf Makefile doxyapp.pro Makefile.doxyapp
tmake: tmake:
$(ENV) $(PERL) $(TMAKE) doxyapp.pro >Makefile.doxyapp $(ENV) $(PERL) "$(TMAKE)" doxyapp.pro >Makefile.doxyapp
strip: strip:
strip doxyapp strip doxyapp
Makefile.doxyapp: doxyapp.pro Makefile.doxyapp: doxyapp.pro
$(ENV) $(PERL) $(TMAKE) doxyapp.pro >Makefile.doxyapp $(ENV) $(PERL) "$(TMAKE)" doxyapp.pro >Makefile.doxyapp
install: install:
...@@ -8,17 +8,17 @@ distclean: clean ...@@ -8,17 +8,17 @@ distclean: clean
$(RM) -rf Makefile doxyindexer.pro Makefile.doxyindexer $(RM) -rf Makefile doxyindexer.pro Makefile.doxyindexer
tmake: tmake:
$(ENV) $(PERL) $(TMAKE) doxysearch.pro >Makefile.doxysearch $(ENV) $(PERL) "$(TMAKE)" doxysearch.pro >Makefile.doxysearch
$(ENV) $(PERL) $(TMAKE) doxyindexer.pro >Makefile.doxyindexer $(ENV) $(PERL) "$(TMAKE)" doxyindexer.pro >Makefile.doxyindexer
strip: strip:
strip doxysearch strip doxysearch
Makefile.doxysearch: doxysearch.pro Makefile.doxysearch: doxysearch.pro
$(ENV) $(PERL) $(TMAKE) doxysearch.pro >Makefile.doxysearch $(ENV) $(PERL) "$(TMAKE)" doxysearch.pro >Makefile.doxysearch
Makefile.doxyindexer: doxyindexer.pro Makefile.doxyindexer: doxyindexer.pro
$(ENV) $(PERL) $(TMAKE) doxyindexer.pro >Makefile.doxyindexer $(ENV) $(PERL) "$(TMAKE)" doxyindexer.pro >Makefile.doxyindexer
install: install:
$(INSTTOOL) -d $(INSTALL)/bin $(INSTTOOL) -d $(INSTALL)/bin
......
...@@ -2,7 +2,7 @@ TEMPLATE = app.t ...@@ -2,7 +2,7 @@ TEMPLATE = app.t
CONFIG = console warn_on static release CONFIG = console warn_on static release
HEADERS = HEADERS =
SOURCES = doxyindexer.cpp SOURCES = doxyindexer.cpp
LIBS += -lxapian -lqtools -L../../lib LIBS += -L../../lib -lxapian -lqtools
DESTDIR = DESTDIR =
OBJECTS_DIR = ../../objects OBJECTS_DIR = ../../objects
TARGET = ../../bin/doxyindexer TARGET = ../../bin/doxyindexer
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# #
# $Id$ # $Id$
# #
# Copyright (C) 1997-2012 by Dimitri van Heesch. # Copyright (C) 1997-2013 by Dimitri van Heesch.
# #
# Permission to use, copy, modify, and distribute this software and its # Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby # documentation under the terms of the GNU General Public License is hereby
...@@ -20,7 +20,7 @@ doxygen_version_minor=8 ...@@ -20,7 +20,7 @@ doxygen_version_minor=8
doxygen_version_revision=3.1 doxygen_version_revision=3.1
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package. #NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=NO doxygen_version_mmn=20130209
bin_dirs=`echo $PATH | sed -e "s/:/ /g"` bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
...@@ -40,6 +40,7 @@ f_flex=NO ...@@ -40,6 +40,7 @@ f_flex=NO
f_bison=NO f_bison=NO
f_search=NO f_search=NO
f_langs=nl,sv,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,mk,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa,sc,vi,tr,eo,am f_langs=nl,sv,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,mk,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa,sc,vi,tr,eo,am
f_sqlite3=NO
while test -n "$1"; do while test -n "$1"; do
case $1 in case $1 in
...@@ -97,6 +98,9 @@ while test -n "$1"; do ...@@ -97,6 +98,9 @@ while test -n "$1"; do
--with-doxysearch | -with-doxysearch) --with-doxysearch | -with-doxysearch)
f_search=YES f_search=YES
;; ;;
--with-sqlite3 | -with-sqlite3)
f_sqlite3=YES
;;
-h | -help | --help) -h | -help | --help)
f_help=y f_help=y
;; ;;
...@@ -114,7 +118,7 @@ if test "$f_help" = y; then ...@@ -114,7 +118,7 @@ if test "$f_help" = y; then
Usage: $0 [--help] [--shared] [--static] [--release] [--debug] Usage: $0 [--help] [--shared] [--static] [--release] [--debug]
[--perl name] [--flex name] [--bison name] [--make name] [--perl name] [--flex name] [--bison name] [--make name]
[--dot name] [--platform target] [--prefix dir] [--docdir dir] [--dot name] [--platform target] [--prefix dir] [--docdir dir]
[--install name] [--english-only] [--enable-langs list] [--install name] [--english-only] [--enable-langs list] [--with-sqlite3]
[--with-doxywizard] [--with-doxysearch] [--with-doxyapp] [--with-doxywizard] [--with-doxysearch] [--with-doxyapp]
Options: Options:
...@@ -147,6 +151,7 @@ Options: ...@@ -147,6 +151,7 @@ Options:
--english-only Include support for English only. --english-only Include support for English only.
--enable-langs list Include support for output languages listed in list. --enable-langs list Include support for output languages listed in list.
[default: $f_langs] [default: $f_langs]
--with-sqlite3 Add support for sqlite3 output [experimental]
--with-doxywizard Build the GUI frontend for doxygen. This --with-doxywizard Build the GUI frontend for doxygen. This
requires Qt version 4. requires Qt version 4.
--with-doxysearch Build external search tools (doxysearch and doxyindexer) --with-doxysearch Build external search tools (doxysearch and doxyindexer)
...@@ -400,6 +405,41 @@ else ...@@ -400,6 +405,41 @@ else
echo "using $f_dot" echo "using $f_dot"
fi fi
# - check for sqlite3 ---------------------------------------------------------
if test "$f_sqlite3" = YES; then
echo -n " Checking for sqlite3 ... "
sqlite3_hdr_dir="/usr/include /usr/local/include /opt/local/include"
sqlite3_lib_dir="/usr/lib /usr/local/lib /opt/local/lib"
sqlite3_lib_name="libsqlite3.so libsqlite3.dylib libsqlite3.a"
sqlite3_hdr=NO
sqlite3_lib=NO
sqlite3_link=
for j in $sqlite3_hdr_dir; do
if test -f "$j/sqlite3.h"; then
sqlite3_hdr="$j/sqlite3.h"
break
fi
done
for i in $sqlite3_lib_dir; do
if test "$sqlite3_lib" = NO; then
for j in $sqlite3_lib_name; do
if test -f "$i/$j"; then
sqlite3_lib="$i/$j"
sqlite3_link="-L $i -lsqlite3"
break
fi
done
fi
done
if test "$sqlite3_hdr" = NO -o "$sqlite3_lib" = NO; then
echo "not found!";
else
echo "using header $sqlite3_hdr and library $sqlite3_lib...";
fi
fi
# - check for perl ------------------------------------------------------------ # - check for perl ------------------------------------------------------------
echo -n " Checking for perl... " echo -n " Checking for perl... "
...@@ -502,7 +542,7 @@ configPWD=`pwd` ...@@ -502,7 +542,7 @@ configPWD=`pwd`
cat > .makeconfig <<EOF cat > .makeconfig <<EOF
DOXYGEN = $configPWD DOXYGEN = $configPWD
TMAKEPATH = $configPWD/tmake/lib/$f_platform TMAKEPATH = $configPWD/tmake/lib/$f_platform
ENV = env TMAKEPATH=\$(TMAKEPATH) ENV = env TMAKEPATH="\$(TMAKEPATH)"
TMAKE = $configPWD/tmake/bin/tmake TMAKE = $configPWD/tmake/bin/tmake
MAKE = $f_make MAKE = $f_make
PERL = $f_perl PERL = $f_perl
...@@ -522,6 +562,7 @@ HAVE_DOT = $f_dot ...@@ -522,6 +562,7 @@ HAVE_DOT = $f_dot
EOF EOF
fi fi
if test "$f_platform" = "m68k-atari-mint-g++"; then if test "$f_platform" = "m68k-atari-mint-g++"; then
cat >> .makeconfig <<EOF cat >> .makeconfig <<EOF
TMAKE += -unix TMAKE += -unix
...@@ -698,7 +739,7 @@ EOF ...@@ -698,7 +739,7 @@ EOF
#if test "$f_thread" = YES; then #if test "$f_thread" = YES; then
# realopts="$realopts thread" # realopts="$realopts thread"
#fi #fi
cat $SRC .tmakeconfig | sed -e "s/\$extraopts/$realopts/g" >> $DST cat $SRC .tmakeconfig | sed -e "s/\$extraopts/$realopts/g" -e "s;%%SQLITE3_LIBS%%;$sqlite3_link;g" >> $DST
echo " Created $DST from $SRC..." echo " Created $DST from $SRC..."
done done
...@@ -707,7 +748,7 @@ done ...@@ -707,7 +748,7 @@ done
if test -f "src/lang_cfg.h"; then if test -f "src/lang_cfg.h"; then
chmod u+w src/lang_cfg.h # make sure file can be overwritten chmod u+w src/lang_cfg.h # make sure file can be overwritten
fi fi
echo -n " Generating src/lang_cfg.h..." echo " Generating src/lang_cfg.h..."
echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>); echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>);
chomp @l; chomp @l;
@allowed=(split(/,/,"NL,SV,CZ,FR,ID,IT,DE,JP,JE,ES,FI,RU,HR,PL,PT,HU,KR,KE,RO,SI,CN,NO,MK,BR,DK,SK,UA,GR,TW,SR,CA,LT,ZA,AR,FA,SC,VI,TR,EO,AM")); @allowed=(split(/,/,"NL,SV,CZ,FR,ID,IT,DE,JP,JE,ES,FI,RU,HR,PL,PT,HU,KR,KE,RO,SI,CN,NO,MK,BR,DK,SK,UA,GR,TW,SR,CA,LT,ZA,AR,FA,SC,VI,TR,EO,AM"));
...@@ -720,4 +761,17 @@ echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>); ...@@ -720,4 +761,17 @@ echo $f_langs | $f_perl -e '@l=split(/,/,<STDIN>);
if ($r!=1) { die "ERROR: Invalid language $elem was selected!\n"; } if ($r!=1) { die "ERROR: Invalid language $elem was selected!\n"; }
print "#define LANG_$elem\n"; print "#define LANG_$elem\n";
};' > ./src/lang_cfg.h };' > ./src/lang_cfg.h
if test -f "src/config.h"; then
chmod u+w src/config.h
fi
echo " Generating src/settings.h..."
echo "#ifndef SETTINGS_H" > src/settings.h
echo "#define SETTINGS_H" >> src/settings.h
if test "$f_sqlite3" != NO; then
echo "#define USE_SQLITE3 1" >> src/settings.h
else
echo "#define USE_SQLITE3 0" >> src/settings.h
fi
echo "#endif" >> src/settings.h
echo echo
...@@ -65,6 +65,7 @@ documentation: ...@@ -65,6 +65,7 @@ documentation:
\refitem cmddeprecated \\deprecated \refitem cmddeprecated \\deprecated
\refitem cmddetails \\details \refitem cmddetails \\details
\refitem cmddir \\dir \refitem cmddir \\dir
\refitem cmddocbookonly \\docbookonly
\refitem cmddontinclude \\dontinclude \refitem cmddontinclude \\dontinclude
\refitem cmddot \\dot \refitem cmddot \\dot
\refitem cmddotfile \\dotfile \refitem cmddotfile \\dotfile
...@@ -74,6 +75,7 @@ documentation: ...@@ -74,6 +75,7 @@ documentation:
\refitem cmdem \\em \refitem cmdem \\em
\refitem cmdendcode \\endcode \refitem cmdendcode \\endcode
\refitem cmdendcond \\endcond \refitem cmdendcond \\endcond
\refitem cmdenddocbookonly \\enddocbookonly
\refitem cmdenddot \\enddot \refitem cmdenddot \\enddot
\refitem cmdendhtmlonly \\endhtmlonly \refitem cmdendhtmlonly \\endhtmlonly
\refitem cmdendif \\endif \refitem cmdendif \\endif
...@@ -2275,6 +2277,14 @@ only copy the brief description, not the detailed documentation. ...@@ -2275,6 +2277,14 @@ only copy the brief description, not the detailed documentation.
Works in a similar way as \ref cmdcopydoc "\\copydoc" but will Works in a similar way as \ref cmdcopydoc "\\copydoc" but will
only copy the detailed documentation, not the brief description. only copy the detailed documentation, not the brief description.
<hr>
\section cmddocbookonly \\docbookonly
\addindex \\docbookonly
Starts a block of text that will be verbatim included in the
generated docbook documentation only. The block ends with a
\ref cmdenddocbookonly "\\enddocbookonly" command.
<hr> <hr>
\section cmddot \\dot \section cmddot \\dot
...@@ -2440,6 +2450,14 @@ class Receiver ...@@ -2440,6 +2450,14 @@ class Receiver
Ends a block of code. Ends a block of code.
\sa section \ref cmdcode "\\code" \sa section \ref cmdcode "\\code"
<hr>
\section cmdenddocbookonly \\enddocbookonly
\addindex \\enddocbookonly
Ends a block of text that was started with a \\docbookonly command.
\sa section \ref cmddocbookonly "\\docbookonly".
<hr> <hr>
\section cmdenddot \\enddot \section cmdenddot \\enddot
......
...@@ -82,6 +82,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -82,6 +82,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_directory_graph DIRECTORY_GRAPH \refitem cfg_directory_graph DIRECTORY_GRAPH
\refitem cfg_disable_index DISABLE_INDEX \refitem cfg_disable_index DISABLE_INDEX
\refitem cfg_distribute_group_doc DISTRIBUTE_GROUP_DOC \refitem cfg_distribute_group_doc DISTRIBUTE_GROUP_DOC
\refitem cfg_docbook_output DOCBOOK_OUTPUT
\refitem cfg_docset_bundle_id DOCSET_BUNDLE_ID \refitem cfg_docset_bundle_id DOCSET_BUNDLE_ID
\refitem cfg_docset_feedname DOCSET_FEEDNAME \refitem cfg_docset_feedname DOCSET_FEEDNAME
\refitem cfg_docset_publisher_id DOCSET_PUBLISHER_ID \refitem cfg_docset_publisher_id DOCSET_PUBLISHER_ID
...@@ -114,6 +115,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -114,6 +115,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_ext_links_in_window EXT_LINKS_IN_WINDOW \refitem cfg_ext_links_in_window EXT_LINKS_IN_WINDOW
\refitem cfg_extension_mapping EXTENSION_MAPPING \refitem cfg_extension_mapping EXTENSION_MAPPING
\refitem cfg_external_groups EXTERNAL_GROUPS \refitem cfg_external_groups EXTERNAL_GROUPS
\refitem cfg_external_pages EXTERNAL_PAGES
\refitem cfg_external_search EXTERNAL_SEARCH \refitem cfg_external_search EXTERNAL_SEARCH
\refitem cfg_external_search_id EXTERNAL_SEARCH_ID \refitem cfg_external_search_id EXTERNAL_SEARCH_ID
\refitem cfg_extra_packages EXTRA_PACKAGES \refitem cfg_extra_packages EXTRA_PACKAGES
...@@ -137,6 +139,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -137,6 +139,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_generate_buglist GENERATE_BUGLIST \refitem cfg_generate_buglist GENERATE_BUGLIST
\refitem cfg_generate_chi GENERATE_CHI \refitem cfg_generate_chi GENERATE_CHI
\refitem cfg_generate_deprecatedlist GENERATE_DEPRECIATEDLIST \refitem cfg_generate_deprecatedlist GENERATE_DEPRECIATEDLIST
\refitem cfg_generate_docbook GENERATE_DOCBOOK
\refitem cfg_generate_docset GENERATE_DOCSET \refitem cfg_generate_docset GENERATE_DOCSET
\refitem cfg_generate_eclipsehelp GENERATE_ECLIPSEHELP \refitem cfg_generate_eclipsehelp GENERATE_ECLIPSEHELP
\refitem cfg_generate_html GENERATE_HTML \refitem cfg_generate_html GENERATE_HTML
...@@ -187,6 +190,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -187,6 +190,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_inline_grouped_classes INLINE_GROUPED_CLASSES \refitem cfg_inline_grouped_classes INLINE_GROUPED_CLASSES
\refitem cfg_inline_info INLINE_INFO \refitem cfg_inline_info INLINE_INFO
\refitem cfg_inline_inherited_memb INLINE_INHERITED_MEMB \refitem cfg_inline_inherited_memb INLINE_INHERITED_MEMB
\refitem cfg_inline_simple_structs INLINE_SIMPLE_STRUCTS
\refitem cfg_inline_sources INLINE_SOURCES \refitem cfg_inline_sources INLINE_SOURCES
\refitem cfg_input INPUT \refitem cfg_input INPUT
\refitem cfg_input_encoding INPUT_ENCODING \refitem cfg_input_encoding INPUT_ENCODING
...@@ -197,6 +201,7 @@ followed by the descriptions of the tags grouped by category. ...@@ -197,6 +201,7 @@ followed by the descriptions of the tags grouped by category.
\refitem cfg_latex_batchmode LATEX_BATCHMODE \refitem cfg_latex_batchmode LATEX_BATCHMODE
\refitem cfg_latex_bib_style LATEX_BIB_STYLE \refitem cfg_latex_bib_style LATEX_BIB_STYLE
\refitem cfg_latex_cmd_name LATEX_CMD_NAME \refitem cfg_latex_cmd_name LATEX_CMD_NAME
\refitem cfg_latex_extra_files LATEX_EXTRA_FILES
\refitem cfg_latex_footer LATEX_FOOTER \refitem cfg_latex_footer LATEX_FOOTER
\refitem cfg_latex_header LATEX_HEADER \refitem cfg_latex_header LATEX_HEADER
\refitem cfg_latex_hide_indices LATEX_HIDE_INDICES \refitem cfg_latex_hide_indices LATEX_HIDE_INDICES
...@@ -369,8 +374,8 @@ followed by the descriptions of the tags grouped by category. ...@@ -369,8 +374,8 @@ followed by the descriptions of the tags grouped by category.
The default language is English, other supported languages are: The default language is English, other supported languages are:
Afrikaans, Arabic, Brazilian, Catalan, Chinese, Croatian, Czech, Danish, Dutch, Afrikaans, Arabic, Brazilian, Catalan, Chinese, Croatian, Czech, Danish, Dutch,
Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean, Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean,
Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Latvian, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian,
Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, and Ukrainian. Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
\anchor cfg_brief_member_desc \anchor cfg_brief_member_desc
<dt>\c BRIEF_MEMBER_DESC <dd> <dt>\c BRIEF_MEMBER_DESC <dd>
...@@ -650,6 +655,16 @@ unions are shown inside the group in which they are included ...@@ -650,6 +655,16 @@ unions are shown inside the group in which they are included
or section (for LaTeX and RTF). Note that this feature does not work in or section (for LaTeX and RTF). Note that this feature does not work in
combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES". combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES".
\anchor cfg_inline_simple_structs
<dt>\c INLINE_SIMPLE_STRUCTS <dd>
\addindex INLINE_SIMPLE_STRUCTS
When the \c INLINE_SIMPLE_STRUCTS tag is set to \c YES, structs, classes, and
unions with only public data fields or simple typedef fields will be shown
inline in the documentation of the scope in which they are defined (i.e. file,
namespace, or group documentation), provided this scope is documented. If set
to NO (the default), structs, classes, and unions are shown on a separate
page (for HTML and Man pages) or section (for LaTeX and RTF).
\anchor cfg_typedef_hides_struct \anchor cfg_typedef_hides_struct
<dt>\c TYPEDEF_HIDES_STRUCT <dd> <dt>\c TYPEDEF_HIDES_STRUCT <dd>
\addindex TYPEDEF_HIDES_STRUCT \addindex TYPEDEF_HIDES_STRUCT
...@@ -2069,7 +2084,15 @@ EXTRA_PACKAGES = times ...@@ -2069,7 +2084,15 @@ EXTRA_PACKAGES = times
the generated latex document. The footer should contain everything after the generated latex document. The footer should contain everything after
the last chapter. If it is left blank doxygen will generate a the last chapter. If it is left blank doxygen will generate a
standard footer. Notice: only use this tag if you know what you are doing! standard footer. Notice: only use this tag if you know what you are doing!
\anchor cfg_latex_extra_files
<dt>\c LATEX_EXTRA_FILES <dd>
\addindex LATEX_EXTRA_FILES
The \c LATEX_EXTRA_FILES tag can be used to specify one or more extra images
or other source files which should be copied to the LaTeX output directory.
Note that the files will be copied as-is; there are no commands or markers
available.
\anchor cfg_pdf_hyperlinks \anchor cfg_pdf_hyperlinks
<dt>\c PDF_HYPERLINKS <dd> <dt>\c PDF_HYPERLINKS <dd>
\addindex PDF_HYPERLINKS \addindex PDF_HYPERLINKS
...@@ -2254,6 +2277,24 @@ EXTRA_PACKAGES = times ...@@ -2254,6 +2277,24 @@ EXTRA_PACKAGES = times
</dl> </dl>
\section docbook_output Docbook related options
\anchor cfg_generate_docbook
<dl>
<dt>\c GENERATE_DOCBOOK <dd>
\addindex GENERATE_DOCBOOK
If the \c GENERATE_DOCBOOK tag is set to \c YES Doxygen will generate Docbook files
that can be used to generate PDF.
\anchor cfg_docbook_output
<dt>\c DOCBOOK_OUTPUT <dd>
\addindex DOCBOOK_OUTPUT
The \c DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be put in
front of it. If left blank docbook will be used as the default path.
</dl>
\section autogen_output AUTOGEN_DEF related options \section autogen_output AUTOGEN_DEF related options
\anchor cfg_generate_autogen_def \anchor cfg_generate_autogen_def
<dl> <dl>
...@@ -2418,6 +2459,13 @@ EXTRA_PACKAGES = times ...@@ -2418,6 +2459,13 @@ EXTRA_PACKAGES = times
If the \c EXTERNAL_GROUPS tag is set to \c YES all external groups will be listed If the \c EXTERNAL_GROUPS tag is set to \c YES all external groups will be listed
in the modules index. If set to \c NO, only the current project's groups will in the modules index. If set to \c NO, only the current project's groups will
be listed. be listed.
\anchor cfg_external_pages
<dt>\c EXTERNAL_PAGES <dd>
\addindex EXTERNAL_PAGES
If the \c EXTERNAL_PAGES tag is set to \c YES all external pages will be listed
in the related pages index. If set to \c NO, only the current project's
pages will be listed.
\anchor cfg_perl_path \anchor cfg_perl_path
<dt>\c PERL_PATH <dd> <dt>\c PERL_PATH <dd>
......
...@@ -28,7 +28,7 @@ are supported (sorted alphabetically): ...@@ -28,7 +28,7 @@ are supported (sorted alphabetically):
Afrikaans, Arabic, Armenian, Brazilian Portuguese, Catalan, Chinese, Afrikaans, Arabic, Armenian, Brazilian Portuguese, Catalan, Chinese,
Chinese Traditional, Croatian, Czech, Danish, Dutch, English, Chinese Traditional, Croatian, Czech, Danish, Dutch, English,
Esperanto, Finnish, French, German, Greek, Hungarian, Indonesian, Esperanto, Finnish, French, German, Greek, Hungarian, Indonesian,
Italian, Japanese (+En), Korean (+En), Lithuanian, Macedonian, Italian, Japanese (+En), Korean (+En), Latvian, Lithuanian, Macedonian,
Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian,
SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian, SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian,
and Vietnamese.. and Vietnamese..
......
...@@ -96,6 +96,9 @@ Kim Taedong: fly1004 at gmail dot com ...@@ -96,6 +96,9 @@ Kim Taedong: fly1004 at gmail dot com
SooYoung Jung: jung5000 at gmail dot com SooYoung Jung: jung5000 at gmail dot com
Richard Kim: [unreachable] ryk at dspwiz dot com Richard Kim: [unreachable] ryk at dspwiz dot com
TranslatorLatvian
Lauris: lauris at nix.lv
TranslatorLithuanian TranslatorLithuanian
Tomas Simonaitis: [unreachable] haden at homelan dot lt Tomas Simonaitis: [unreachable] haden at homelan dot lt
Mindaugas Radzius: [unreachable] mindaugasradzius at takas dot lt Mindaugas Radzius: [unreachable] mindaugasradzius at takas dot lt
......
...@@ -8,9 +8,9 @@ distclean: clean ...@@ -8,9 +8,9 @@ distclean: clean
$(RM) -f Makefile.libmd5 libmd5.pro Makefile $(RM) -f Makefile.libmd5 libmd5.pro Makefile
tmake: tmake:
$(ENV) $(PERL) $(TMAKE) libmd5.pro >Makefile.libmd5 $(ENV) $(PERL) "$(TMAKE)" libmd5.pro >Makefile.libmd5
Makefile.libmd5: libmd5.pro Makefile.libmd5: libmd5.pro
$(ENV) $(PERL) $(TMAKE) libmd5.pro >Makefile.libmd5 $(ENV) $(PERL) "$(TMAKE)" libmd5.pro >Makefile.libmd5
install: install:
# Doxyfile 1.8.3 # Doxyfile 1.8.3.1
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Project related configuration options # Project related configuration options
...@@ -87,7 +87,7 @@ CITE_BIB_FILES = ...@@ -87,7 +87,7 @@ CITE_BIB_FILES =
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# configuration options related to warning and progress messages # configuration options related to warning and progress messages
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
QUIET = YES QUIET = NO
WARNINGS = YES WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES WARN_IF_DOC_ERROR = YES
...@@ -186,8 +186,9 @@ MATHJAX_EXTENSIONS = ...@@ -186,8 +186,9 @@ MATHJAX_EXTENSIONS =
SEARCHENGINE = YES SEARCHENGINE = YES
SERVER_BASED_SEARCH = NO SERVER_BASED_SEARCH = NO
EXTERNAL_SEARCH = NO EXTERNAL_SEARCH = NO
SEARCHENGINE_URL = SEARCHENGINE_URL =
SEARCHDATA_FILE = searchdata.xml SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
EXTRA_SEARCH_MAPPINGS = EXTRA_SEARCH_MAPPINGS =
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# configuration options related to the LaTeX output # configuration options related to the LaTeX output
...@@ -201,6 +202,7 @@ PAPER_TYPE = a4wide ...@@ -201,6 +202,7 @@ PAPER_TYPE = a4wide
EXTRA_PACKAGES = EXTRA_PACKAGES =
LATEX_HEADER = LATEX_HEADER =
LATEX_FOOTER = LATEX_FOOTER =
LATEX_EXTRA_FILES =
PDF_HYPERLINKS = YES PDF_HYPERLINKS = YES
USE_PDFLATEX = YES USE_PDFLATEX = YES
LATEX_BATCHMODE = NO LATEX_BATCHMODE = NO
...@@ -232,6 +234,11 @@ XML_SCHEMA = ...@@ -232,6 +234,11 @@ XML_SCHEMA =
XML_DTD = XML_DTD =
XML_PROGRAMLISTING = YES XML_PROGRAMLISTING = YES
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK = YES
DOCBOOK_OUTPUT = docbook
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output # configuration options for the AutoGen Definitions output
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO GENERATE_AUTOGEN_DEF = NO
...@@ -261,6 +268,7 @@ TAGFILES = ...@@ -261,6 +268,7 @@ TAGFILES =
GENERATE_TAGFILE = ../qtools_docs/qtools.tag GENERATE_TAGFILE = ../qtools_docs/qtools.tag
ALLEXTERNALS = NO ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES EXTERNAL_GROUPS = YES
EXTERNAL_PAGES = YES
PERL_PATH = /usr/bin/perl PERL_PATH = /usr/bin/perl
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the dot tool # Configuration options related to the dot tool
...@@ -268,7 +276,7 @@ PERL_PATH = /usr/bin/perl ...@@ -268,7 +276,7 @@ PERL_PATH = /usr/bin/perl
CLASS_DIAGRAMS = NO CLASS_DIAGRAMS = NO
MSCGEN_PATH = MSCGEN_PATH =
HIDE_UNDOC_RELATIONS = YES HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = NO HAVE_DOT = YES
DOT_NUM_THREADS = 0 DOT_NUM_THREADS = 0
DOT_FONTNAME = DOT_FONTNAME =
DOT_FONTSIZE = 10 DOT_FONTSIZE = 10
......
...@@ -17,10 +17,10 @@ all: Makefile.qtools Makefile ...@@ -17,10 +17,10 @@ all: Makefile.qtools Makefile
$(MAKE) -f Makefile.qtools $@ $(MAKE) -f Makefile.qtools $@
Makefile.qtools: qtools.pro Makefile.qtools: qtools.pro
$(ENV) $(PERL) $(TMAKE) qtools.pro >Makefile.qtools $(ENV) $(PERL) "$(TMAKE)" qtools.pro >Makefile.qtools
tmake: tmake:
$(ENV) $(PERL) $(TMAKE) qtools.pro >Makefile.qtools $(ENV) $(PERL) "$(TMAKE)" qtools.pro >Makefile.qtools
clean: Makefile.qtools clean: Makefile.qtools
$(MAKE) -f Makefile.qtools clean $(MAKE) -f Makefile.qtools clean
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
#include <dos.h> #include <dos.h>
#elif defined(_OS_OS2_) #elif defined(_OS_OS2_)
#include <os2.h> #include <os2.h>
#elif defined(_OS_UNIX_) #elif defined(_OS_UNIX_) || defined(_OS_MAC_)
#include <sys/time.h> #include <sys/time.h>
#include <unistd.h> #include <unistd.h>
#undef gettimeofday #undef gettimeofday
...@@ -893,7 +893,7 @@ bool QTime::currentTime( QTime *ct ) ...@@ -893,7 +893,7 @@ bool QTime::currentTime( QTime *ct )
t.second*1000 + t.hsecond*10; t.second*1000 + t.hsecond*10;
return (t.hour== 0 && t.minute == 0); return (t.hour== 0 && t.minute == 0);
#elif defined(_OS_UNIX_) #elif defined(_OS_UNIX_) || defined(_OS_MAC_)
struct timeval tv; struct timeval tv;
gettimeofday( &tv, 0 ); gettimeofday( &tv, 0 );
......
...@@ -20,18 +20,18 @@ all: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen Makefile ...@@ -20,18 +20,18 @@ all: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen Makefile
$(MAKE) -f Makefile.doxygen PERL=$(PERL) $@ $(MAKE) -f Makefile.doxygen PERL=$(PERL) $@
Makefile.libdoxygen: libdoxygen.pro libdoxygen.t Makefile.libdoxygen: libdoxygen.pro libdoxygen.t
$(ENV) $(PERL) $(TMAKE) libdoxygen.pro >Makefile.libdoxygen $(ENV) $(PERL) "$(TMAKE)" libdoxygen.pro >Makefile.libdoxygen
Makefile.libdoxycfg: libdoxycfg.pro libdoxycfg.t Makefile.libdoxycfg: libdoxycfg.pro libdoxycfg.t
$(ENV) $(PERL) $(TMAKE) libdoxycfg.pro >Makefile.libdoxycfg $(ENV) $(PERL) "$(TMAKE)" libdoxycfg.pro >Makefile.libdoxycfg
Makefile.doxygen: doxygen.pro Makefile.doxygen: doxygen.pro
$(ENV) $(PERL) $(TMAKE) doxygen.pro >Makefile.doxygen $(ENV) $(PERL) "$(TMAKE)" doxygen.pro >Makefile.doxygen
tmake: tmake:
$(ENV) $(PERL) $(TMAKE) libdoxygen.pro >Makefile.libdoxygen $(ENV) $(PERL) "$(TMAKE)" libdoxygen.pro >Makefile.libdoxygen
$(ENV) $(PERL) $(TMAKE) libdoxycfg.pro >Makefile.libdoxycfg $(ENV) $(PERL) "$(TMAKE)" libdoxycfg.pro >Makefile.libdoxycfg
$(ENV) $(PERL) $(TMAKE) doxygen.pro >Makefile.doxygen $(ENV) $(PERL) "$(TMAKE)" doxygen.pro >Makefile.doxygen
# clean objects # clean objects
clean: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen clean: Makefile.libdoxygen Makefile.libdoxycfg Makefile.doxygen
......
...@@ -277,11 +277,11 @@ ClassDefImpl::~ClassDefImpl() ...@@ -277,11 +277,11 @@ ClassDefImpl::~ClassDefImpl()
// constructs a new class definition // constructs a new class definition
ClassDef::ClassDef( ClassDef::ClassDef(
const char *defFileName,int defLine, const char *defFileName,int defLine,int defColumn,
const char *nm,CompoundType ct, const char *nm,CompoundType ct,
const char *lref,const char *fName, const char *lref,const char *fName,
bool isSymbol,bool isJavaEnum) bool isSymbol,bool isJavaEnum)
: Definition(defFileName,defLine,removeRedundantWhiteSpace(nm),0,0,isSymbol) : Definition(defFileName,defLine,defColumn,removeRedundantWhiteSpace(nm),0,0,isSymbol)
{ {
visited=FALSE; visited=FALSE;
setReference(lref); setReference(lref);
...@@ -535,6 +535,7 @@ void ClassDef::internalInsertMember(MemberDef *md, ...@@ -535,6 +535,7 @@ void ClassDef::internalInsertMember(MemberDef *md,
break; break;
case Public: case Public:
addMemberToList(MemberListType_pubTypes,md,TRUE); addMemberToList(MemberListType_pubTypes,md,TRUE);
isSimple=QCString(md->typeString()).find(")(")==-1;
break; break;
case Private: case Private:
addMemberToList(MemberListType_priTypes,md,TRUE); addMemberToList(MemberListType_priTypes,md,TRUE);
...@@ -3491,7 +3492,7 @@ Definition *ClassDef::findInnerCompound(const char *name) ...@@ -3491,7 +3492,7 @@ Definition *ClassDef::findInnerCompound(const char *name)
//} //}
ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName, ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName,
int startLine, const QCString &templSpec,bool &freshInstance) int startLine, int startColumn, const QCString &templSpec,bool &freshInstance)
{ {
freshInstance = FALSE; freshInstance = FALSE;
if (m_impl->templateInstances==0) if (m_impl->templateInstances==0)
...@@ -3503,7 +3504,7 @@ ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName, ...@@ -3503,7 +3504,7 @@ ClassDef *ClassDef::insertTemplateInstance(const QCString &fileName,
{ {
Debug::print(Debug::Classes,0," New template instance class `%s'`%s'\n",name().data(),templSpec.data()); Debug::print(Debug::Classes,0," New template instance class `%s'`%s'\n",name().data(),templSpec.data());
templateClass = new ClassDef( templateClass = new ClassDef(
fileName,startLine,localName()+templSpec,ClassDef::Class); fileName,startLine,startColumn,localName()+templSpec,ClassDef::Class);
templateClass->setTemplateMaster(this); templateClass->setTemplateMaster(this);
templateClass->setOuterScope(getOuterScope()); templateClass->setOuterScope(getOuterScope());
templateClass->setHidden(isHidden()); templateClass->setHidden(isHidden());
...@@ -3524,7 +3525,7 @@ ClassDef *ClassDef::getVariableInstance(const char *templSpec) ...@@ -3524,7 +3525,7 @@ ClassDef *ClassDef::getVariableInstance(const char *templSpec)
if (templateClass==0) if (templateClass==0)
{ {
Debug::print(Debug::Classes,0," New template variable instance class `%s'`%s'\n",qPrint(name()),qPrint(templSpec)); Debug::print(Debug::Classes,0," New template variable instance class `%s'`%s'\n",qPrint(name()),qPrint(templSpec));
templateClass = new ClassDef("<code>",1,name()+templSpec, templateClass = new ClassDef("<code>",1,1,name()+templSpec,
ClassDef::Class,0,0,FALSE); ClassDef::Class,0,0,FALSE);
templateClass->addMembersToTemplateInstance( this, templSpec ); templateClass->addMembersToTemplateInstance( this, templSpec );
templateClass->setTemplateMaster(this); templateClass->setTemplateMaster(this);
......
...@@ -69,6 +69,8 @@ class ClassDef : public Definition ...@@ -69,6 +69,8 @@ class ClassDef : public Definition
* found. * found.
* \param startLine line number where the definition of this compound * \param startLine line number where the definition of this compound
* starts. * starts.
* \param startColumn column number where the definition of this compound
* starts.
* \param name the name of this compound (including scope) * \param name the name of this compound (including scope)
* \param ct the kind of Compound * \param ct the kind of Compound
* \param ref the tag file from which this compound is extracted * \param ref the tag file from which this compound is extracted
...@@ -82,7 +84,7 @@ class ClassDef : public Definition ...@@ -82,7 +84,7 @@ class ClassDef : public Definition
* I didn't add this to CompoundType to avoid having * I didn't add this to CompoundType to avoid having
* to adapt all translators. * to adapt all translators.
*/ */
ClassDef(const char *fileName,int startLine, ClassDef(const char *fileName,int startLine,int startColumn,
const char *name,CompoundType ct, const char *name,CompoundType ct,
const char *ref=0,const char *fName=0, const char *ref=0,const char *fName=0,
bool isSymbol=TRUE,bool isJavaEnum=FALSE); bool isSymbol=TRUE,bool isJavaEnum=FALSE);
...@@ -310,7 +312,7 @@ class ClassDef : public Definition ...@@ -310,7 +312,7 @@ class ClassDef : public Definition
void setProtection(Protection p); void setProtection(Protection p);
void setGroupDefForAllMembers(GroupDef *g,Grouping::GroupPri_t pri,const QCString &fileName,int startLine,bool hasDocs); void setGroupDefForAllMembers(GroupDef *g,Grouping::GroupPri_t pri,const QCString &fileName,int startLine,bool hasDocs);
void addInnerCompound(Definition *d); void addInnerCompound(Definition *d);
ClassDef *insertTemplateInstance(const QCString &fileName,int startLine, ClassDef *insertTemplateInstance(const QCString &fileName,int startLine,int startColumn,
const QCString &templSpec,bool &freshInstance); const QCString &templSpec,bool &freshInstance);
void addUsedClass(ClassDef *cd,const char *accessName,Protection prot); void addUsedClass(ClassDef *cd,const char *accessName,Protection prot);
void addUsedByClass(ClassDef *cd,const char *accessName,Protection prot); void addUsedByClass(ClassDef *cd,const char *accessName,Protection prot);
......
...@@ -129,6 +129,8 @@ CommandMap cmdMap[] = ...@@ -129,6 +129,8 @@ CommandMap cmdMap[] =
{ "rtfonly", CMD_RTFONLY }, { "rtfonly", CMD_RTFONLY },
{ "endrtfonly", CMD_ENDRTFONLY }, { "endrtfonly", CMD_ENDRTFONLY },
{ "vhdlflow", CMD_VHDLFLOW }, { "vhdlflow", CMD_VHDLFLOW },
{ "docbookonly", CMD_DBONLY },
{ "enddocbookonly",CMD_ENDDBONLY },
{ 0, 0 }, { 0, 0 },
}; };
......
...@@ -118,7 +118,9 @@ enum CommandType ...@@ -118,7 +118,9 @@ enum CommandType
CMD_RTFONLY = 88, CMD_RTFONLY = 88,
CMD_ENDRTFONLY = 89, CMD_ENDRTFONLY = 89,
CMD_PIPE = 90, CMD_PIPE = 90,
CMD_VHDLFLOW = 91 CMD_VHDLFLOW = 91,
CMD_DBONLY = 92,
CMD_ENDDBONLY = 93
}; };
enum HtmlTagType enum HtmlTagType
......
This diff is collapsed.
...@@ -443,7 +443,7 @@ void replaceComment(int offset); ...@@ -443,7 +443,7 @@ void replaceComment(int offset);
g_lastCommentContext = YY_START; g_lastCommentContext = YY_START;
BEGIN(Verbatim); BEGIN(Verbatim);
} }
<CComment,ReadLine>[\\@]("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"rtfonly"|"manonly")/[^a-z_A-Z0-9] { /* start of a verbatim block */ <CComment,ReadLine>[\\@]("verbatim"|"latexonly"|"htmlonly"|"xmlonly"|"docbookonly"|"rtfonly"|"manonly")/[^a-z_A-Z0-9] { /* start of a verbatim block */
copyToOutput(yytext,(int)yyleng); copyToOutput(yytext,(int)yyleng);
g_blockName=&yytext[1]; g_blockName=&yytext[1];
g_lastCommentContext = YY_START; g_lastCommentContext = YY_START;
...@@ -452,7 +452,7 @@ void replaceComment(int offset); ...@@ -452,7 +452,7 @@ void replaceComment(int offset);
<Scan>. { /* any ather character */ <Scan>. { /* any ather character */
copyToOutput(yytext,(int)yyleng); copyToOutput(yytext,(int)yyleng);
} }
<Verbatim>[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"f$"|"f]"|"f}") { /* end of verbatim block */ <Verbatim>[\\@]("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"docbookonly"|"endrtfonly"|"endmanonly"|"f$"|"f]"|"f}") { /* end of verbatim block */
copyToOutput(yytext,(int)yyleng); copyToOutput(yytext,(int)yyleng);
if (yytext[1]=='f') // end of formula if (yytext[1]=='f') // end of formula
{ {
......
...@@ -180,6 +180,7 @@ static DocCmdMap docCmdMap[] = ...@@ -180,6 +180,7 @@ static DocCmdMap docCmdMap[] =
{ "latexonly", &handleFormatBlock, FALSE }, { "latexonly", &handleFormatBlock, FALSE },
{ "htmlonly", &handleFormatBlock, FALSE }, { "htmlonly", &handleFormatBlock, FALSE },
{ "xmlonly", &handleFormatBlock, FALSE }, { "xmlonly", &handleFormatBlock, FALSE },
{ "docbookonly", &handleFormatBlock, FALSE },
{ "rtfonly", &handleFormatBlock, FALSE }, { "rtfonly", &handleFormatBlock, FALSE },
{ "manonly", &handleFormatBlock, FALSE }, { "manonly", &handleFormatBlock, FALSE },
{ "dot", &handleFormatBlock, TRUE }, { "dot", &handleFormatBlock, TRUE },
...@@ -314,6 +315,7 @@ class DocCmdMapper ...@@ -314,6 +315,7 @@ class DocCmdMapper
DocCmdMapper *DocCmdMapper::s_instance=0; DocCmdMapper *DocCmdMapper::s_instance=0;
bool inInternalDocs = FALSE;
#define YY_NEVER_INTERACTIVE 1 #define YY_NEVER_INTERACTIVE 1
...@@ -1018,9 +1020,11 @@ RCSTAG "$"{ID}":"[^\n$]+"$" ...@@ -1018,9 +1020,11 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
BEGIN(HtmlComment); BEGIN(HtmlComment);
} }
<Comment>{B}*{CMD}"endinternal"{B}* { <Comment>{B}*{CMD}"endinternal"{B}* {
warn(yyFileName,yyLineNr, if (!inInternalDocs)
warn(yyFileName,yyLineNr,
"warning: found \\endinternal without matching \\internal" "warning: found \\endinternal without matching \\internal"
); );
inInternalDocs = FALSE;
} }
<Comment>{B}*{CMD}[a-z_A-Z]+{B}* { // potentially interesting command <Comment>{B}*{CMD}[a-z_A-Z]+{B}* { // potentially interesting command
// the {B}* in the front was added for bug620924 // the {B}* in the front was added for bug620924
...@@ -1693,7 +1697,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$" ...@@ -1693,7 +1697,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
/* ----- handle arguments of the preformatted block commands ------- */ /* ----- handle arguments of the preformatted block commands ------- */
<FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode"|"endmsc"|"endvhdlflow")/{NW} { // possible ends <FormatBlock>{CMD}("endverbatim"|"endlatexonly"|"endhtmlonly"|"endxmlonly"|"enddocbookonly"|"endrtfonly"|"endmanonly"|"enddot"|"endcode"|"endmsc"|"endvhdlflow")/{NW} { // possible ends
addOutput(yytext); addOutput(yytext);
if (&yytext[4]==blockName) // found end of the block if (&yytext[4]==blockName) // found end of the block
{ {
...@@ -2569,6 +2573,7 @@ static bool handleInternal(const QCString &) ...@@ -2569,6 +2573,7 @@ static bool handleInternal(const QCString &)
{ {
// re-enabled for bug640828 // re-enabled for bug640828
addOutput("\\internal "); addOutput("\\internal ");
inInternalDocs = TRUE;
} }
return FALSE; return FALSE;
} }
......
...@@ -279,6 +279,7 @@ ...@@ -279,6 +279,7 @@
<xsd:complexType name="locationType"> <xsd:complexType name="locationType">
<xsd:attribute name="file" type="xsd:string" /> <xsd:attribute name="file" type="xsd:string" />
<xsd:attribute name="line" type="xsd:integer" /> <xsd:attribute name="line" type="xsd:integer" />
<xsd:attribute name="column" type="xsd:integer" use="optional"/>
<xsd:attribute name="bodyfile" type="xsd:string" /> <xsd:attribute name="bodyfile" type="xsd:string" />
<xsd:attribute name="bodystart" type="xsd:integer" /> <xsd:attribute name="bodystart" type="xsd:integer" />
<xsd:attribute name="bodyend" type="xsd:integer" /> <xsd:attribute name="bodyend" type="xsd:integer" />
......
...@@ -279,6 +279,7 @@ ...@@ -279,6 +279,7 @@
" <xsd:complexType name=\"locationType\">\n" " <xsd:complexType name=\"locationType\">\n"
" <xsd:attribute name=\"file\" type=\"xsd:string\" />\n" " <xsd:attribute name=\"file\" type=\"xsd:string\" />\n"
" <xsd:attribute name=\"line\" type=\"xsd:integer\" />\n" " <xsd:attribute name=\"line\" type=\"xsd:integer\" />\n"
" <xsd:attribute name=\"column\" type=\"xsd:integer\" use=\"optional\"/>\n"
" <xsd:attribute name=\"bodyfile\" type=\"xsd:string\" />\n" " <xsd:attribute name=\"bodyfile\" type=\"xsd:string\" />\n"
" <xsd:attribute name=\"bodystart\" type=\"xsd:integer\" />\n" " <xsd:attribute name=\"bodystart\" type=\"xsd:integer\" />\n"
" <xsd:attribute name=\"bodyend\" type=\"xsd:integer\" />\n" " <xsd:attribute name=\"bodyend\" type=\"xsd:integer\" />\n"
......
...@@ -49,7 +49,7 @@ The default language is English, other supported languages are: ...@@ -49,7 +49,7 @@ The default language is English, other supported languages are:
Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian, Persian,
Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,
Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
'> '>
...@@ -76,6 +76,7 @@ Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. ...@@ -76,6 +76,7 @@ Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
<value name='Japanese-en'/> <value name='Japanese-en'/>
<value name='Korean'/> <value name='Korean'/>
<value name='Korean-en'/> <value name='Korean-en'/>
<value name='Latvian'/>
<value name='Norwegian'/> <value name='Norwegian'/>
<value name='Macedonian'/> <value name='Macedonian'/>
<value name='Persian'/> <value name='Persian'/>
...@@ -312,11 +313,12 @@ section (for LaTeX and RTF). ...@@ -312,11 +313,12 @@ section (for LaTeX and RTF).
' defval='0'/> ' defval='0'/>
<option type='bool' id='INLINE_SIMPLE_STRUCTS' docs=' <option type='bool' id='INLINE_SIMPLE_STRUCTS' docs='
When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
unions with only public data fields will be shown inline in the documentation unions with only public data fields or simple typedef fields will be shown
of the scope in which they are defined (i.e. file, namespace, or group inline in the documentation of the scope in which they are defined (i.e. file,
documentation), provided this scope is documented. If set to NO (the default), namespace, or group documentation), provided this scope is documented. If set
structs, classes, and unions are shown on a separate page (for HTML and Man to NO (the default), structs, classes, and unions are shown on a separate
pages) or section (for LaTeX and RTF).' defval='0'/> page (for HTML and Man pages) or section (for LaTeX and RTF).
' defval='0'/>
<option type='bool' id='TYPEDEF_HIDES_STRUCT' docs=' <option type='bool' id='TYPEDEF_HIDES_STRUCT' docs='
When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
is documented as struct, union, or enum with the name of the typedef. So is documented as struct, union, or enum with the name of the typedef. So
...@@ -882,7 +884,7 @@ the output directory. ...@@ -882,7 +884,7 @@ the output directory.
The HTML_EXTRA_FILES tag can be used to specify one or more extra images or The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
other source files which should be copied to the HTML output directory. Note other source files which should be copied to the HTML output directory. Note
that these files will be copied to the base HTML output directory. Use the that these files will be copied to the base HTML output directory. Use the
$relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
files. In the HTML_STYLESHEET file, use the file name only. Also note that files. In the HTML_STYLESHEET file, use the file name only. Also note that
the files will be copied as-is; there are no commands or markers available. the files will be copied as-is; there are no commands or markers available.
' depends='GENERATE_HTML'/> ' depends='GENERATE_HTML'/>
...@@ -1246,6 +1248,12 @@ the generated latex document. The footer should contain everything after ...@@ -1246,6 +1248,12 @@ the generated latex document. The footer should contain everything after
the last chapter. If it is left blank doxygen will generate a the last chapter. If it is left blank doxygen will generate a
standard footer. Notice: only use this tag if you know what you are doing! standard footer. Notice: only use this tag if you know what you are doing!
' defval='' depends='GENERATE_LATEX'/> ' defval='' depends='GENERATE_LATEX'/>
<option type='list' id='LATEX_EXTRA_FILES' format='file' docs='
The LATEX_EXTRA_FILES tag can be used to specify one or more extra images
or other source files which should be copied to the LaTeX output directory.
Note that the files will be copied as-is; there are no commands or markers
available.
' depends='GENERATE_LATEX'/>
<option type='bool' id='PDF_HYPERLINKS' docs=' <option type='bool' id='PDF_HYPERLINKS' docs='
If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
is prepared for conversion to pdf (using ps2pdf). The pdf file will is prepared for conversion to pdf (using ps2pdf). The pdf file will
...@@ -1363,6 +1371,17 @@ dump the program listings (including syntax highlighting ...@@ -1363,6 +1371,17 @@ dump the program listings (including syntax highlighting
and cross-referencing information) to the XML output. Note that and cross-referencing information) to the XML output. Note that
enabling this will significantly increase the size of the XML output. enabling this will significantly increase the size of the XML output.
' defval='1' depends='GENERATE_XML'/> ' defval='1' depends='GENERATE_XML'/>
</group>
<group name='DOCBOOK' docs='configuration options related to the DOCBOOK output'>
<option type='bool' id='GENERATE_DOCBOOK' docs='
If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files
that can be used to generate PDF.
' defval='0'/>
<option type='string' id='DOCBOOK_OUTPUT' format='dir' docs='
The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.
If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
front of it. If left blank docbook will be used as the default path.
' defval='docbook' depends='GENERATE_DOCBOOK'/>
</group> </group>
<group name='DEF' docs='configuration options for the AutoGen Definitions output'> <group name='DEF' docs='configuration options for the AutoGen Definitions output'>
<option type='bool' id='GENERATE_AUTOGEN_DEF' docs=' <option type='bool' id='GENERATE_AUTOGEN_DEF' docs='
...@@ -1373,6 +1392,19 @@ documentation. Note that this feature is still experimental ...@@ -1373,6 +1392,19 @@ documentation. Note that this feature is still experimental
and incomplete at the moment. and incomplete at the moment.
' defval='0'/> ' defval='0'/>
</group> </group>
<!--
<group name='Sqlite3' docs='configuration options related to Sqlite3 output'>
<option type='bool' id='GENERATE_SQLITE3' docs='
If the GENERATE_SQLITE3 tag is set to YES doxygen will generate an
sqlite database with symbols found by doxygen stored in tables.
' defval='0'/>
<option type='string' id='SQLITE3_OUTPUT' format='dir' docs='
The SQLITE3_OUTPUT tag is used to specify where the Sqlite3 database will be put.
If a relative path is entered the value of OUTPUT_DIRECTORY will be
put in front of it. If left blank sqlite3 will be used as the default path.
' defval='' depends='GENERATE_SQLITE3'/>
</group>
-->
<group name='PerlMod' docs='configuration options related to the Perl module output'> <group name='PerlMod' docs='configuration options related to the Perl module output'>
<option type='bool' id='GENERATE_PERLMOD' docs=' <option type='bool' id='GENERATE_PERLMOD' docs='
If the GENERATE_PERLMOD tag is set to YES Doxygen will If the GENERATE_PERLMOD tag is set to YES Doxygen will
...@@ -1485,6 +1517,11 @@ will be listed. ...@@ -1485,6 +1517,11 @@ will be listed.
If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
in the modules index. If set to NO, only the current project&apos;s groups will in the modules index. If set to NO, only the current project&apos;s groups will
be listed. be listed.
' defval='1'/>
<option type='bool' id='EXTERNAL_PAGES' docs='
If the EXTERNAL_PAGES tag is set to YES all external pages will be listed
in the related pages index. If set to NO, only the current project&apos;s
pages will be listed.
' defval='1'/> ' defval='1'/>
<option type='string' id='PERL_PATH' format='dir' docs=' <option type='string' id='PERL_PATH' format='dir' docs='
The PERL_PATH should be the absolute path and name of the perl script The PERL_PATH should be the absolute path and name of the perl script
......
...@@ -90,7 +90,7 @@ void addConfigOptions(Config *cfg) ...@@ -90,7 +90,7 @@ void addConfigOptions(Config *cfg)
"Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,\n" "Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,\n"
"Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,\n" "Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,\n"
"Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English\n" "Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English\n"
"messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,\n" "messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian, Persian,\n"
"Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,\n" "Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,\n"
"Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.", "Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.",
"English" "English"
...@@ -118,6 +118,7 @@ void addConfigOptions(Config *cfg) ...@@ -118,6 +118,7 @@ void addConfigOptions(Config *cfg)
ce->addValue("Japanese-en"); ce->addValue("Japanese-en");
ce->addValue("Korean"); ce->addValue("Korean");
ce->addValue("Korean-en"); ce->addValue("Korean-en");
ce->addValue("Latvian");
ce->addValue("Norwegian"); ce->addValue("Norwegian");
ce->addValue("Macedonian"); ce->addValue("Macedonian");
ce->addValue("Persian"); ce->addValue("Persian");
...@@ -440,11 +441,11 @@ void addConfigOptions(Config *cfg) ...@@ -440,11 +441,11 @@ void addConfigOptions(Config *cfg)
cb = cfg->addBool( cb = cfg->addBool(
"INLINE_SIMPLE_STRUCTS", "INLINE_SIMPLE_STRUCTS",
"When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and\n" "When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and\n"
"unions with only public data fields will be shown inline in the documentation\n" "unions with only public data fields or simple typedef fields will be shown\n"
"of the scope in which they are defined (i.e. file, namespace, or group\n" "inline in the documentation of the scope in which they are defined (i.e. file,\n"
"documentation), provided this scope is documented. If set to NO (the default),\n" "namespace, or group documentation), provided this scope is documented. If set\n"
"structs, classes, and unions are shown on a separate page (for HTML and Man\n" "to NO (the default), structs, classes, and unions are shown on a separate\n"
"pages) or section (for LaTeX and RTF).", "page (for HTML and Man pages) or section (for LaTeX and RTF).",
FALSE FALSE
); );
//---- //----
...@@ -1261,7 +1262,7 @@ void addConfigOptions(Config *cfg) ...@@ -1261,7 +1262,7 @@ void addConfigOptions(Config *cfg)
"The HTML_EXTRA_FILES tag can be used to specify one or more extra images or\n" "The HTML_EXTRA_FILES tag can be used to specify one or more extra images or\n"
"other source files which should be copied to the HTML output directory. Note\n" "other source files which should be copied to the HTML output directory. Note\n"
"that these files will be copied to the base HTML output directory. Use the\n" "that these files will be copied to the base HTML output directory. Use the\n"
"$relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n" "$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n"
"files. In the HTML_STYLESHEET file, use the file name only. Also note that\n" "files. In the HTML_STYLESHEET file, use the file name only. Also note that\n"
"the files will be copied as-is; there are no commands or markers available." "the files will be copied as-is; there are no commands or markers available."
); );
...@@ -1835,6 +1836,16 @@ void addConfigOptions(Config *cfg) ...@@ -1835,6 +1836,16 @@ void addConfigOptions(Config *cfg)
cs->setWidgetType(ConfigString::File); cs->setWidgetType(ConfigString::File);
cs->addDependency("GENERATE_LATEX"); cs->addDependency("GENERATE_LATEX");
//---- //----
cl = cfg->addList(
"LATEX_EXTRA_FILES",
"The LATEX_EXTRA_FILES tag can be used to specify one or more extra images\n"
"or other source files which should be copied to the LaTeX output directory.\n"
"Note that the files will be copied as-is; there are no commands or markers\n"
"available."
);
cl->addDependency("GENERATE_LATEX");
cl->setWidgetType(ConfigList::File);
//----
cb = cfg->addBool( cb = cfg->addBool(
"PDF_HYPERLINKS", "PDF_HYPERLINKS",
"If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated\n" "If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated\n"
...@@ -2039,6 +2050,27 @@ void addConfigOptions(Config *cfg) ...@@ -2039,6 +2050,27 @@ void addConfigOptions(Config *cfg)
); );
cb->addDependency("GENERATE_XML"); cb->addDependency("GENERATE_XML");
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
cfg->addInfo("DOCBOOK","configuration options related to the DOCBOOK output");
//---------------------------------------------------------------------------
//----
cb = cfg->addBool(
"GENERATE_DOCBOOK",
"If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files\n"
"that can be used to generate PDF.",
FALSE
);
//----
cs = cfg->addString(
"DOCBOOK_OUTPUT",
"The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.\n"
"If a relative path is entered the value of OUTPUT_DIRECTORY will be put in\n"
"front of it. If left blank docbook will be used as the default path."
);
cs->setDefaultValue("docbook");
cs->setWidgetType(ConfigString::Dir);
cs->addDependency("GENERATE_DOCBOOK");
//---------------------------------------------------------------------------
cfg->addInfo("DEF","configuration options for the AutoGen Definitions output"); cfg->addInfo("DEF","configuration options for the AutoGen Definitions output");
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
...@@ -2231,6 +2263,14 @@ void addConfigOptions(Config *cfg) ...@@ -2231,6 +2263,14 @@ void addConfigOptions(Config *cfg)
TRUE TRUE
); );
//---- //----
cb = cfg->addBool(
"EXTERNAL_PAGES",
"If the EXTERNAL_PAGES tag is set to YES all external pages will be listed\n"
"in the related pages index. If set to NO, only the current project's\n"
"pages will be listed.",
TRUE
);
//----
cs = cfg->addString( cs = cfg->addString(
"PERL_PATH", "PERL_PATH",
"The PERL_PATH should be the absolute path and name of the perl script\n" "The PERL_PATH should be the absolute path and name of the perl script\n"
......
...@@ -22,6 +22,7 @@ Define::Define() ...@@ -22,6 +22,7 @@ Define::Define()
{ {
fileDef=0; fileDef=0;
lineNr=1; lineNr=1;
columnNr=1;
nargs=-1; nargs=-1;
undef=FALSE; undef=FALSE;
varArgs=FALSE; varArgs=FALSE;
...@@ -34,6 +35,7 @@ Define::Define(const Define &d) ...@@ -34,6 +35,7 @@ Define::Define(const Define &d)
{ {
//name=d.name; definition=d.definition; fileName=d.fileName; //name=d.name; definition=d.definition; fileName=d.fileName;
lineNr=d.lineNr; lineNr=d.lineNr;
lineNr=d.columnNr;
nargs=d.nargs; nargs=d.nargs;
undef=d.undef; undef=d.undef;
varArgs=d.varArgs; varArgs=d.varArgs;
......
...@@ -40,6 +40,7 @@ class Define ...@@ -40,6 +40,7 @@ class Define
QCString anchor; QCString anchor;
FileDef *fileDef; FileDef *fileDef;
int lineNr; int lineNr;
int columnNr;
int nargs; int nargs;
bool undef; bool undef;
bool varArgs; bool varArgs;
......
...@@ -277,12 +277,13 @@ void Definition::removeFromMap(Definition *d) ...@@ -277,12 +277,13 @@ void Definition::removeFromMap(Definition *d)
} }
} }
Definition::Definition(const char *df,int dl, Definition::Definition(const char *df,int dl,int dc,
const char *name,const char *b, const char *name,const char *b,
const char *d,bool isSymbol) const char *d,bool isSymbol)
{ {
m_name = name; m_name = name;
m_defLine = dl; m_defLine = dl;
m_defColumn = dc;
m_impl = new DefinitionImpl; m_impl = new DefinitionImpl;
m_impl->init(df,name); m_impl->init(df,name);
m_isSymbol = isSymbol; m_isSymbol = isSymbol;
...@@ -1031,13 +1032,6 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName) ...@@ -1031,13 +1032,6 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
MemberDef *thisMd = 0; MemberDef *thisMd = 0;
if (definitionType()==TypeMember) thisMd = (MemberDef *)this; if (definitionType()==TypeMember) thisMd = (MemberDef *)this;
// vhdl parser can' t start at an arbitrary point in the source code
if (getLanguage()==SrcLangExt_VHDL)
{
if (thisMd) VhdlDocGen::writeCodeFragment(ol,actualStart,codeFragment,thisMd);
return;
}
ol.startCodeFragment(); ol.startCodeFragment();
pIntf->parseCode(ol, // codeOutIntf pIntf->parseCode(ol, // codeOutIntf
scopeName, // scope scopeName, // scope
...@@ -1226,18 +1220,26 @@ bool Definition::hasUserDocumentation() const ...@@ -1226,18 +1220,26 @@ bool Definition::hasUserDocumentation() const
return hasDocs; return hasDocs;
} }
void Definition::addSourceReferencedBy(MemberDef *md)
void Definition::addSourceReferencedBy(MemberDef *md, const char *floc/*=NULL*/)
{ {
QCString name ;
QCString scope = md->getScopeString();
if (floc)
name = floc;
else
{
name = md->name();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
}
if (md) if (md)
{ {
makeResident(); makeResident();
QCString name = md->name();
QCString scope = md->getScopeString();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
if (m_impl->sourceRefByDict==0) if (m_impl->sourceRefByDict==0)
{ {
...@@ -1250,19 +1252,32 @@ void Definition::addSourceReferencedBy(MemberDef *md) ...@@ -1250,19 +1252,32 @@ void Definition::addSourceReferencedBy(MemberDef *md)
} }
} }
void Definition::addSourceReferences(MemberDef *md) void Definition::addSourceReferences(MemberDef *md, const char *floc)
{ {
QCString name = md->name();
QCString scope = md->getScopeString();
if (floc)
name = floc;
#if 0
else
{
name = md->name();
if (!scope.isEmpty())
{
name.prepend(scope+"::");
}
}
#endif
if (md) if (md)
{ {
QCString name = md->name();
QCString scope = md->getScopeString();
makeResident(); makeResident();
#if 0
if (!scope.isEmpty()) if (!scope.isEmpty())
{ {
name.prepend(scope+"::"); name.prepend(scope+"::");
} }
#endif
if (m_impl->sourceRefsDict==0) if (m_impl->sourceRefsDict==0)
{ {
m_impl->sourceRefsDict = new MemberSDict; m_impl->sourceRefsDict = new MemberSDict;
......
...@@ -95,7 +95,7 @@ class Definition : public DefinitionIntf, public LockableObj ...@@ -95,7 +95,7 @@ class Definition : public DefinitionIntf, public LockableObj
/*! Create a new definition */ /*! Create a new definition */
Definition( Definition(
const char *defFileName,int defLine, const char *defFileName,int defLine,int defColumn,
const char *name,const char *b=0,const char *d=0, const char *name,const char *b=0,const char *d=0,
bool isSymbol=TRUE); bool isSymbol=TRUE);
...@@ -180,6 +180,9 @@ class Definition : public DefinitionIntf, public LockableObj ...@@ -180,6 +180,9 @@ class Definition : public DefinitionIntf, public LockableObj
/*! returns the line number at which the definition was found */ /*! returns the line number at which the definition was found */
int getDefLine() const { return m_defLine; } int getDefLine() const { return m_defLine; }
/*! returns the column number at which the definition was found */
int getDefColumn() const { return m_defColumn; }
/*! Returns TRUE iff the definition is documented /*! Returns TRUE iff the definition is documented
* (which could be generated documentation) * (which could be generated documentation)
* @see hasUserDocumentation() * @see hasUserDocumentation()
...@@ -287,8 +290,8 @@ class Definition : public DefinitionIntf, public LockableObj ...@@ -287,8 +290,8 @@ class Definition : public DefinitionIntf, public LockableObj
// source references // source references
void setBodySegment(int bls,int ble); void setBodySegment(int bls,int ble);
void setBodyDef(FileDef *fd); void setBodyDef(FileDef *fd);
void addSourceReferencedBy(MemberDef *d); void addSourceReferencedBy(MemberDef *d, const char *floc=NULL);
void addSourceReferences(MemberDef *d); void addSourceReferences(MemberDef *d, const char *floc);
void setRefItems(const QList<ListItemInfo> *sli); void setRefItems(const QList<ListItemInfo> *sli);
void mergeRefItems(Definition *d); void mergeRefItems(Definition *d);
...@@ -354,6 +357,7 @@ class Definition : public DefinitionIntf, public LockableObj ...@@ -354,6 +357,7 @@ class Definition : public DefinitionIntf, public LockableObj
bool m_isSymbol; bool m_isSymbol;
QCString m_symbolName; QCString m_symbolName;
int m_defLine; int m_defLine;
int m_defColumn;
}; };
/** A list of Definition objects. */ /** A list of Definition objects. */
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
static int g_dirCount=0; static int g_dirCount=0;
DirDef::DirDef(const char *path) : Definition(path,1,path) DirDef::DirDef(const char *path) : Definition(path,1,1,path)
{ {
bool fullPathNames = Config_getBool("FULL_PATH_NAMES"); bool fullPathNames = Config_getBool("FULL_PATH_NAMES");
// get display name (stipping the paths mentioned in STRIP_FROM_PATH) // get display name (stipping the paths mentioned in STRIP_FROM_PATH)
......
This diff is collapsed.
/******************************************************************************
*
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
*/
#ifndef DOCBOOKGEN_H
#define DOCBOOKGEN_H
void generateDocbook();
#endif
This diff is collapsed.
/******************************************************************************
*
*
*
* Copyright (C) 1997-2012 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* Documents produced by Doxygen are derivative works derived from the
* input used in their production; they are not affected by this license.
*
*/
#ifndef _DOCBOOKDOCVISITOR_H
#define _DOCBOOKDOCVISITOR_H
#include "docvisitor.h"
#include <qstack.h>
#include <qcstring.h>
class FTextStream;
class CodeOutputInterface;
class QCString;
/*! @brief Concrete visitor implementation for Docbook output. */
class DocbookDocVisitor : public DocVisitor
{
public:
DocbookDocVisitor(FTextStream &t,CodeOutputInterface &ci);
//--------------------------------------
// visitor functions for leaf nodes
//--------------------------------------
void visit(DocWord *);
void visit(DocLinkedWord *);
void visit(DocWhiteSpace *);
void visit(DocSymbol *);
void visit(DocURL *);
void visit(DocLineBreak *);
void visit(DocHorRuler *);
void visit(DocStyleChange *);
void visit(DocVerbatim *);
void visit(DocAnchor *);
void visit(DocInclude *);
void visit(DocIncOperator *);
void visit(DocFormula *);
void visit(DocIndexEntry *);
void visit(DocSimpleSectSep *);
void visit(DocCite *);
//--------------------------------------
// visitor functions for compound nodes
//--------------------------------------
void visitPre(DocAutoList *);
void visitPost(DocAutoList *);
void visitPre(DocAutoListItem *);
void visitPost(DocAutoListItem *);
void visitPre(DocPara *) ;
void visitPost(DocPara *);
void visitPre(DocRoot *);
void visitPost(DocRoot *);
void visitPre(DocSimpleSect *);
void visitPost(DocSimpleSect *);
void visitPre(DocTitle *);
void visitPost(DocTitle *);
void visitPre(DocSimpleList *);
void visitPost(DocSimpleList *);
void visitPre(DocSimpleListItem *);
void visitPost(DocSimpleListItem *);
void visitPre(DocSection *);
void visitPost(DocSection *);
void visitPre(DocHtmlList *);
void visitPost(DocHtmlList *) ;
void visitPre(DocHtmlListItem *);
void visitPost(DocHtmlListItem *);
//void visitPre(DocHtmlPre *);
//void visitPost(DocHtmlPre *);
void visitPre(DocHtmlDescList *);
void visitPost(DocHtmlDescList *);
void visitPre(DocHtmlDescTitle *);
void visitPost(DocHtmlDescTitle *);
void visitPre(DocHtmlDescData *);
void visitPost(DocHtmlDescData *);
void visitPre(DocHtmlTable *);
void visitPost(DocHtmlTable *);
void visitPre(DocHtmlRow *);
void visitPost(DocHtmlRow *) ;
void visitPre(DocHtmlCell *);
void visitPost(DocHtmlCell *);
void visitPre(DocHtmlCaption *);
void visitPost(DocHtmlCaption *);
void visitPre(DocInternal *);
void visitPost(DocInternal *);
void visitPre(DocHRef *);
void visitPost(DocHRef *);
void visitPre(DocHtmlHeader *);
void visitPost(DocHtmlHeader *);
void visitPre(DocImage *);
void visitPost(DocImage *);
void visitPre(DocDotFile *);
void visitPost(DocDotFile *);
void visitPre(DocMscFile *);
void visitPost(DocMscFile *);
void visitPre(DocLink *);
void visitPost(DocLink *);
void visitPre(DocRef *);
void visitPost(DocRef *);
void visitPre(DocSecRefItem *);
void visitPost(DocSecRefItem *);
void visitPre(DocSecRefList *);
void visitPost(DocSecRefList *);
//void visitPre(DocLanguage *);
//void visitPost(DocLanguage *);
void visitPre(DocParamSect *);
void visitPost(DocParamSect *);
void visitPre(DocParamList *);
void visitPost(DocParamList *);
void visitPre(DocXRefItem *);
void visitPost(DocXRefItem *);
void visitPre(DocInternalRef *);
void visitPost(DocInternalRef *);
void visitPre(DocCopy *);
void visitPost(DocCopy *);
void visitPre(DocText *);
void visitPost(DocText *);
void visitPre(DocHtmlBlockQuote *);
void visitPost(DocHtmlBlockQuote *);
void visitPre(DocVhdlFlow *);
void visitPost(DocVhdlFlow *);
private:
//--------------------------------------
// helper functions
//--------------------------------------
void filter(const char *str);
void startLink(const QCString &file,
const QCString &anchor);
void endLink();
void pushEnabled();
void popEnabled();
void startMscFile(const QCString &fileName,const QCString &width,
const QCString &height, bool hasCaption);
void endMscFile(bool hasCaption);
void writeMscFile(const QCString &fileName);
void startDotFile(const QCString &fileName,const QCString &width,
const QCString &height, bool hasCaption);
void endDotFile(bool hasCaption);
void writeDotFile(const QCString &fileName);
//--------------------------------------
// state variables
//--------------------------------------
FTextStream &m_t;
CodeOutputInterface &m_ci;
bool m_insidePre;
bool m_hide;
QStack<bool> m_enabled;
QCString m_langExt;
};
#endif
...@@ -1346,6 +1346,15 @@ reparsetoken: ...@@ -1346,6 +1346,15 @@ reparsetoken:
doctokenizerYYsetStatePara(); doctokenizerYYsetStatePara();
} }
break; break;
case CMD_DBONLY:
{
doctokenizerYYsetStateDbOnly();
tok = doctokenizerYYlex();
children.append(new DocVerbatim(parent,g_context,g_token->verb,DocVerbatim::DocbookOnly,g_isExample,g_exampleName));
if (tok==0) warn_doc_error(g_fileName,doctokenizerYYlineno,"warning: xmlonly section ended without end marker",doctokenizerYYlineno);
doctokenizerYYsetStatePara();
}
break;
case CMD_FORMULA: case CMD_FORMULA:
{ {
DocFormula *form=new DocFormula(parent,g_token->id); DocFormula *form=new DocFormula(parent,g_token->id);
...@@ -1547,7 +1556,7 @@ static int handleDocCopy(DocNode *parent,QList<DocNode> &children) ...@@ -1547,7 +1556,7 @@ static int handleDocCopy(DocNode *parent,QList<DocNode> &children)
cmdId==CMD_COPYDOC || cmdId==CMD_COPYDETAILS); cmdId==CMD_COPYDOC || cmdId==CMD_COPYDETAILS);
cpy->parse(children); cpy->parse(children);
delete cpy; delete cpy;
return 0; return TK_NEWPARA;
} }
...@@ -5509,6 +5518,7 @@ int DocPara::handleCommand(const QCString &cmdName) ...@@ -5509,6 +5518,7 @@ int DocPara::handleCommand(const QCString &cmdName)
case CMD_ENDRTFONLY: case CMD_ENDRTFONLY:
case CMD_ENDLATEXONLY: case CMD_ENDLATEXONLY:
case CMD_ENDXMLONLY: case CMD_ENDXMLONLY:
case CMD_ENDDBONLY:
case CMD_ENDLINK: case CMD_ENDLINK:
case CMD_ENDVERBATIM: case CMD_ENDVERBATIM:
case CMD_ENDDOT: case CMD_ENDDOT:
......
...@@ -381,7 +381,7 @@ class DocWhiteSpace : public DocNode ...@@ -381,7 +381,7 @@ class DocWhiteSpace : public DocNode
class DocVerbatim : public DocNode class DocVerbatim : public DocNode
{ {
public: public:
enum Type { Code, HtmlOnly, ManOnly, LatexOnly, RtfOnly, XmlOnly, Verbatim, Dot, Msc }; enum Type { Code, HtmlOnly, ManOnly, LatexOnly, RtfOnly, XmlOnly, Verbatim, Dot, Msc, DocbookOnly };
DocVerbatim(DocNode *parent,const QCString &context, DocVerbatim(DocNode *parent,const QCString &context,
const QCString &text, Type t,bool isExample, const QCString &text, Type t,bool isExample,
const QCString &exampleFile,const QCString &lang=QCString()); const QCString &exampleFile,const QCString &lang=QCString());
......
...@@ -135,6 +135,11 @@ void DocSets::initialize() ...@@ -135,6 +135,11 @@ void DocSets::initialize()
" <string>" << publisherId << "</string>\n" " <string>" << publisherId << "</string>\n"
" <key>DocSetPublisherName</key>\n" " <key>DocSetPublisherName</key>\n"
" <string>" << publisherName << "</string>\n" " <string>" << publisherName << "</string>\n"
// markers for Dash
" <key>DashDocSetFamily</key>\n"
" <string>doxy</string>\n"
" <key>DocSetPlatformFamily</key>\n"
" <string>doxygen</string>\n"
"</dict>\n" "</dict>\n"
"</plist>\n"; "</plist>\n";
} }
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment