summaryrefslogtreecommitdiffstats
path: root/MANIFEST
diff options
context:
space:
mode:
authorJohn Mainzer <mainzer@hdfgroup.org>2006-04-28 13:27:54 (GMT)
committerJohn Mainzer <mainzer@hdfgroup.org>2006-04-28 13:27:54 (GMT)
commit8a7b9b3221f192ed0e64b00c3a90d5e6a1fb9e19 (patch)
tree2a4a38cc7b359149409ba55d919031ce9d25e932 /MANIFEST
parent6a77572c26b354541cafed74bf583e0de0ddfe9a (diff)
downloadhdf5-8a7b9b3221f192ed0e64b00c3a90d5e6a1fb9e19.zip
hdf5-8a7b9b3221f192ed0e64b00c3a90d5e6a1fb9e19.tar.gz
hdf5-8a7b9b3221f192ed0e64b00c3a90d5e6a1fb9e19.tar.bz2
[svn-r12311] Purpose:
Add pinned entry capability to cache. Description: For frequently accessed cache entries, the protect/unprotect overhead is sometimes a bottleneck. Solution: Allow entries to be pinned in the cache. Pinned entries can't be evicted, but can be flushed or modified. Platforms tested: h5committested -- minus one small typo in test/cache.c whose fix was tested on copper and heping only. Misc. update:
Diffstat (limited to 'MANIFEST')
-rw-r--r--MANIFEST1
1 files changed, 1 insertions, 0 deletions
diff --git a/MANIFEST b/MANIFEST
index 0abd403..924e7fd 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -396,6 +396,7 @@
./src/H5Aprivate.h
./src/H5Apublic.h
./src/H5AC.c
+./src/H5ACpkg.h
./src/H5ACprivate.h
./src/H5ACpublic.h
./src/H5B.c
.3.7-20040517
+DOXYGEN Version 1.3.7-20040526
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
-Dimitri van Heesch (17 May 2004)
+Dimitri van Heesch (26 May 2004)
diff --git a/README b/README
index d797fa3..55d9776 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-DOXYGEN Version 1.3.7_20040517
+DOXYGEN Version 1.3.7_20040526
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) (17 May 2004)
+Dimitri van Heesch (dimitri@stack.nl) (26 May 2004)
diff --git a/VERSION b/VERSION
index e045738..658b5e1 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.3.7-20040517
+1.3.7-20040526
diff --git a/doc/commands.doc b/doc/commands.doc
index 309a852..932f83f 100644
--- a/doc/commands.doc
+++ b/doc/commands.doc
@@ -48,6 +48,7 @@ documentation:
\refitem cmdbug \\bug
\refitem cmdc \\c
\refitem cmdcallgraph \\callgraph
+\refitem cmdcategory \\category
\refitem cmdclass \\class
\refitem cmdcode \\code
\refitem cmdcopydoc \\copydoc
@@ -111,6 +112,7 @@ documentation:
\refitem cmdpost \\post
\refitem cmdpre \\pre
\refitem cmdproperty \\property
+\refitem cmdprotocol \\protocol
\refitem cmdref \\ref
\refitem cmdrelates \\relates
\refitem cmdrelatesalso \\relatesalso
@@ -203,6 +205,16 @@ doxygen. Unrecognized commands are treated as normal text.
\note The completeness (and correctness) of the call graph depends on the
doxygen code parser which is not perfect.
+<hr>
+\section cmdcategory \category <name> [<header-file>] [<header-name>]
+
+ \addindex \\category
+ For Objective-C only: Indicates that a comment block contains documentation
+ for a class category with name \<name\>. The arguments are
+ equal to the \\class command.
+
+ \sa section \ref cmdclass "\\class".
+
\section cmdclass \class <name> [<header-file>] [<header-name>]
\addindex \\class
@@ -385,7 +397,7 @@ doxygen. Unrecognized commands are treated as normal text.
\ref cmdaddtogroup "\\addtogroup" and \ref cmdweakgroup "\\weakgroup"
<hr>
-\section cmdinterface \interface
+\section cmdinterface \interface <name> [<header-file>] [<header-name>]
\addindex \\interface
Indicates that a comment block contains documentation for an
@@ -553,6 +565,16 @@ See section \ref memgroup for an example.
\sa section \ref cmdfn "\\fn" and \ref cmdvar "\\var".
<hr>
+\section cmdprotocol \protocol <name> [<header-file>] [<header-name>]
+
+ \addindex \\protocol
+ Indicates that a comment block contains documentation for a
+ protocol in Objective-C with name \<name\>. The arguments are equal
+ to the \\class command.
+
+ \sa section \ref cmdclass "\\class".
+
+<hr>
\section cmdrelates \relates <name>
\addindex \\relates
diff --git a/packages/rpm/doxygen.spec b/packages/rpm/doxygen.spec
index 15c4fc8..625b268 100644
--- a/packages/rpm/doxygen.spec
+++ b/packages/rpm/doxygen.spec
@@ -1,6 +1,6 @@
Summary: A documentation system for C/C++.
Name: doxygen
-Version: 1.3.7_20040517
+Version: 1.3.7_20040526
Release: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
diff --git a/src/code.l b/src/code.l
index 1943589..7e4d281 100644
--- a/src/code.l
+++ b/src/code.l
@@ -711,7 +711,6 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
bool typeOnly=FALSE)
{
int i=0;
- //fprintf(stderr,"generateClassOrGlobalLink(clName=%s)\n",clName);
if (*clName=='~') // correct for matching negated values i.s.o. destructors.
{
g_code->codify("~");
@@ -726,14 +725,21 @@ static void generateClassOrGlobalLink(BaseCodeDocInterface &ol,char *clName,
ClassDef *cd=0;
MemberDef *md=0;
+ //printf("generateClassOrGlobalLink(className=%s)\n",className.data());
if (!g_theVarContext.findVariable(className)) // not a local variable
{
Definition *d = g_currentDefinition;
+ //printf("d=%p g_sourceFileDef=%p\n",d,g_currentDefinition);
cd = getResolvedClass(d,g_sourceFileDef,className,&md);
if (cd==0 && md==0 && (i=className.find('<'))!=-1)
{
cd=getResolvedClass(d,g_sourceFileDef,className.left(i),&md);
}
+ //printf("is not found as a variable %s\n",cd?cd->name().data():"<null>");
+ }
+ else
+ {
+ //printf("is a local variable!\n");
}
if (cd && cd->isLinkable()) // is it a linkable class
{
@@ -1212,7 +1218,7 @@ static void writeObjCMethodCall(ObjCCallCtx *ctx)
}
else
{
- printf("Invalid name: id=%d\n",refId);
+ //printf("Invalid name: id=%d\n",refId);
}
}
else if (nc=='o') // reference to potential object name
@@ -1321,7 +1327,7 @@ static void writeObjCMethodCall(ObjCCallCtx *ctx)
}
else
{
- printf("Invalid object: id=%d\n",refId);
+ //printf("Invalid object: id=%d\n",refId);
}
}
else if (nc=='c') // reference to nested call
@@ -1364,7 +1370,7 @@ static void writeObjCMethodCall(ObjCCallCtx *ctx)
}
else
{
- printf("Invalid context: id=%d\n",refId);
+ //printf("Invalid context: id=%d\n",refId);
}
}
else // illegal marker
@@ -1981,7 +1987,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^' \\\n]{1,4}"'"))
<Body>{SCOPETNAME}/{B}*"(" { // a() or c::a() or t<A,B>::a()
addType();
generateFunctionLink(*g_code,yytext);
- g_theVarContext.addVariable(g_type,yytext);
+ //g_theVarContext.addVariable(g_type,yytext);
g_bracketCount=0;
g_args.resize(0);
g_name+=yytext;
diff --git a/src/diagram.cpp b/src/diagram.cpp
index 1c7a7a5..c483e04 100644
--- a/src/diagram.cpp
+++ b/src/diagram.cpp
@@ -151,7 +151,8 @@ static void writeVectorBox(QTextStream &t,DiagramItem *di,
if (di->virtualness()==Virtual) t << "solid\n";
}
-static void writeMapArea(QTextStream &t,ClassDef *cd,int x,int y,int w,int h)
+static void writeMapArea(QTextStream &t,ClassDef *cd,QCString relPath,
+ int x,int y,int w,int h)
{
if (cd->isLinkable())
{
@@ -169,6 +170,10 @@ static void writeMapArea(QTextStream &t,ClassDef *cd,int x,int y,int w,int h)
{
if ((dest=Doxygen::tagDestinationDict[ref])) t << *dest << "/";
}
+ else
+ {
+ t << relPath;
+ }
t << cd->getOutputFileBase() << Doxygen::htmlFileExtension << "\" ";
t << "alt=\"" << cd->displayName();
t << "\" shape=\"rect\" coords=\"" << x << "," << y << ",";
@@ -479,6 +484,7 @@ void TreeDiagram::drawBoxes(QTextStream &t,Image *image,
bool doBase,bool bitmap,
uint baseRows,uint superRows,
uint cellWidth,uint cellHeight,
+ QCString relPath,
bool generateMap)
{
DiagramRow *dr=first();
@@ -548,7 +554,7 @@ void TreeDiagram::drawBoxes(QTextStream &t,Image *image,
writeBitmapBox(di,image,x,y,cellWidth,cellHeight,firstRow,
hasDocs,di->getChildren()->count()>0);
if (!firstRow && generateMap)
- writeMapArea(t,di->getClassDef(),x,y,cellWidth,cellHeight);
+ writeMapArea(t,di->getClassDef(),relPath,x,y,cellWidth,cellHeight);
}
else
{
@@ -581,7 +587,7 @@ void TreeDiagram::drawBoxes(QTextStream &t,Image *image,
bool hasDocs=di->getClassDef()->isLinkable();
writeBitmapBox(di,image,x,y,cellWidth,cellHeight,firstRow,hasDocs);
if (!firstRow && generateMap)
- writeMapArea(t,di->getClassDef(),x,y,cellWidth,cellHeight);
+ writeMapArea(t,di->getClassDef(),relPath,x,y,cellWidth,cellHeight);
}
else
{
@@ -1252,7 +1258,8 @@ void ClassDiagram::writeFigure(QTextStream &output,const char *path,
void ClassDiagram::writeImage(QTextStream &t,const char *path,
- const char *fileName, bool generateMap)
+ const char *relPath,const char *fileName,
+ bool generateMap)
{
uint baseRows=base->computeRows();
uint superRows=super->computeRows();
@@ -1272,8 +1279,8 @@ void ClassDiagram::writeImage(QTextStream &t,const char *path,
Image image(imageWidth,imageHeight);
- base->drawBoxes(t,&image,TRUE,TRUE,baseRows,superRows,cellWidth,cellHeight,generateMap);
- super->drawBoxes(t,&image,FALSE,TRUE,baseRows,superRows,cellWidth,cellHeight,generateMap);
+ base->drawBoxes(t,&image,TRUE,TRUE,baseRows,superRows,cellWidth,cellHeight,relPath,generateMap);
+ super->drawBoxes(t,&image,FALSE,TRUE,baseRows,superRows,cellWidth,cellHeight,relPath,generateMap);
base->drawConnectors(t,&image,TRUE,TRUE,baseRows,superRows,cellWidth,cellHeight);
super->drawConnectors(t,&image,FALSE,TRUE,baseRows,superRows,cellWidth,cellHeight);
diff --git a/src/diagram.h b/src/diagram.h
index 91c85c9..df9759a 100644
--- a/src/diagram.h
+++ b/src/diagram.h
@@ -105,6 +105,7 @@ class TreeDiagram : public QList<DiagramRow>
bool doBase,bool bitmap,
uint baseRows,uint superRows,
uint cellWidth,uint cellHeight,
+ QCString relPath="",
bool generateMap=TRUE);
void drawConnectors(QTextStream &t,Image *image,
bool doBase,bool bitmap,
@@ -123,7 +124,7 @@ class ClassDiagram
~ClassDiagram();
void writeFigure(QTextStream &t,const char *path,
const char *file);
- void writeImage(QTextStream &t,const char *path,
+ void writeImage(QTextStream &t,const char *path,const char *relPath,
const char *file,bool generateMap=TRUE);
private:
TreeDiagram *base;
diff --git a/src/docparser.cpp b/src/docparser.cpp
index 16bbb58..f810ce3 100644
--- a/src/docparser.cpp
+++ b/src/docparser.cpp
@@ -239,7 +239,7 @@ static QCString findAndCopyImage(const char *fileName,DocImage::Type type)
/*! Collects the parameters found with \@param or \@retval commands
* in a global list g_paramsFound. If \a isParam is set to TRUE
* and the parameter is not an actual parameter of the current
- * member g_memberDef, than a warning is raised (unless warnings
+ * member g_memberDef, then a warning is raised (unless warnings
* are disabled altogether).
*/
static void checkArgumentName(const QString &name,bool isParam)
@@ -340,7 +340,7 @@ static void checkUndocumentedParams()
//---------------------------------------------------------------------------
-/*! Strips know html and tex extensions from \a text. */
+/*! Strips known html and tex extensions from \a text. */
static QString stripKnownExtensions(const char *text)
{
QString result=text;
@@ -1429,16 +1429,14 @@ void DocCopy::parse()
//---------------------------------------------------------------------------
-void DocXRefItem::parse()
+DocXRefItem::DocXRefItem(DocNode *parent,int id,const char *key) :
+ m_parent(parent), m_id(id), m_key(key), m_relPath(g_relPath)
+{
+}
+
+bool DocXRefItem::parse()
{
QString listName;
- //switch(m_type)
- //{
- // case Bug: listName="bug"; break;
- // case Test: listName="test"; break;
- // case Todo: listName="todo"; break;
- // case Deprecated: listName="deprecated"; break;
- //}
RefList *refList = Doxygen::xrefLists->find(m_key);
if (refList &&
(
@@ -1465,7 +1463,9 @@ void DocXRefItem::parse()
docParserPopContext();
}
}
+ return TRUE;
}
+ return FALSE;
}
//---------------------------------------------------------------------------
@@ -1699,6 +1699,7 @@ DocRef::DocRef(DocNode *parent,const QString &target) :
ASSERT(!target.isEmpty());
m_relPath = g_relPath;
SectionInfo *sec = Doxygen::sectionDict[target];
+ //printf("DocRef::DocRef(target=%s) sec=%p\n",target.data(),sec);
if (sec) // ref to section or anchor
{
m_text = sec->title;
@@ -1709,6 +1710,8 @@ DocRef::DocRef(DocNode *parent,const QString &target) :
if (sec->type!=SectionInfo::Page) m_anchor = sec->label;
m_refToAnchor = sec->type==SectionInfo::Anchor;
m_refToSection = sec->type!=SectionInfo::Anchor;
+ //printf("m_text=%s,m_ref=%s,m_file=%s,m_refToAnchor=%d\n",
+ // m_text.data(),m_ref.data(),m_file.data(),m_refToAnchor);
}
else if (resolveLink(g_context,target,TRUE,&compound,/*&pageInfo,*/anchor))
{
@@ -3234,8 +3237,14 @@ int DocPara::handleXRefItem()
if (retval==RetVal_OK)
{
DocXRefItem *ref = new DocXRefItem(this,g_token->id,g_token->name);
- m_children.append(ref);
- ref->parse();
+ if (ref->parse())
+ {
+ m_children.append(ref);
+ }
+ else
+ {
+ delete ref;
+ }
}
doctokenizerYYsetStatePara();
return retval;
@@ -3329,13 +3338,13 @@ void DocPara::handleImage(const QString &cmdName)
}
doctokenizerYYsetStateFile();
tok=doctokenizerYYlex();
+ doctokenizerYYsetStatePara();
if (tok!=TK_WORD)
{
warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: unexpected token %s as the argument of %s",
tokToString(tok),cmdName.data());
return;
}
- doctokenizerYYsetStatePara();
HtmlAttribList attrList;
DocImage *img = new DocImage(this,attrList,findAndCopyImage(g_token->name,t),t);
m_children.append(img);
@@ -3353,13 +3362,13 @@ void DocPara::handleDotFile(const QString &cmdName)
}
doctokenizerYYsetStateFile();
tok=doctokenizerYYlex();
+ doctokenizerYYsetStatePara();
if (tok!=TK_WORD)
{
warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: unexpected token %s as the argument of %s",
tokToString(tok),cmdName.data());
return;
}
- doctokenizerYYsetStatePara();
QString name = g_token->name;
DocDotFile *df = new DocDotFile(this,name);
m_children.append(df);
@@ -4825,6 +4834,10 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
{
g_context = ctx->name();
}
+ else if (ctx && ctx->definitionType()==Definition::TypePage)
+ {
+ g_context = ctx->getOuterScope()->name();
+ }
else
{
g_context = "";
@@ -4904,6 +4917,7 @@ DocNode *validatingParseDoc(const char *fileName,int startLine,
g_fileName = fileName;
g_relPath = ctx ? relativePathToRoot(ctx->getOutputFileBase()) : QString("");
+ //printf("ctx->name=%s relPath=%s\n",ctx->name().data(),g_relPath.data());
g_memberDef = md;
g_nodeStack.clear();
g_styleStack.clear();
diff --git a/src/docparser.h b/src/docparser.h
index da57809..1b75451 100644
--- a/src/docparser.h
+++ b/src/docparser.h
@@ -541,16 +541,15 @@ class DocXRefItem : public CompAccept<DocXRefItem>, public DocNode
{
public:
//enum Type { Bug, Test, Todo, Deprecated };
- DocXRefItem(DocNode *parent,int id,const char *key) :
- m_parent(parent), m_id(id), m_key(key) /*, m_type(t)*/ {}
+ DocXRefItem(DocNode *parent,int id,const char *key);
Kind kind() const { return Kind_XRefItem; }
- //Type type() const { return m_type; }
QString file() const { return m_file; }
QString anchor() const { return m_anchor; }
QString title() const { return m_title; }
DocNode *parent() const { return m_parent; }
+ QString relPath() const { return m_relPath; }
void accept(DocVisitor *v) { CompAccept<DocXRefItem>::accept(this,v); }
- void parse();
+ bool parse();
private:
DocNode *m_parent;
@@ -559,6 +558,7 @@ class DocXRefItem : public CompAccept<DocXRefItem>, public DocNode
QString m_file;
QString m_anchor;
QString m_title;
+ QString m_relPath;
};
/*! @brief Node representing an image */
diff --git a/src/doctokenizer.l b/src/doctokenizer.l
index 31a315d..e445f55 100644
--- a/src/doctokenizer.l
+++ b/src/doctokenizer.l
@@ -585,6 +585,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
BEGIN(St_TitleN);
}
<St_Title>\n {
+ unput(*yytext);
return 0;
}
<St_TitleN>"&"{ID}";" { /* symbol */
@@ -680,7 +681,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
unput(*yytext);
return 0;
}
-<St_IntRef>[A-Z_a-z0-9.:#\-\+]+ {
+<St_IntRef>[A-Z_a-z0-9.:/#\-\+]+ {
g_token->name = yytext;
return TK_WORD;
}
@@ -710,7 +711,7 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
<St_Ref2>"\""|\n { /* " or \n => end of title */
return 0;
}
-<St_XRefItem>{ID} {
+<St_XRefItem>{ID} {
g_token->name=yytext;
}
<St_XRefItem>" " {
@@ -793,27 +794,27 @@ LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
g_secType = SectionInfo::Paragraph;
BEGIN(St_SecLabel2);
}
-<St_Sections>{CMD}"verbatim" {
+<St_Sections>{CMD}"verbatim"{BLANK}+ {
g_endMarker="endverbatim";
BEGIN(St_SecSkip);
}
-<St_Sections>{CMD}"dot" {
+<St_Sections>{CMD}"dot"/[^a-z_A-Z0-9] {
g_endMarker="enddot";
BEGIN(St_SecSkip);
}
-<St_Sections>{CMD}"htmlonly" {
+<St_Sections>{CMD}"htmlonly"/[^a-z_A-Z0-9] {
g_endMarker="endhtmlonly";
BEGIN(St_SecSkip);
}
-<St_Sections>{CMD}"latexonly" {
+<St_Sections>{CMD}"latexonly"/[^a-z_A-Z0-9] {
g_endMarker="endlatexonly";
BEGIN(St_SecSkip);
}
-<St_Sections>{CMD}"xmlonly" {
+<St_Sections>{CMD}"xmlonly"/[^a-z_A-Z0-9] {
g_endMarker="endxmlonly";
BEGIN(St_SecSkip);
}
-<St_Sections>{CMD}"code" {
+<St_Sections>{CMD}"code"/[^a-z_A-Z0-9] {
g_endMarker="endcode";
BEGIN(St_SecSkip);
}
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index a91a64e..78040ca 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -6497,13 +6497,14 @@ static void generatePageDocs()
outputList->endSection(si->label,si->type);
}
outputList->startTextBlock();
- outputList->parseDoc(pd->docFile(),
- pd->docLine(),
- pd->getOuterScope(),0,
- pd->documentation(),
- TRUE, // index words
- FALSE // not an example
- /*,pd->sectionDict*/);
+ outputList->parseDoc(pd->docFile(), // fileName
+ pd->docLine(), // startLine
+ pd, // context
+ 0, // memberdef
+ pd->documentation(), // docStr
+ TRUE, // index words
+ FALSE // not an example
+ );
outputList->endTextBlock();
endFile(*outputList);
//outputList->enable(OutputGenerator::Man);
@@ -6591,7 +6592,7 @@ static void generateExampleDocs()
endTitle(*outputList,n,0);
outputList->parseDoc(pd->docFile(), // file
pd->docLine(), // startLine
- pd->getOuterScope(), // context
+ pd, // context
0, // memberDef
pd->documentation()+"\n\\include "+pd->name(), // docs
TRUE, // index words
diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp
index bfb0958..189c102 100644
--- a/src/htmldocvisitor.cpp
+++ b/src/htmldocvisitor.cpp
@@ -908,7 +908,7 @@ void HtmlDocVisitor::visitPre(DocXRefItem *x)
{
if (m_hide) return;
m_t << "<dl compact><dt><b><a class=\"el\" href=\""
- << x->file() << Doxygen::htmlFileExtension << "#" << x->anchor() << "\">";
+ << x->relPath() << x->file() << Doxygen::htmlFileExtension << "#" << x->anchor() << "\">";
filter(x->title());
m_t << ":</a></b></dt><dd>";
}
diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp
index 1e5666a..ebe994c 100644
--- a/src/htmlgen.cpp
+++ b/src/htmlgen.cpp
@@ -813,11 +813,11 @@ void HtmlGenerator::endClassDiagram(ClassDiagram &d,
const char *fileName,const char *name)
{
t << "\n<p><center><img src=\""
- << fileName << ".png\" usemap=\"#" << name << "_map\""
+ << relPath << fileName << ".png\" usemap=\"#" << name << "_map\""
<< " border=\"0\" alt=\"\"></center>" << endl
<< "<map name=\"" << name << "_map\">" << endl;
- d.writeImage(t,dir,fileName);
+ d.writeImage(t,dir,relPath,fileName);
}
diff --git a/src/htmlhelp.cpp b/src/htmlhelp.cpp
index 341f825..a90a919 100644
--- a/src/htmlhelp.cpp
+++ b/src/htmlhelp.cpp
@@ -353,6 +353,7 @@ void HtmlHelp::initialize()
s_languageDict.insert("japanese-en", new QCString("0x411 Japanese"));
s_languageDict.insert("korean", new QCString("0x412 Korean"));
s_languageDict.insert("chinese", new QCString("0x804 Chinese (PRC)"));
+ s_languageDict.insert("chinese-traditional", new QCString("0x404 Chinese (Taiwan)"));
}
diff --git a/src/index.cpp b/src/index.cpp
index 6473f9a..2a12120 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -116,6 +116,7 @@ static void endIndexHierarchy(OutputList &ol,int level)
static bool g_memberIndexLetterUsed[CMHL_Total][256];
static bool g_fileIndexLetterUsed[FMHL_Total][256];
static bool g_namespaceIndexLetterUsed[NMHL_Total][256];
+static bool g_classIndexLetterUsed[CHL_Total][256];
const int maxItemsBeforeQuickIndex = 30;
@@ -886,9 +887,7 @@ void writeFileIndex(OutputList &ol)
ftvHelp->addContentsItem(TRUE,0,"files",0,ftvHelpTitle);
ftvHelp->incContentsDepth();
}
- //ol.newParagraph();
ol.parseText(theTranslator->trFileListDescription(Config_getBool("EXTRACT_ALL")));
- //ol.newParagraph();
ol.endTextBlock();
OutputNameDict outputNameDict(1009);
@@ -1196,16 +1195,58 @@ void writeAnnotatedClassList(OutputList &ol)
bool hasHtmlHelp = generateHtml && Config_getBool("GENERATE_HTMLHELP");
bool hasFtvHelp = generateHtml && Config_getBool("GENERATE_TREEVIEW");
ol.startIndexList();
- //ClassDef *cd=Doxygen::classList.first();
- //while (cd)
ClassSDict::Iterator cli(Doxygen::classSDict);
ClassDef *cd;
- for (;(cd=cli.current());++cli)
+
+ // clear index
+ for (int y=0;y<CHL_Total;y++)
+ {
+ for (int x=0;x<256;x++)
+ {
+ g_classIndexLetterUsed[y][x]=FALSE;
+ }
+ }
+
+ // see which elements are in use
+ for (cli.toFirst();(cd=cli.current());++cli)
+ {
+ if (cd->isLinkableInProject() && cd->templateMaster()==0)
+ {
+ int c = cd->displayName().at(0);
+ g_classIndexLetterUsed[CHL_All][c]=TRUE;
+ switch(cd->compoundType())
+ {
+ case ClassDef::Class:
+ g_classIndexLetterUsed[CHL_Classes][c]=TRUE;
+ break;
+ case ClassDef::Struct:
+ g_classIndexLetterUsed[CHL_Structs][c]=TRUE;
+ break;
+ case ClassDef::Union:
+ g_classIndexLetterUsed[CHL_Unions][c]=TRUE;
+ break;
+ case ClassDef::Interface:
+ g_classIndexLetterUsed[CHL_Interfaces][c]=TRUE;
+ break;
+ case ClassDef::Protocol:
+ g_classIndexLetterUsed[CHL_Protocols][c]=TRUE;
+ break;
+ case ClassDef::Category:
+ g_classIndexLetterUsed[CHL_Categories][c]=TRUE;
+ break;
+ case ClassDef::Exception:
+ g_classIndexLetterUsed[CHL_Exceptions][c]=TRUE;
+ break;
+
+ }
+ }
+ }
+
+ for (cli.toFirst();(cd=cli.current());++cli)
{
if (cd->isLinkableInProject() && cd->templateMaster()==0)
{
QCString type=cd->compoundTypeString();
- //ol.writeStartAnnoItem(type,cd->getOutputFileBase(),0,cd->displayName());
ol.startIndexKey();
ol.writeObjectLink(0,cd->getOutputFileBase(),0,cd->displayName());
ol.endIndexKey();
@@ -1216,7 +1257,7 @@ void writeAnnotatedClassList(OutputList &ol)
ol.parseDoc(
cd->briefFile(),cd->briefLine(),
cd,0,
- abbreviate(cd->briefDescription(),cd->name()),
+ abbreviate(cd->briefDescription(),cd->displayName()),
FALSE, // indexWords
FALSE // isExample
);
@@ -1709,7 +1750,7 @@ int countClassMembers(int filter)
(cd=md->getClassDef()) &&
cd->isLinkableInProject() &&
( filter==CMHL_All && !(md->isFriend() && isFriendToHide) ||
- (filter==CMHL_Functions && (md->isFunction() || md->isSlot() || md->isSignal())) ||
+ (filter==CMHL_Functions && (md->isFunction() || md->isSlot() || md->isSignal())) ||
(filter==CMHL_Variables && md->isVariable()) ||
(filter==CMHL_Typedefs && md->isTypedef()) ||
(filter==CMHL_Enums && md->isEnumerate()) ||
@@ -1769,10 +1810,6 @@ static void writeMemberIndexFiltered(OutputList &ol,
QCString title = theTranslator->trCompoundMembers();
QCString htmlHelpTitle = title;
QCString ftvHelpTitle = title;
- //if (!Config_getString("PROJECT_NAME").isEmpty()) title.prepend(Config_getString("PROJECT_NAME")+" ");
- //startTitle(ol,0);
- //ol.parseText(title);
- //endTitle(ol,0,0);
ol.writeString("<div class=\"qindex\">");
diff --git a/src/index.h b/src/index.h