Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
doxverilog
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
doxverilog
Commits
d5dec476
Commit
d5dec476
authored
Feb 08, 2010
by
dimitri
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Release-1.6.2-20100208
parent
b3ff521a
Changes
18
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
211 additions
and
238 deletions
+211
-238
INSTALL
INSTALL
+2
-2
README
README
+2
-2
configure
configure
+1
-1
code.l
src/code.l
+5
-1
definition.cpp
src/definition.cpp
+1
-3
docsets.cpp
src/docsets.cpp
+51
-52
doxygen.cpp
src/doxygen.cpp
+4
-35
htmldocvisitor.cpp
src/htmldocvisitor.cpp
+9
-16
index.cpp
src/index.cpp
+1
-1
memberdef.cpp
src/memberdef.cpp
+2
-2
pagedef.cpp
src/pagedef.cpp
+2
-2
perlmodgen.cpp
src/perlmodgen.cpp
+49
-40
pre.l
src/pre.l
+24
-43
rtfgen.cpp
src/rtfgen.cpp
+2
-2
scanner.l
src/scanner.l
+2
-1
translator_hu.h
src/translator_hu.h
+1
-1
util.cpp
src/util.cpp
+48
-32
util.h
src/util.h
+5
-2
No files found.
INSTALL
View file @
d5dec476
DOXYGEN Version 1.6.2-20100
124
DOXYGEN Version 1.6.2-20100
208
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (
24 Jan
uary 2010)
Dimitri van Heesch (
08 Febr
uary 2010)
README
View file @
d5dec476
DOXYGEN Version 1.6.2_20100
124
DOXYGEN Version 1.6.2_20100
208
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) (
24 Jan
uary 2010)
Dimitri van Heesch (dimitri@stack.nl) (
08 Febr
uary 2010)
configure
View file @
d5dec476
...
...
@@ -20,7 +20,7 @@ doxygen_version_minor=6
doxygen_version_revision
=
2
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn
=
20100
124
doxygen_version_mmn
=
20100
208
bin_dirs
=
`
echo
$PATH
|
sed
-e
"s/:/ /g"
`
...
...
src/code.l
View file @
d5dec476
...
...
@@ -1938,6 +1938,9 @@ OPERATOR {ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}
<SkipCPP>. {
g_code->codify(yytext);
}
<SkipCPP>[^\n\/\\]+ {
g_code->codify(yytext);
}
<SkipCPP>\\[\r]?\n {
codifyLines(yytext);
}
...
...
@@ -3043,6 +3046,7 @@ OPERATOR {ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}
BEGIN(g_memCallContext);
}
<*>\n({B}*"//"[!/][^\n]*\n)+ { // remove special one-line comment
if (YY_START==SkipCPP) REJECT;
if (Config_getBool("STRIP_CODE_COMMENTS"))
{
g_yyLineNr+=((QCString)yytext).contains('\n');
...
...
@@ -3147,7 +3151,7 @@ OPERATOR {ARITHOP}|{ASSIGNOP}|{LOGICOP}|{BITOP}
}
}
<*>"//"[!/][^\n]*\n { // strip special one-line comment
if (YY_START==SkipComment || YY_START==SkipString) REJECT;
if (YY_START==SkipComment || YY_START==SkipString
|| YY_START==SkipCPP
) REJECT;
if (Config_getBool("STRIP_CODE_COMMENTS"))
{
char c[2]; c[0]='\n'; c[1]=0;
...
...
src/definition.cpp
View file @
d5dec476
...
...
@@ -245,9 +245,7 @@ void Definition::addToMap(const char *name,Definition *d)
void
Definition
::
removeFromMap
(
Definition
*
d
)
{
QCString
symbolName
=
d
->
symbolName
();
int
index
=
computeQualifiedIndex
(
symbolName
);
if
(
index
!=-
1
)
symbolName
=
symbolName
.
mid
(
index
+
2
);
QString
symbolName
=
d
->
m_symbolName
;
if
(
!
symbolName
.
isEmpty
())
{
//printf("******* removing symbol `%s' (%p)\n",symbolName.data(),d);
...
...
src/docsets.cpp
View file @
d5dec476
...
...
@@ -283,13 +283,13 @@ void DocSets::addIndexItem(Definition *context,MemberDef *md,
if
(
md
)
{
if
(
!
md
->
isLinkable
())
return
;
// internal symbol
if
(
context
==
0
)
{
if
(
md
->
getGroupDef
())
context
=
md
->
getGroupDef
();
else
if
(
md
->
getFileDef
())
context
=
md
->
getFileDef
();
}
if
(
context
==
0
)
return
;
// should not happen
switch
(
md
->
memberType
())
...
...
@@ -344,7 +344,6 @@ void DocSets::addIndexItem(Definition *context,MemberDef *md,
}
writeToken
(
m_tts
,
md
,
type
,
lang
,
scope
,
md
->
anchor
());
}
}
else
if
(
context
&&
context
->
isLinkable
())
{
if
(
fd
==
0
&&
context
->
definitionType
()
==
Definition
::
TypeFile
)
...
...
src/doxygen.cpp
View file @
d5dec476
...
...
@@ -8029,7 +8029,7 @@ static void buildExampleList(EntryNav *rootNav)
{
PageDef
*
pd
=
new
PageDef
(
root
->
fileName
,
root
->
startLine
,
root
->
name
,
root
->
brief
+
root
->
doc
+
root
->
inbodyDocs
,
root
->
args
);
pd
->
setFileName
(
convertNameToFile
(
pd
->
name
()
+
"-example"
));
pd
->
setFileName
(
convertNameToFile
(
pd
->
name
()
+
"-example"
,
TRUE
,
FALSE
));
pd
->
addSectionsToDefinition
(
root
->
anchors
);
//pi->addSections(root->anchors);
...
...
@@ -8419,37 +8419,6 @@ static void readTagFile(Entry *root,const char *tl)
}
//----------------------------------------------------------------------------
// returns TRUE if the name of the file represented by `fi' matches
// one of the file patterns in the `patList' list.
static
bool
patternMatch
(
QFileInfo
*
fi
,
QStrList
*
patList
)
{
bool
found
=
FALSE
;
if
(
patList
)
{
QCString
pattern
=
patList
->
first
();
while
(
!
pattern
.
isEmpty
()
&&
!
found
)
{
int
i
=
pattern
.
find
(
'='
);
if
(
i
!=-
1
)
pattern
=
pattern
.
left
(
i
);
// strip of the extension specific filter name
#if defined(_WIN32) // windows
QRegExp
re
(
pattern
,
FALSE
,
TRUE
);
// case insensitive match
#else // unix
QRegExp
re
(
pattern
,
TRUE
,
TRUE
);
// case sensitive match
#endif
found
=
found
||
re
.
match
(
fi
->
fileName
())
!=-
1
||
re
.
match
(
fi
->
filePath
())
!=-
1
||
re
.
match
(
fi
->
absFilePath
())
!=-
1
;
//printf("Matching `%s' against pattern `%s' found=%d\n",
// fi->fileName().data(),pattern.data(),found);
pattern
=
patList
->
next
();
}
}
return
found
;
}
//----------------------------------------------------------------------------
static
void
copyStyleSheet
()
{
...
...
@@ -8659,8 +8628,8 @@ int readDir(QFileInfo *fi,
}
else
if
(
cfi
->
isFile
()
&&
(
!
Config_getBool
(
"EXCLUDE_SYMLINKS"
)
||
!
cfi
->
isSymLink
())
&&
(
patList
==
0
||
patternMatch
(
cfi
,
patList
))
&&
!
patternMatch
(
cfi
,
exclPatList
)
&&
(
patList
==
0
||
patternMatch
(
*
cfi
,
patList
))
&&
!
patternMatch
(
*
cfi
,
exclPatList
)
&&
(
killDict
==
0
||
killDict
->
find
(
cfi
->
absFilePath
())
==
0
)
)
{
...
...
@@ -8695,7 +8664,7 @@ int readDir(QFileInfo *fi,
else
if
(
recursive
&&
(
!
Config_getBool
(
"EXCLUDE_SYMLINKS"
)
||
!
cfi
->
isSymLink
())
&&
cfi
->
isDir
()
&&
cfi
->
fileName
()
!=
"."
&&
!
patternMatch
(
cfi
,
exclPatList
)
&&
!
patternMatch
(
*
cfi
,
exclPatList
)
&&
cfi
->
fileName
()
!=
".."
)
{
cfi
->
setFile
(
cfi
->
absFilePath
());
...
...
src/htmldocvisitor.cpp
View file @
d5dec476
...
...
@@ -1033,25 +1033,18 @@ void HtmlDocVisitor::visitPost(DocHtmlDescData *)
void
HtmlDocVisitor
::
visitPre
(
DocHtmlTable
*
t
)
{
if
(
m_hide
)
return
;
//bool hasBorder = FALSE;
//bool hasCellSpacing = FALSE;
//bool hasCellPadding = FALSE;
forceEndParagraph
(
t
);
//HtmlAttribListIterator li(t->attribs());
//HtmlAttrib *att;
//for (li.toFirst();(att=li.current());++li)
//{
// if (att->name=="border") hasBorder=TRUE;
// else if (att->name=="cellspacing") hasCellSpacing=TRUE;
// else if (att->name=="cellpadding") hasCellPadding=TRUE;
//}
m_t
<<
"<table class=
\"
doxtable
\"
"
<<
htmlAttribsToString
(
t
->
attribs
());
//if (!hasBorder) m_t << " border=\"1\"";
//if (!hasCellSpacing) m_t << " cellspacing=\"3\"";
//if (!hasCellPadding) m_t << " cellpadding=\"3\"";
m_t
<<
">
\n
"
;
QString
attrs
=
htmlAttribsToString
(
t
->
attribs
());
if
(
attrs
.
isEmpty
())
{
m_t
<<
"<table class=
\"
doxtable
\"
>
\n
"
;
}
else
{
m_t
<<
"<table "
<<
htmlAttribsToString
(
t
->
attribs
())
<<
">
\n
"
;
}
}
void
HtmlDocVisitor
::
visitPost
(
DocHtmlTable
*
t
)
...
...
src/index.cpp
View file @
d5dec476
...
...
@@ -1203,7 +1203,7 @@ void writeAlphabeticalClassList(OutputList &ol)
if
(
cd
->
isLinkableInProject
()
&&
cd
->
templateMaster
()
==
0
)
{
int
index
=
getPrefixIndex
(
cd
->
className
());
startLetter
=
toupper
(
cd
->
className
().
at
(
index
));
startLetter
=
toupper
(
cd
->
className
().
at
(
index
))
&
0xFF
;
// Do some sorting again, since the classes are sorted by name with
// prefix, which should be ignored really.
classesByLetter
[
startLetter
].
inSort
(
cd
);
...
...
src/memberdef.cpp
View file @
d5dec476
...
...
@@ -2687,12 +2687,12 @@ void MemberDef::addListReference(Definition *)
}
else
if
(
optimizeOutputJava
)
{
if
(
!
hideScopeNames
)
memName
.
prepend
(
pd
->
name
()
+
"."
);
if
(
!
hideScopeNames
&&
pd
!=
Doxygen
::
globalScope
)
memName
.
prepend
(
pd
->
name
()
+
"."
);
memArgs
=
argsString
();
}
else
{
if
(
!
hideScopeNames
)
memName
.
prepend
(
pd
->
name
()
+
"::"
);
if
(
!
hideScopeNames
&&
pd
!=
Doxygen
::
globalScope
)
memName
.
prepend
(
pd
->
name
()
+
"::"
);
memArgs
=
argsString
();
}
}
...
...
src/pagedef.cpp
View file @
d5dec476
...
...
@@ -71,7 +71,7 @@ void PageDef::writeDocumentation(OutputList &ol)
{
//outputList->disable(OutputGenerator::Man);
QCString
pageName
;
pageName
=
escapeCharsInString
(
name
(),
FALSE
);
pageName
=
escapeCharsInString
(
name
(),
FALSE
,
TRUE
);
startFile
(
ol
,
getOutputFileBase
(),
pageName
,
title
(),
HLI_Pages
,
TRUE
);
...
...
@@ -114,7 +114,7 @@ void PageDef::writeDocumentation(OutputList &ol)
ol
.
disable
(
OutputGenerator
::
RTF
);
SectionInfo
*
si
=
0
;
if
(
!
title
().
isEmpty
()
&&
!
name
().
isEmpty
()
&&
(
si
=
Doxygen
::
sectionDict
.
find
(
pageName
))
!=
0
)
(
si
=
Doxygen
::
sectionDict
.
find
(
name
()
))
!=
0
)
{
ol
.
startSection
(
si
->
label
,
si
->
title
,
si
->
type
);
ol
.
parseDoc
(
docFile
(),
docLine
(),
this
,
0
,
si
->
title
,
TRUE
,
FALSE
,
0
,
TRUE
,
FALSE
);
...
...
src/perlmodgen.cpp
View file @
d5dec476
...
...
@@ -565,22 +565,28 @@ void PerlModDocVisitor::visit(DocSymbol *sy)
case
DocSymbol
:
:
Apos
:
s
=
"
\\\'
"
;
break
;
case
DocSymbol
:
:
Aelig
:
symbol
=
"aelig"
;
break
;
case
DocSymbol
:
:
AElig
:
symbol
=
"AElig"
;
break
;
case
DocSymbol
:
:
Unknown
:
err
(
"Error: unknown symbol found
\n
"
);
case
DocSymbol
:
:
Unknown
:
err
(
"Error: unknown symbol found
\n
"
);
break
;
}
if
(
c
!=
0
)
{
if
(
c
!=
0
)
{
enterText
();
m_output
.
add
(
c
);
}
else
if
(
s
!=
0
)
{
}
else
if
(
s
!=
0
)
{
enterText
();
m_output
.
add
(
s
);
}
else
if
(
symbol
!=
0
)
{
}
else
if
(
symbol
!=
0
)
{
leaveText
();
openItem
(
"symbol"
);
m_output
.
addFieldQuotedString
(
"symbol"
,
symbol
);
closeItem
();
}
else
if
(
accent
!=
0
)
{
}
else
if
(
accent
!=
0
)
{
leaveText
();
openItem
(
"accent"
);
m_output
...
...
@@ -805,7 +811,7 @@ void PerlModDocVisitor::visitPre(DocSimpleSect *s)
case
DocSimpleSect
:
:
Version
:
type
=
"version"
;
break
;
case
DocSimpleSect
:
:
Since
:
type
=
"since"
;
break
;
case
DocSimpleSect
:
:
Date
:
type
=
"date"
;
break
;
case
DocSimpleSect
:
:
Note
:
type
=
"
bug
"
;
break
;
case
DocSimpleSect
:
:
Note
:
type
=
"
note
"
;
break
;
case
DocSimpleSect
:
:
Warning
:
type
=
"warning"
;
break
;
case
DocSimpleSect
:
:
Pre
:
type
=
"pre"
;
break
;
case
DocSimpleSect
:
:
Post
:
type
=
"post"
;
break
;
...
...
@@ -818,6 +824,8 @@ void PerlModDocVisitor::visitPre(DocSimpleSect *s)
err
(
"Error: unknown simple section found
\n
"
);
break
;
}
leaveText
();
m_output
.
openHash
();
openOther
();
openSubBlock
(
type
);
}
...
...
@@ -826,6 +834,7 @@ void PerlModDocVisitor::visitPost(DocSimpleSect *)
{
closeSubBlock
();
closeOther
();
m_output
.
closeHash
();
}
void
PerlModDocVisitor
::
visitPre
(
DocTitle
*
)
...
...
src/pre.l
View file @
d5dec476
...
...
@@ -195,6 +195,9 @@ static FileState *checkAndOpenFile(const QCString &fileName,bool &alreadyInclude
QFileInfo fi(fileName);
if (fi.exists() && fi.isFile())
{
static QStrList &exclPatterns = Config_getList("EXCLUDE_PATTERNS");
if (patternMatch(fi,&exclPatterns)) return 0;
QCString absName = convertToQCString(fi.absFilePath());
// global guard
...
...
@@ -243,41 +246,6 @@ static FileState *checkAndOpenFile(const QCString &fileName,bool &alreadyInclude
fs->oldFileBuf = g_inputBuf;
fs->oldFileBufPos = g_inputBufPos;
}
#if 0
QCString filterName = getFileFilter(absName);
if (!filterName.isEmpty())
{
fs->isPlainFile = FALSE;
QCString cmd = filterName+" \""+absName+"\"";
fs->filePtr=portable_popen(cmd,"r");
if (!fs->filePtr)
{
err("Error: could not execute filter %s, reason: %s\n",cmd.data(),
strerror(errno));
}
}
else
{
fs->isPlainFile = TRUE;
fs->filePtr=fopen(absName,"r");
if (!fs->filePtr)
{
err("Error: could not open file %s for reading, reason: %s \n",
absName.data(),strerror(errno));
}
}
if (!fs->filePtr) // error -> cleanup
{
delete fs;
fs=0;
}
else
{
fs->oldYYin = preYYin;
}
#endif
}
return fs;
}
...
...
@@ -1874,7 +1842,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
}
<EndImport>. {
}
<DefName>{ID}/"(" {
<DefName>{ID}/"(" {
// define with argument
//printf("Define() `%s'\n",yytext);
g_argDict = new QDict<int>(31);
g_argDict->setAutoDelete(TRUE);
...
...
@@ -1886,7 +1854,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
g_defVarArgs = FALSE;
BEGIN(DefineArg);
}
<DefName>{ID}/{B}* {
<DefName>{ID}/{B}* {
// define with content
//printf("Define `%s'\n",yytext);
g_argDict = 0;
g_defArgs = -1;
...
...
@@ -1895,13 +1863,26 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'"))
g_defLitText.resize(0);
g_defName = yytext;
g_defVarArgs = FALSE;
QCString tmp=(QCString)"#define "+g_defName+g_defArgsStr;
//QCString tmp=(QCString)"#define "+g_defName+g_defArgsStr;
//outputArray(tmp.data(),tmp.length());
//g_quoteArg=FALSE;
//g_insideComment=FALSE;
//BEGIN(DefineText);
if ( g_defName!=g_lastGuardName || !g_expectGuard)
{ // define may appear in the output
QCString tmp=(QCString)"#define "+g_defName;
outputArray(tmp.data(),tmp.length());
g_quoteArg=FALSE;
g_insideComment=FALSE;
BEGIN(DefineText);
}
<DefName>{ID}/{B}*"\n" { // bare define
else // define is a guard => hide
{
g_lastGuardName.resize(0);
BEGIN(Start);
}
}
<DefName>{ID}/{B}*"\n" { // empty define
g_argDict = 0;
g_defArgs = -1;
g_defName = yytext;
...
...
src/rtfgen.cpp
View file @
d5dec476
...
...
@@ -633,11 +633,11 @@ void RTFGenerator::endIndexSection(IndexSections is)
t
<<
"
\\
par "
<<
rtf_Style_Reset
<<
endl
;
if
(
fortranOpt
)
{
t
<<
"{
\\
tc
\\
v "
<<
theTranslator
->
trModulesIndex
()
<<
"}"
<<
endl
;
t
<<
"{
\\
tc
\\
v "
<<
theTranslator
->
trModulesIndex
()
<<
"}"
<<
endl
;
}
else
{
t
<<
"{
\\
tc
\\
v "
<<
theTranslator
->
trNamespaceIndex
()
<<
"}"
<<
endl
;
t
<<
"{
\\
tc
\\
v "
<<
theTranslator
->
trNamespaceIndex
()
<<
"}"
<<
endl
;
}
t
<<
"{
\\
field
\\
fldedit{
\\
*
\\
fldinst INCLUDETEXT
\"
namespaces.rtf
\"
\\\\
*MERGEFORMAT}{
\\
fldrslt includedstuff}}
\n
"
;
...
...
src/scanner.l
View file @
d5dec476
...
...
@@ -3197,7 +3197,8 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
}
}
//printf("msName=%s current->name=%s\n",msName.data(),current->name.data());
if (!msName.isEmpty() && msName!=current->name) // skip typedef T {} T;
if (!msName.isEmpty()
/*&& msName!=current->name*/) // skip typedef T {} T;, removed due to bug608493
{
static bool typedefHidesStruct = Config_getBool("TYPEDEF_HIDES_STRUCT");
// case 1: typedef struct _S { ... } S_t;
...
...
src/translator_hu.h
View file @
d5dec476
...
...
@@ -1185,7 +1185,7 @@ class TranslatorHungarian : public TranslatorAdapter_1_4_6
*/
virtual
QCString
trRTFansicp
()
{
return
"125
2
"
;
return
"125
0
"
;
}
...
...
src/util.cpp
View file @
d5dec476
...
...
@@ -2076,6 +2076,7 @@ QCString getFileFilter(const char* name)
return
""
;
}
#if 0
QCString recodeString(const QCString &str,const char *fromEncoding,const char *toEncoding)
{
QCString inputEncoding = fromEncoding;
...
...
@@ -2112,6 +2113,7 @@ QCString recodeString(const QCString &str,const char *fromEncoding,const char *t
portable_iconv_close(cd);
return output;
}
#endif
QCString
transcodeCharacterStringToUTF8
(
const
QCString
&
input
)
...
...
@@ -4749,7 +4751,7 @@ bool hasVisibleRoot(BaseClassList *bcl)
//----------------------------------------------------------------------
QCString
escapeCharsInString
(
const
char
*
name
,
bool
allowDots
)
QCString
escapeCharsInString
(
const
char
*
name
,
bool
allowDots
,
bool
allowUnderscore
)
{
static
bool
caseSenseNames
=
Config_getBool
(
"CASE_SENSE_NAMES"
);
QCString
result
;
...
...
@@ -4759,7 +4761,7 @@ QCString escapeCharsInString(const char *name,bool allowDots)
{
switch
(
c
)
{
case
'_'
:
result
+=
"__"
;
break
;
case
'_'
:
if
(
allowUnderscore
)
result
+=
"_"
;
else
result
+=
"__"
;
break
;
case
'-'
:
result
+=
"-"
;
break
;
case
':'
:
result
+=
"_1"
;
break
;
case
'/'
:
result
+=
"_2"
;
break
;
...
...
@@ -4813,7 +4815,7 @@ QCString escapeCharsInString(const char *name,bool allowDots)
* given its name, which could be a class name with template
* arguments, so special characters need to be escaped.
*/
QCString
convertNameToFile
(
const
char
*
name
,
bool
allowDots
)
QCString
convertNameToFile
(
const
char
*
name
,
bool
allowDots
,
bool
allowUnderscore
)
{
static
bool
shortNames
=
Config_getBool
(
"SHORT_NAMES"
);
static
bool
createSubdirs
=
Config_getBool
(
"CREATE_SUBDIRS"
);
...
...
@@ -4839,7 +4841,7 @@ QCString convertNameToFile(const char *name,bool allowDots)
}
else
// long names
{
result
=
escapeCharsInString
(
name
,
allowDots
);
result
=
escapeCharsInString
(
name
,
allowDots
,
allowUnderscore
);
int
resultLen
=
result
.
length
();
if
(
resultLen
>=
128
)
// prevent names that cannot be created!
{
...
...
@@ -5787,7 +5789,7 @@ PageDef *addRelatedPage(const char *name,const QCString &ptitle,
pd
->
setReference
(
tagInfo
->
tagName
);
}
pd
->
setFileName
(
convertNameToFile
(
pd
->
name
()));
pd
->
setFileName
(
convertNameToFile
(
pd
->
name
()
,
TRUE
,
FALSE
));
//printf("Appending page `%s'\n",baseName.data());
Doxygen
::
pageSDict
->
append
(
baseName
,
pd
);
...
...
@@ -5856,28 +5858,6 @@ void addRefItem(const QList<ListItemInfo> *sli,
refList
->
insertIntoList
(
key
,
item
);
#if 0
//printf("anchor=%s written=%d\n",item->listAnchor.data(),item->written);
//if (item->written) return;
QCString doc;
doc = "\\anchor ";
doc += item->listAnchor;
doc += " <dl><dt>";
doc += prefix;
doc += " \\_internalref ";
doc += name;
doc += " \"";
doc += title;
doc += "\"";
if (args) doc += args;
doc += "</dt>\n<dd>";
doc += item->text;
doc += "</dd></dl>\n";
addRelatedPage(refList->listName(),refList->pageTitle(),doc,0,refList->listName(),1,0,0,0);
//item->written=TRUE;
#endif
}
}
}
...
...
@@ -6843,7 +6823,7 @@ void stackTrace()
#endif
}
static
int
transcodeCharacterBuffer
(
BufStr
&
srcBuf
,
int
size
,
static
int
transcodeCharacterBuffer
(
const
char
*
fileName
,
BufStr
&
srcBuf
,
int
size
,
const
char
*
inputEncoding
,
const
char
*
outputEncoding
)
{
if
(
inputEncoding
==
0
||
outputEncoding
==
0
)
return
size
;
...
...
@@ -6872,8 +6852,8 @@ static int transcodeCharacterBuffer(BufStr &srcBuf,int size,
}
else
{
err
(
"Error: failed to translate characters from %s to %s: check INPUT_ENCODING
\n
"
,
inputEncoding
,
outputEncoding
);
err
(
"
%s:
Error: failed to translate characters from %s to %s: check INPUT_ENCODING
\n
"
,
fileName
,
inputEncoding
,
outputEncoding
);
exit
(
1
);
}
portable_iconv_close
(
cd
);
...
...
@@ -6936,7 +6916,7 @@ bool readInputFile(const char *fileName,BufStr &inBuf)
)
)
// UCS-2 encoded file
{
transcodeCharacterBuffer
(
inBuf
,
inBuf
.
curPos
(),
transcodeCharacterBuffer
(
fileName
,
inBuf
,
inBuf
.
curPos
(),
"UCS-2"
,
"UTF-8"
);
}
else
if
(
inBuf
.
size
()
>=
3
&&
...
...
@@ -6951,7 +6931,7 @@ bool readInputFile(const char *fileName,BufStr &inBuf)
else
// transcode according to the INPUT_ENCODING setting
{
// do character transcoding if needed.
transcodeCharacterBuffer
(
inBuf
,
inBuf
.
curPos
(),
transcodeCharacterBuffer
(
fileName
,
inBuf
,
inBuf
.
curPos
(),
Config_getString
(
"INPUT_ENCODING"
),
"UTF-8"
);
}
...
...
@@ -6986,3 +6966,39 @@ QCString filterTitle(const QCString &title)
return
tf
;
}
//----------------------------------------------------------------------------
// returns TRUE if the name of the file represented by `fi' matches
// one of the file patterns in the `patList' list.
bool
patternMatch
(
const
QFileInfo
&
fi
,
const
QStrList
*
patList
)
{
bool
found
=
FALSE
;
if
(
patList
)
{
QStrListIterator
it
(
*
patList
);
QCString
pattern
;
for
(
it
.
toFirst
();(
pattern
=
it
.
current
());
++
it
)
{
if
(
!
pattern
.
isEmpty
()
&&
!
found
)
{
int
i
=
pattern
.
find
(
'='
);
if
(
i
!=-
1
)
pattern
=
pattern
.
left
(
i
);
// strip of the extension specific filter name
#if defined(_WIN32) || defined(__MACOSX__) // Windows or MacOSX
QRegExp
re
(
pattern
,
FALSE
,
TRUE
);
// case insensitive match
#else // unix
QRegExp
re
(
pattern
,
TRUE
,
TRUE
);
// case sensitive match
#endif
found
=
found
||
re
.
match
(
fi
.
fileName
())
!=-
1
||
re
.
match
(
fi
.
filePath
())
!=-
1
||
re
.
match
(
fi
.
absFilePath
())
!=-
1
;
//printf("Matching `%s' against pattern `%s' found=%d\n",
// fi->fileName().data(),pattern.data(),found);
}
}
}
return
found
;
}
src/util.h
View file @
d5dec476
...
...
@@ -54,6 +54,8 @@ struct SectionInfo;
class
QDir
;
class
Definition
;
class
BufStr
;
class
QFileInfo
;
class
QStrList
;
//--------------------------------------------------------------------
...
...
@@ -234,7 +236,7 @@ bool hasVisibleRoot(BaseClassList *bcl);
int
minClassDistance
(
const
ClassDef
*
cd
,
const
ClassDef
*
bcd
,
int
level
=
0
);
QCString
convertNameToFile
(
const
char
*
name
,
bool
allowDots
=
FALSE
);
QCString
convertNameToFile
(
const
char
*
name
,
bool
allowDots
=
FALSE
,
bool
allowUnderscore
=
FALSE
);
void
extractNamespaceName
(
const
QCString
&
scopeName
,
QCString
&
className
,
QCString
&
namespaceName
,
...
...
@@ -291,7 +293,7 @@ PageDef *addRelatedPage(const char *name,const QCString &ptitle,
TagInfo
*
tagInfo
=
0
);
QCString
escapeCharsInString
(
const
char
*
name
,
bool
allowDots
);
QCString
escapeCharsInString
(
const
char
*
name
,
bool
allowDots
,
bool
allowUnderscore
=
FALSE
);
void
addGroupListToTitle
(
OutputList
&
ol
,
Definition
*
d
);
...
...
@@ -368,6 +370,7 @@ void stackTrace();
bool
readInputFile
(
const
char
*
fileName
,
BufStr
&
inBuf
);
QCString
filterTitle
(
const
QCString
&
title
);
bool
patternMatch
(
const
QFileInfo
&
fi
,
const
QStrList
*
patList
);
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment