Commit 6c5b1ce2 authored by dimitri's avatar dimitri

Release-1.4.3-20050707

parent f92ed7a6
DOXYGEN Version 1.4.3-20050623
DOXYGEN Version 1.4.3-20050707
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (23 June 2005)
Dimitri van Heesch (07 July 2005)
DOXYGEN Version 1.4.3_20050623
DOXYGEN Version 1.4.3_20050707
Please read INSTALL for compilation instructions.
......@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (23 June 2005)
Dimitri van Heesch (dimitri@stack.nl) (07 July 2005)
1.4.3-20050623
1.4.3-20050707
......@@ -240,7 +240,7 @@ if test "$f_wizard" = YES; then
if test -z "$QTDIR"; then
echo " QTDIR environment variable not set!"
echo -n " Checking for Qt..."
for d in /usr/lib/{qt-3.1,qt3,qt2,qt,qt*}; do
for d in /usr/{lib,share,qt}/{qt-3,qt3,qt,qt*,3}; do
if test -d "$d/lib" -a -d "$d/include" -a -x "$d/bin/moc"; then
QTDIR=$d
fi
......
......@@ -800,6 +800,10 @@ FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
\c EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
certain files from those directories.
Note that the wildcards are matched against the file with absolute path,
so to exclude all test directories use the pattern
<code>*</code><code>/test/</code><code>*</code>
\anchor cfg_example_path
<dt>\c EXAMPLE_PATH <dd>
\addindex EXAMPLE_PATH
......
......@@ -23,7 +23,7 @@ text fragments, generated by doxygen, can be produced in languages other
than English (the default). The output language is chosen through the
configuration file (with default name and known as Doxyfile).
Currently (version 1.4.3), 31 languages
Currently (version 1.4.3-20050623), 31 languages
are supported (sorted alphabetically):
Afrikaans, Brazilian Portuguese, Catalan, Chinese, Chinese
Traditional, Croatian, Czech, Danish, Dutch, English, Finnish, French,
......
(1.4.3)
(1.4.3-20050623)
Doxygen supports the following 31 languages (sorted alphabetically):
......
......@@ -52,6 +52,7 @@ class Q_EXPORT QDate
public:
QDate() { jd=0; } // set null date
QDate( int y, int m, int d ); // set date
virtual ~QDate() {}
bool isNull() const { return jd == 0; }
bool isValid() const; // valid date
......
......@@ -34,15 +34,17 @@ static int compItems(void *item1,void *item2)
{
ClassDef *c1=(ClassDef *)item1;
ClassDef *c2=(ClassDef *)item2;
int p1=0,p2=0;
static bool b = Config_getBool("SORT_BY_SCOPE_NAME");
if (!b)
if (b)
{
p1=getPrefixIndex(c1->className());
p2=getPrefixIndex(c2->className());
return stricmp(c1->qualifiedName(),
c2->qualifiedName());
}
else
{
return stricmp(c1->className(),
c2->className());
}
return stricmp(c1->className().data()+p1,
c2->className().data()+p2);
}
int ClassList::compareItems(GCI item1, GCI item2)
......
......@@ -542,6 +542,7 @@ void convertCppComments(BufStr *inBuf,BufStr *outBuf,const char *fileName)
}
}
//----------------------------------------------------------------------------
#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
......
......@@ -21,14 +21,25 @@
class ParserInterface;
bool parseCommentBlock(/* in */ ParserInterface *parser,
/* in,out */ Entry *curEntry,
int parseCommentBlock(/* in */ ParserInterface *parser,
/* in */ Entry *curEntry,
/* in */ const QCString &comment,
/* in */ const QCString &fileName,
/* in */ int lineNr,
/* in */ bool isBrief,
/* in */ bool isJavaDocStyle,
/* in,out */ Protection &prot
/* in,out */ Protection &prot,
/* in,out */ int &position,
/* out */ bool &newEntryNeeded
);
void groupEnterFile(const char *file,int line);
void groupLeaveFile(const char *file,int line);
void groupLeaveCompound(const char *file,int line,const char *name);
void groupEnterCompound(const char *file,int line,const char *name);
void openGroup(Entry *e,const char *file,int line);
void closeGroup(Entry *,const char *file,int line);
void initGroupInfo(Entry *e);
#endif
This diff is collapsed.
......@@ -1838,7 +1838,9 @@ void Config::create()
"EXCLUDE_PATTERNS",
"If the value of the INPUT tag contains directories, you can use the \n"
"EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude \n"
"certain files from those directories. \n"
"certain files from those directories. Note that the wildcards are matched \n"
"against the file with absolute path, so to exclude all test directories \n"
"for example use the pattern */test/* \n"
);
cl = addList(
"EXAMPLE_PATH",
......
......@@ -302,7 +302,8 @@ FILEECHAR [a-z_A-Z0-9\-\+]
HFILEMASK ("."{FILESCHAR}*{FILEECHAR}+)*
FILEMASK ({FILESCHAR}*{FILEECHAR}+("."{FILESCHAR}*{FILEECHAR}+)*)|{HFILEMASK}
LINKMASK [^ \t\n\r\\@<&${}]+("("[^\n)]*")")?({BLANK}*("const"|"volatile"){BLANK}+)?
SPCMD1 {CMD}[a-z_A-Z0-9]+
VERBATIM "verbatim"{BLANK}*
SPCMD1 {CMD}([a-z_A-Z0-9]+|{VERBATIM})
SPCMD2 {CMD}[\\@<>&$#%~]
SPCMD3 {CMD}form#[0-9]+
INOUT "in"|"out"|("in"{BLANK}*","{BLANK}*"out")|("out"{BLANK}*","{BLANK}*"in")
......@@ -324,6 +325,7 @@ OPMASK ({BLANK}*{OPNORM}{FUNCARG}?)|({OPCAST}{FUNCARG})
LNKWORD1 ("::"|"#")?{SCOPEMASK}
CVSPEC {BLANK}*("const"|"volatile")
LNKWORD2 {SCOPEPRE}*"operator"{OPMASK}
LNKWORD3 [0-9a-z_A-Z]+("."[0-9a-z_A-Z]+)+
CHARWORD [^ \t\n\r\\@<>()\[\]:;\?{}&%$#,.]
CHARWORDQ [^ \t\n\r\\@<>()\[\]:;\?{}&%$#,."]
WORD1 "%"?{CHARWORD}+|"{"|"}"|("\""[^"\n]*"\"")
......@@ -416,6 +418,7 @@ REFWORD ("#"|"::")?({ID}("."|"#"|"::"|"-"))*({ID}(":")?){FUNCARG}?
<St_Para>{SPCMD1} |
<St_Para>{SPCMD2} { /* special command */
g_token->name = yytext+1;
g_token->name = g_token->name.stripWhiteSpace();
g_token->paramDir=TokenInfo::Unspecified;
return TK_COMMAND;
}
......@@ -488,7 +491,8 @@ REFWORD ("#"|"::")?({ID}("."|"#"|"::"|"-"))*({ID}(":")?){FUNCARG}?
<St_Para>{LNKWORD1}/"<br>" | // prevent <br> html tag to be parsed as template arguments
<St_Para>{LNKWORD1} |
<St_Para>{LNKWORD1}{FUNCARG} |
<St_Para>{LNKWORD2} {
<St_Para>{LNKWORD2} |
<St_Para>{LNKWORD3} {
g_token->name = yytext;
return TK_LNKWORD;
}
......
......@@ -1582,19 +1582,24 @@ static MemberDef *addVariableToFile(
}
}
QCString def;
// determine the definition of the global variable
if (nd && !nd->name().isEmpty() && nd->name().at(0)!='@' &&
!Config_getBool("HIDE_SCOPE_NAMES")
)
// variable is inside a namespace, so put the scope before the name
{
static bool optimizeForJava = Config_getBool("OPTIMIZE_OUTPUT_JAVA");
QCString sep="::";
if (optimizeForJava) sep=".";
if (!root->type.isEmpty())
{
def=root->type+" "+nd->name()+"::"+name+root->args;
def=root->type+" "+nd->name()+sep+name+root->args;
}
else
{
def=nd->name()+"::"+name+root->args;
def=nd->name()+sep+name+root->args;
}
}
else
......
......@@ -2070,10 +2070,16 @@ MemberDef *MemberDef::createTemplateInstanceMember(
actualArgList->pureSpecifier = defArgList->pureSpecifier;
}
QCString methodName=name();
if (methodName.left(9)=="operator ") // conversion operator
{
methodName=substituteTemplateArgumentsInString(methodName,formalArgs,actualArgs);
}
MemberDef *imd = new MemberDef(
getDefFileName(),getDefLine(),
substituteTemplateArgumentsInString(type,formalArgs,actualArgs),
name(),
methodName,
substituteTemplateArgumentsInString(args,formalArgs,actualArgs),
exception, prot,
virt, stat, related, mtype, 0, 0
......
......@@ -42,6 +42,7 @@ class GroupDef;
class CodeOutputInterface
{
public:
virtual ~CodeOutputInterface() {}
/*! Writes an ASCII string to the output. This function should keep
* spaces visible, should break lines at a newline and should convert
* tabs to the right number of spaces.
......@@ -81,6 +82,7 @@ class CodeOutputInterface
class BaseOutputDocInterface : public CodeOutputInterface
{
public:
virtual ~BaseOutputDocInterface() {}
enum ParamListTypes { Param, RetVal, Exception };
enum SectionTypes { /*See, Return, Author, Version,
Since, Date, Bug, Note,
......
......@@ -95,17 +95,6 @@ class ParserInterface
*/
virtual void parsePrototype(const char *text) = 0;
/** Callback function called by the comment block scanner upon encountering
* a group block start command (@@{). If the group has a header
* specified via the @@name command, this will be passed via
* the \a header parameter, if not the \a header parameter will be 0.
*/
virtual void handleGroupStartCommand(const char *header) = 0;
/** Callback function called by the comment block scanner upon encountering
* a group block end command (@@}).
*/
virtual void handleGroupEndCommand() = 0;
};
//-----------------------------------------------------------------------------
......
This diff is collapsed.
......@@ -49,8 +49,6 @@ class PythonLanguageScanner : public ParserInterface
);
void resetCodeParserState();
void parsePrototype(const char *text);
void handleGroupStartCommand(const char *header);
void handleGroupEndCommand();
};
#endif
This diff is collapsed.
......@@ -46,8 +46,6 @@ class CLanguageScanner : public ParserInterface
);
void resetCodeParserState();
void parsePrototype(const char *text);
void handleGroupStartCommand(const char *header);
void handleGroupEndCommand();
};
#endif
This diff is collapsed.
......@@ -292,6 +292,7 @@ function main()
echo "</span>\n";
echo "</form>\n";
echo "</div>\n";
echo "<div class=\"searchresults\">\n";
$results = array();
$requiredWords = array();
$forbiddenWords = array();
......@@ -318,6 +319,7 @@ function main()
sort_results($filteredDocs,$sorted);
// report results to the user
report_results($sorted);
echo "</div>\n";
fclose($file);
}
......
......@@ -292,6 +292,7 @@
" echo \"</span>\\n\";\n"
" echo \"</form>\\n\";\n"
" echo \"</div>\\n\";\n"
" echo \"<div class=\\\"searchresults\\\">\\n\";\n"
" $results = array();\n"
" $requiredWords = array();\n"
" $forbiddenWords = array();\n"
......@@ -318,6 +319,7 @@
" sort_results($filteredDocs,$sorted);\n"
" // report results to the user\n"
" report_results($sorted);\n"
" echo \"</div>\\n\";\n"
" fclose($file);\n"
"}\n"
"\n"
......
......@@ -13,6 +13,7 @@
class TranslatorAdapterBase : public Translator
{
protected:
virtual ~TranslatorAdapterBase() {}
TranslatorEnglish english;
/*! An auxiliary inline method used by the updateNeededMessage()
......
......@@ -42,6 +42,10 @@
*/
class TranslatorEnglish : public Translator
{
protected:
friend class TranslatorAdapterBase;
virtual ~TranslatorEnglish() {}
public:
// --- Language control methods -------------------
......
......@@ -2705,7 +2705,7 @@ static QCString getCanonicalTypeForIdentifier(
{
QCString ts;
result = resolveSymbolName(fs,defList->first(),ts);
*tSpec="";
if (tSpec) *tSpec="";
}
else if (!symName.isEmpty() &&
(defList=Doxygen::symbolMap->find(symName)) &&
......@@ -2723,7 +2723,7 @@ static QCString getCanonicalTypeForIdentifier(
if (!templSpec.isEmpty())
{
cd = getResolvedClass(d,fs,word+templSpec,&mType,0,TRUE);
if (cd) *tSpec="";
if (cd && tSpec) *tSpec="";
}
if (cd==0)
{
......@@ -2742,7 +2742,7 @@ static QCString getCanonicalTypeForIdentifier(
{
//result = cd->qualifiedNameWithTemplateParameters();
result = removeRedundantWhiteSpace(cd->qualifiedName()+templSpec);
if (cd->isTemplate())
if (cd->isTemplate() && tSpec)
{
*tSpec="";
}
......
......@@ -57,6 +57,7 @@ class Definition;
class TextGeneratorIntf
{
public:
virtual ~TextGeneratorIntf() {}
virtual void writeString(const char *,bool) const = 0;
virtual void writeBreak() const = 0;
virtual void writeLink(const char *extRef,const char *file,
......@@ -67,6 +68,7 @@ class TextGeneratorIntf
class TextGeneratorOLImpl : public TextGeneratorIntf
{
public:
virtual ~TextGeneratorOLImpl() {}
TextGeneratorOLImpl(OutputDocInterface &od);
void writeString(const char *s,bool keepSpaces) const;
void writeBreak() const;
......
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