Commit 20bc00a8 authored by Dimitri van Heesch's avatar Dimitri van Heesch

Release-1.7.1-20100822

parent 4ad0d24c
DOXYGEN Version 1.7.1-20100728
DOXYGEN Version 1.7.1-20100822
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (28 July 2010)
Dimitri van Heesch (22 August 2010)
DOXYGEN Version 1.7.1_20100728
DOXYGEN Version 1.7.1_20100822
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) (28 July 2010)
Dimitri van Heesch (dimitri@stack.nl) (22 August 2010)
......@@ -20,7 +20,7 @@ doxygen_version_minor=7
doxygen_version_revision=1
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20100728
doxygen_version_mmn=20100822
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......
......@@ -634,7 +634,7 @@ Structural indicators
\ref cmdprivate "\\private".
<hr>
\section cmdname \\name (header)
\section cmdname \\name [(header)]
\addindex \\name
......
......@@ -1542,8 +1542,10 @@ and does not have live searching capabilities.
\anchor cfg_enum_values_per_line
<dt>\c ENUM_VALUES_PER_LINE <dd>
\addindex ENUM_VALUES_PER_LINE
This tag can be used to set the number of enum values (range [1..20])
that doxygen will group on one line in the generated HTML documentation.
This tag can be used to set the number of enum values (range [0,1..20])
that doxygen will group on one line in the generated HTML documentation.
Note that a value of 0 will completely suppress the enum values from
appearing in the overview section.
\anchor cfg_generate_treeview
<dt>\c GENERATE_TREEVIEW <dd>
......
......@@ -73,7 +73,7 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Catalan</td>
<td>Maximiliano Pin<br/>Albert Mora</td>
<td>max dot pin at bitroit dot com<br/>[unreachable]</td>
<td>max dot pin at bitroit dot com<br/><span style="color: red; background-color: yellow">[unreachable]</span></td>
<td>1.6.3</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -96,13 +96,13 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Czech</td>
<td>Petr P&#x0159;ikryl</td>
<td>Petr Přikryl</td>
<td>prikrylp at skil dot cz</td>
<td>up-to-date</td>
</tr>
<tr bgcolor="#ffffff">
<td>Danish</td>
<td>Erik S&oslash;e S&oslash;rensen</td>
<td>Erik Søe Sørensen</td>
<td>eriksoe+doxygen at daimi dot au dot dk</td>
<td>1.5.4</td>
</tr>
......@@ -150,8 +150,8 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Hungarian</td>
<td>&Aacute;kos Kiss<br/>F&ouml;ldv&aacute;ri Gy&ouml;rgy</td>
<td>akiss at users dot sourceforge dot net<br/>[unreachable]</td>
<td>Ákos Kiss<br/>Földvári György</td>
<td>akiss at users dot sourceforge dot net<br/><span style="color: red; background-color: yellow">[unreachable]</span></td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -169,7 +169,7 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Japanese</td>
<td>Hiroki Iseri<br/>Ryunosuke Satoh<br/>Kenji Nagamatsu<br/>Iwasa Kazmi</td>
<td>goyoki at gmail dot com<br/>sun594 at hotmail dot com<br/>naga at joyful dot club dot ne dot jp<br/>[unreachable]</td>
<td>goyoki at gmail dot com<br/>sun594 at hotmail dot com<br/>naga at joyful dot club dot ne dot jp<br/><span style="color: red; background-color: yellow">[unreachable]</span></td>
<td>1.6.0</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -181,8 +181,8 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Korean</td>
<td>Kim Taedong<br/>SooYoung Jung<br/>Richard Kim</td>
<td>fly1004 at gmail dot com<br/>jung5000 at gmail dot com<br/>[unreachable]</td>
<td>1.6.3</td>
<td>fly1004 at gmail dot com<br/>jung5000 at gmail dot com<br/><span style="color: red; background-color: yellow">[unreachable]</span></td>
<td>up-to-date</td>
</tr>
<tr bgcolor="#ffffff">
<td>KoreanEn</td>
......@@ -193,7 +193,7 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Lithuanian</td>
<td>Tomas Simonaitis<br/>Mindaugas Radzius<br/>Aidas Berukstis<br/>-- contact lost --</td>
<td>[unreachable]<br/>[unreachable]<br/>[unreachable]<br/></td>
<td><span style="color: red; background-color: yellow">[unreachable]</span><br/><span style="color: red; background-color: yellow">[unreachable]</span><br/><span style="color: red; background-color: yellow">[unreachable]</span><br/><span style="color: red; background-color: yellow">[Please, try to help to find someone.]</span></td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -217,13 +217,13 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Polish</td>
<td>Piotr Kaminski<br/>Grzegorz Kowal<br/>Krzysztof Kral</td>
<td>[unreachable]<br/>[unreachable]<br/>krzysztof dot kral at gmail dot com</td>
<td><span style="color: red; background-color: yellow">[unreachable]</span><br/><span style="color: red; background-color: yellow">[unreachable]</span><br/>krzysztof dot kral at gmail dot com</td>
<td>1.6.3</td>
</tr>
<tr bgcolor="#ffffff">
<td>Portuguese</td>
<td>Rui Godinho Lopes</td>
<td>[unreachable]</td>
<td><span style="color: red; background-color: yellow">[resigned]</span></td>
<td>1.3.3</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -241,7 +241,7 @@ when the translator was updated.
<tr bgcolor="#ffffff">
<td>Serbian</td>
<td>Dejan Milosavljevic</td>
<td>[unreachable]</td>
<td><span style="color: red; background-color: yellow">[unreachable]</span></td>
<td>1.6.0</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -252,20 +252,20 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Slovak</td>
<td>-- searching for the maintainer --</td>
<td></td>
<td>Kali+Laco Švec<br/>Petr Přikryl</td>
<td>the Slovak language advisors<br/>prikrylp at skil dot cz</td>
<td>up-to-date</td>
</tr>
<tr bgcolor="#ffffff">
<td>Slovene</td>
<td>Matja&#x017e; Ostrover&#x0161;nik</td>
<td>Matjaž Ostroveršnik</td>
<td>matjaz dot ostroversnik at ostri dot org</td>
<td>1.4.6</td>
</tr>
<tr bgcolor="#ffffff">
<td>Spanish</td>
<td>Bartomeu<br/>Francisco Oltra Thennet<br/>David Vaquero</td>
<td>bartomeu at loteria3cornella dot com<br/>[unreachable]<br/>david at grupoikusnet dot com</td>
<td>bartomeu at loteria3cornella dot com<br/><span style="color: red; background-color: yellow">[unreachable]</span><br/>david at grupoikusnet dot com</td>
<td>up-to-date</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -282,8 +282,8 @@ when the translator was updated.
</tr>
<tr bgcolor="#ffffff">
<td>Ukrainian</td>
<td>-- searching for the maintainer --</td>
<td></td>
<td>Olexij Tkatchenko<br/>-- searching for the maintainer --</td>
<td><span style="color: red; background-color: yellow">[resigned]</span><br/><span style="color: red; background-color: yellow">[Please, try to help to find someone.]</span></td>
<td>1.4.1</td>
</tr>
<tr bgcolor="#ffffff">
......@@ -325,9 +325,9 @@ when the translator was updated.
\hline
Croatian & Boris Bralo & {\tt\tiny boris dot bralo at gmail dot com} & up-to-date \\
\hline
Czech & Petr P\v{r}ikryl & {\tt\tiny prikrylp at skil dot cz} & up-to-date \\
Czech & Petr Přikryl & {\tt\tiny prikrylp at skil dot cz} & up-to-date \\
\hline
Danish & Erik S\o{}e S\o{}rensen & {\tt\tiny eriksoe+doxygen at daimi dot au dot dk} & 1.5.4 \\
Danish & Erik Søe Sørensen & {\tt\tiny eriksoe+doxygen at daimi dot au dot dk} & 1.5.4 \\
\hline
Dutch & Dimitri van Heesch & {\tt\tiny dimitri at stack dot nl} & up-to-date \\
\hline
......@@ -343,8 +343,8 @@ when the translator was updated.
\hline
Greek & Paul Gessos & {\tt\tiny gessos dot paul at yahoo dot gr} & up-to-date \\
\hline
Hungarian & \'{A}kos Kiss & {\tt\tiny akiss at users dot sourceforge dot net} & 1.4.6 \\
~ & F\"{o}ldv\'{a}ri Gy\"{o}rgy & {\tt\tiny [unreachable] foldvari lost at cyberspace} & ~ \\
Hungarian & Ákos Kiss & {\tt\tiny akiss at users dot sourceforge dot net} & 1.4.6 \\
~ & Földvári György & {\tt\tiny [unreachable] foldvari lost at cyberspace} & ~ \\
\hline
Indonesian & Hendy Irawan & {\tt\tiny ceefour at gauldong dot net} & 1.4.6 \\
\hline
......@@ -358,7 +358,7 @@ when the translator was updated.
\hline
JapaneseEn & see the Japanese language & {\tt\tiny ~} & English based \\
\hline
Korean & Kim Taedong & {\tt\tiny fly1004 at gmail dot com} & 1.6.3 \\
Korean & Kim Taedong & {\tt\tiny fly1004 at gmail dot com} & up-to-date \\
~ & SooYoung Jung & {\tt\tiny jung5000 at gmail dot com} & ~ \\
~ & Richard Kim & {\tt\tiny [unreachable] ryk at dspwiz dot com} & ~ \\
\hline
......@@ -367,7 +367,7 @@ when the translator was updated.
Lithuanian & Tomas Simonaitis & {\tt\tiny [unreachable] haden at homelan dot lt} & 1.4.6 \\
~ & Mindaugas Radzius & {\tt\tiny [unreachable] mindaugasradzius at takas dot lt} & ~ \\
~ & Aidas Berukstis & {\tt\tiny [unreachable] aidasber at takas dot lt} & ~ \\
~ & -- contact lost -- & {\tt\tiny } & ~ \\
~ & -- contact lost -- & {\tt\tiny [Please, try to help to find someone.]} & ~ \\
\hline
Macedonian & Slave Jovanovski & {\tt\tiny slavejovanovski at yahoo dot com} & 1.6.0 \\
\hline
......@@ -376,10 +376,10 @@ when the translator was updated.
Persian & Ali Nadalizadeh & {\tt\tiny nadalizadeh at gmail dot com} & up-to-date \\
\hline
Polish & Piotr Kaminski & {\tt\tiny [unreachable] Piotr dot Kaminski at ctm dot gdynia dot pl} & 1.6.3 \\
~ & Grzegorz Kowal & {\tt\tiny [unreachable] g\_kowal at poczta dot onet dot pl} & ~ \\
~ & Grzegorz Kowal & {\tt\tiny [unreachable] g_kowal at poczta dot onet dot pl} & ~ \\
~ & Krzysztof Kral & {\tt\tiny krzysztof dot kral at gmail dot com} & ~ \\
\hline
Portuguese & Rui Godinho Lopes & {\tt\tiny [unreachable] ruiglopes at yahoo dot com} & 1.3.3 \\
Portuguese & Rui Godinho Lopes & {\tt\tiny [resigned] rgl at ruilopes dot com} & 1.3.3 \\
\hline
Romanian & Ionut Dumitrascu & {\tt\tiny reddumy at yahoo dot com} & 1.6.0 \\
~ & Alexandru Iosup & {\tt\tiny aiosup at yahoo dot com} & ~ \\
......@@ -390,9 +390,10 @@ when the translator was updated.
\hline
SerbianCyrilic & Nedeljko Stefanovic & {\tt\tiny stenedjo at yahoo dot com} & 1.6.0 \\
\hline
Slovak & -- searching for the maintainer -- & {\tt\tiny } & up-to-date \\
Slovak & Kali+Laco Švec & {\tt\tiny the Slovak language advisors} & up-to-date \\
~ & Petr Přikryl & {\tt\tiny prikrylp at skil dot cz} & ~ \\
\hline
Slovene & Matja\v{z} Ostrover\v{s}nik & {\tt\tiny matjaz dot ostroversnik at ostri dot org} & 1.4.6 \\
Slovene & Matjaž Ostroveršnik & {\tt\tiny matjaz dot ostroversnik at ostri dot org} & 1.4.6 \\
\hline
Spanish & Bartomeu & {\tt\tiny bartomeu at loteria3cornella dot com} & up-to-date \\
~ & Francisco Oltra Thennet & {\tt\tiny [unreachable] foltra at puc dot cl} & ~ \\
......@@ -402,7 +403,8 @@ when the translator was updated.
\hline
Turkish & Emin Ilker Cetinbas & {\tt\tiny niw3 at yahoo dot com} & up-to-date \\
\hline
Ukrainian & -- searching for the maintainer -- & {\tt\tiny } & 1.4.1 \\
Ukrainian & Olexij Tkatchenko & {\tt\tiny [resigned] olexij at tkatchenko dot com} & 1.4.1 \\
~ & -- searching for the maintainer -- & {\tt\tiny [Please, try to help to find someone.]} & ~ \\
\hline
Vietnamese & Dang Minh Tuan & {\tt\tiny tuanvietkey at gmail dot com} & 1.6.0 \\
\hline
......
% $Id$
%
% Comments start with % sign at the beginning.
% XML entities like &auml; are used for special characters.
% The text is in UTF-8. Comments start with % sign at the beginning.
% There is one record for each language. The records are separated
% by the empty line and they do not contain empty lines.
% First line of the record identifies the translator class for the language.
% The following one or more lines contain information about
% the maintainer(s) for the language (one line, one maintainer)
% in the form: <readable name><colon><e-mail>
% If the <e-mail> is prefixed [unreachable] it is not displayed in the table
% If the <e-mail> is prefixed [some_text] it is not displayed in the table
% of maintainers in the Doxygen documentation, nor it is used when building
% the mailto.txt by translator.py.
% the mailto.txt by translator.py. The mark is displayed in the documentation
% instead.
TranslatorAfrikaans
Johan Prinsloo: johan at zippysnoek dot com
......@@ -37,10 +37,10 @@ TranslatorCroatian
Boris Bralo: boris dot bralo at gmail dot com
TranslatorCzech
Petr P&rcaron;ikryl: prikrylp at skil dot cz
Petr Přikryl: prikrylp at skil dot cz
TranslatorDanish
Erik S&oslash;e S&oslash;rensen: eriksoe+doxygen at daimi dot au dot dk
Erik Søe Sørensen: eriksoe+doxygen at daimi dot au dot dk
TranslatorDutch
Dimitri van Heesch: dimitri at stack dot nl
......@@ -64,8 +64,8 @@ TranslatorGreek
Paul Gessos: gessos dot paul at yahoo dot gr
TranslatorHungarian
&Aacute;kos Kiss: akiss at users dot sourceforge dot net
F&ouml;ldv&aacute;ri Gy&ouml;rgy: [unreachable] foldvari lost at cyberspace
Ákos Kiss: akiss at users dot sourceforge dot net
Földvári György: [unreachable] foldvari lost at cyberspace
TranslatorIndonesian
Hendy Irawan: ceefour at gauldong dot net
......@@ -89,7 +89,7 @@ TranslatorLithuanian
Tomas Simonaitis: [unreachable] haden at homelan dot lt
Mindaugas Radzius: [unreachable] mindaugasradzius at takas dot lt
Aidas Berukstis: [unreachable] aidasber at takas dot lt
-- contact lost --:
-- contact lost --: [Please, try to help to find someone.]
TranslatorNorwegian
Lars Erik Jordet: lejordet at gmail dot com
......@@ -106,7 +106,7 @@ Grzegorz Kowal: [unreachable] g_kowal at poczta dot onet dot pl
Krzysztof Kral: krzysztof dot kral at gmail dot com
TranslatorPortuguese
Rui Godinho Lopes: [unreachable] ruiglopes at yahoo dot com
Rui Godinho Lopes: [resigned] rgl at ruilopes dot com
TranslatorRomanian
Ionut Dumitrascu: reddumy at yahoo dot com
......@@ -122,11 +122,12 @@ TranslatorSerbianCyrilic
Nedeljko Stefanovic: stenedjo at yahoo dot com
TranslatorSlovak
% Stanislav Kudl&aacute;&ccaron;: [unreachable] skudlac at pobox dot sk
-- searching for the maintainer --:
% Stanislav Kudláč: [resigned] skudlac at pobox dot sk
Kali+Laco Švec: the Slovak language advisors
Petr Přikryl: prikrylp at skil dot cz
TranslatorSlovene
Matja&zcaron; Ostrover&scaron;nik: matjaz dot ostroversnik at ostri dot org
Matjaž Ostroveršnik: matjaz dot ostroversnik at ostri dot org
TranslatorSpanish
Bartomeu: bartomeu at loteria3cornella dot com
......@@ -136,13 +137,13 @@ David Vaquero: david at grupoikusnet dot com
TranslatorSwedish
Mikael Hallin: mikaelhallin at yahoo dot se
TranslatorTurkish
Emin Ilker Cetinbas: niw3 at yahoo dot com
TranslatorUkrainian
% (resigned) Olexij Tkatchenko: olexij at tkatchenko dot com
-- searching for the maintainer --:
Olexij Tkatchenko: [resigned] olexij at tkatchenko dot com
-- searching for the maintainer --: [Please, try to help to find someone.]
TranslatorVietnamese
Dang Minh Tuan: tuanvietkey at gmail dot com
TranslatorTurkish
Emin Ilker Cetinbas: niw3 at yahoo dot com
This diff is collapsed.
......@@ -10,7 +10,7 @@ Persian, Polish, Portuguese, Romanian, Russian, Serbian,
SerbianCyrilic, Slovak, Slovene, Spanish, Swedish, Turkish, Ukrainian,
and Vietnamese.
Of them, 10 translators are up-to-date, 28 translators are based on
Of them, 11 translators are up-to-date, 27 translators are based on
some adapter class, and 2 are English based.
----------------------------------------------------------------------
......@@ -25,6 +25,7 @@ still may be some details listed even for them:
TranslatorDutch
TranslatorEnglish
TranslatorGreek
TranslatorKorean -- Change the base class to Translator.
TranslatorPersian -- The MAX_DOT_GRAPH_HEIGHT found in trLegendDocs()
TranslatorSlovak
TranslatorSpanish -- The MAX_DOT_GRAPH_HEIGHT found in trLegendDocs()
......@@ -37,9 +38,6 @@ version when the class was last updated and number of methods that
must be implemented to become up-to-date:
TranslatorPolish 1.6.3 4 methods to implement (1 %)
TranslatorKorean 1.6.3 4 methods to implement (1 %)
Note: Reimplementation using UTF-8 suggested.
TranslatorGerman 1.6.3 4 methods to implement (1 %)
TranslatorFrench 1.6.3 4 methods to implement (1 %)
Note: Reimplementation using UTF-8 suggested.
......@@ -504,17 +502,10 @@ TranslatorJapaneseEn (TranslatorEnglish) 220 methods to implement (97 %)
virtual QCString latexLanguageSupportCommand()
TranslatorKorean (TranslatorAdapter_1_6_3) 4 methods to implement (1 %)
TranslatorKorean (TranslatorAdapter_1_6_3)
----------------
Implements 221 of the required methods (98 %).
Missing methods (should be implemented):
virtual QCString trDateTime(int year, int month, int day, int dayOfWeek, int hour, int minutes, int seconds, bool includeTime)
virtual QCString trFileIn(const char * name)
virtual QCString trDirDependency(const char * name)
virtual QCString trIncludesFileIn(const char * name)
Implements 225 of the required methods (100 %).
TranslatorKoreanEn (TranslatorEnglish) 220 methods to implement (97 %)
......
......@@ -118,7 +118,7 @@ bool QGString::resize( uint newlen )
DBG_STR(("%p: 2.QGString::resize() %d:%s\n",this,m_len,m_data?m_data:"<none>"));
return FALSE;
}
m_data[newlen-1]='\0';
m_data[newlen]='\0';
m_len = qstrlen(m_data);
DBG_STR(("%p: 3.QGString::resize() %d:%s\n",this,m_len,m_data?m_data:"<none>"));
return TRUE;
......
......@@ -2163,7 +2163,7 @@ bool ClassDef::hasDocumentation() const
bool ClassDef::isBaseClass(ClassDef *bcd, bool followInstances,int level)
{
bool found=FALSE;
//printf("isBaseClass(cd=%s) looking for %s\n",cd->name().data(),bcd->name().data());
//printf("isBaseClass(cd=%s) looking for %s\n",name().data(),bcd->name().data());
if (level>256)
{
err("Possible recursive class relation while inside %s and looking for %s\n",qPrint(name()),qPrint(bcd->name()));
......@@ -2172,20 +2172,18 @@ bool ClassDef::isBaseClass(ClassDef *bcd, bool followInstances,int level)
}
if (baseClasses())
{
//BaseClassListIterator bcli(*baseClasses());
//for ( ; bcli.current() && !found ; ++bcli)
BaseClassDef *bcdi = baseClasses()->first();
while (bcdi)
// Beware: trying to optimise the iterator away using ->first() & ->next()
// causes bug 625531
BaseClassListIterator bcli(*baseClasses());
for ( ; bcli.current() && !found ; ++bcli)
{
//ClassDef *ccd=bcli.current()->classDef;
ClassDef *ccd=bcdi->classDef;
ClassDef *ccd=bcli.current()->classDef;
if (!followInstances && ccd->templateMaster()) ccd=ccd->templateMaster();
//printf("isBaseClass() baseclass %s\n",ccd->name().data());
if (ccd==bcd)
found=TRUE;
else
found=ccd->isBaseClass(bcd,followInstances,level+1);
bcdi = baseClasses()->next();
}
}
return found;
......
......@@ -3408,7 +3408,8 @@ void parseCCode(CodeOutputInterface &od,const char *className,const QCString &s,
g_bracketCount = 0;
if (!g_exampleName.isEmpty())
{
g_exampleFile = convertNameToFile(g_exampleName+"-example");
g_exampleFile = convertNameToFile(g_exampleName+"-example",FALSE,TRUE);
//printf("g_exampleFile=%s\n",g_exampleFile.data());
}
g_includeCodeFragment = inlineFragment;
//printf("** exBlock=%d exName=%s include=%d\n",exBlock,exName,inlineFragment);
......
......@@ -468,6 +468,17 @@ void replaceComment(int offset);
<Verbatim,VerbatimCode>\n { /* new line in verbatim block */
copyToOutput(yytext,yyleng);
}
<Verbatim,VerbatimCode>^[ \t]*"///" {
if (g_blockName=="dot" || g_blockName=="msc" || g_blockName.at(0)=='f')
{
// see bug 487871, strip /// from dot images and formulas.
copyToOutput(" ",3);
}
else // even slashes are verbatim (e.g. \verbatim, \code)
{
REJECT;
}
}
<Verbatim,VerbatimCode>. { /* any other character */
copyToOutput(yytext,yyleng);
}
......
......@@ -1260,7 +1260,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
/* --------- handle arguments of {def,add,weak}group commands --------- */
<GroupDocArg1>{ID}(".html"?) { // group name
<GroupDocArg1>{LABELID}(".html"?) { // group name
current->name = yytext;
//lastDefGroup.groupname = yytext;
//lastDefGroup.pri = current->groupingPri();
......@@ -1354,7 +1354,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
/* --------- handle arguments of the xrefitem command ------------ */
<XRefItemParam1>{ID} { // first argument
<XRefItemParam1>{LABELID} { // first argument
newXRefItemKey=yytext;
setOutput(OutputXRef);
BEGIN(XRefItemParam2);
......@@ -1803,7 +1803,7 @@ RCSTAG "$"{ID}":"[^\n$]+"$"
/* ----- handle argument of ingroup command ------- */
<InGroupParam>{ID} { // group id
<InGroupParam>{LABELID} { // group id
current->groups->append(
new Grouping(yytext, Grouping::GROUPING_INGROUP)
);
......
......@@ -943,9 +943,11 @@ top of each HTML page. The value NO (the default) enables the index and
the value YES disables it.
' defval='0' depends='GENERATE_HTML'/>
<option type='int' id='ENUM_VALUES_PER_LINE' docs='
This tag can be used to set the number of enum values (range [1..20])
This tag can be used to set the number of enum values (range [0,1..20])
that doxygen will group on one line in the generated HTML documentation.
' minval='1' maxval='20' defval='4' depends='GENERATE_HTML'/>
Note that a value of 0 will completely suppress the enum values from
appearing in the overview section.
' minval='0' maxval='20' defval='4' depends='GENERATE_HTML'/>
<option type='bool' id='GENERATE_TREEVIEW' defval='0' docs='
The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
structure should be generated to display hierarchical information.
......
......@@ -1393,9 +1393,10 @@ void addConfigOptions(Config *cfg)
//----
ci = cfg->addInt(
"ENUM_VALUES_PER_LINE",
"This tag can be used to set the number of enum values (range [1..20])\n"
"that doxygen will group on one line in the generated HTML documentation.",
1,20,4
"This tag can be used to set the number of enum values (range [0,1..20])\n"
"that doxygen will group on one line in the generated HTML documentation.\n"
"Note that a value of 0 will completely suppress the enum values from appearing in the overview section.",
0,20,4
);
ci->addDependency("GENERATE_HTML");
//----
......
......@@ -833,7 +833,6 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
//printf("Read:\n`%s'\n\n",codeFragment.data());
MemberDef *thisMd = 0;
if (definitionType()==TypeMember) thisMd = (MemberDef *)this;
ol.startParagraph();
ol.startCodeFragment();
pIntf->parseCode(ol, // codeOutIntf
scopeName, // scope
......@@ -848,7 +847,6 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName)
FALSE // show line numbers
);
ol.endCodeFragment();
ol.endParagraph();
}
}
ol.popGeneratorState();
......
......@@ -1930,7 +1930,7 @@ bool DocXRefItem::parse()
}
else
{
m_file = convertNameToFile(refList->listName());
m_file = convertNameToFile(refList->listName(),FALSE,TRUE);
m_anchor = item->listAnchor;
}
m_title = refList->sectionTitle();
......
......@@ -291,7 +291,8 @@ CMD ("\\"|"@")
WS [ \t\r\n]
NONWS [^ \t\r\n]
BLANK [ \t\r]
ID "$"?[a-z_A-Z][a-z_A-Z0-9]*
ID "$"?[a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF]*
LABELID [a-z_A-Z\x80-\xFF][a-z_A-Z0-9\x80-\xFF\-]*
MAILADR [a-z_A-Z0-9.+-]+"@"[a-z_A-Z0-9-]+("."[a-z_A-Z0-9\-]+)+[a-z_A-Z0-9\-]+
OPTSTARS ("//"{BLANK}*)?"*"*{BLANK}*
LISTITEM {BLANK}*{OPTSTARS}"-"("#")?{WS}
......@@ -311,7 +312,7 @@ SPCMD3 {CMD}form#[0-9]+
INOUT "in"|"out"|("in"{BLANK}*","{BLANK}*"out")|("out"{BLANK}*","{BLANK}*"in")
PARAMIO {CMD}param{BLANK}*"["{BLANK}*{INOUT}{BLANK}*"]"
TEMPCHAR [a-z_A-Z0-9,: \t\*\&]
FUNCCHAR [a-z_A-Z0-9,:\<\> \t\*\&]
FUNCCHAR [a-z_A-Z0-9,:\<\> \t\*\&\[\]]
SCOPESEP "::"|"#"|"."
TEMPLPART "<"{TEMPCHAR}*">"
SCOPEPRE {ID}{TEMPLPART}?{SCOPESEP}
......@@ -339,7 +340,6 @@ HTMLTAG "<"(("/")?){ID}({WS}+{ATTRIB})*{WS}*(("/")?)">"
HTMLKEYL "strong"|"center"|"table"|"caption"|"small"|"code"|"dfn"|"var"|"img"|"pre"|"sub"|"sup"|"tr"|"td"|"th"|"ol"|"ul"|"li"|"tt"|"kbd"|"em"|"hr"|"dl"|"dt"|"dd"|"br"|"i"|"a"|"b"|"p"
HTMLKEYU "STRONG"|"CENTER"|"TABLE"|"CAPTION"|"SMALL"|"CODE"|"DFN"|"VAR"|"IMG"|"PRE"|"SUB"|"SUP"|"TR"|"TD"|"TH"|"OL"|"UL"|"LI"|"TT"|"KBD"|"EM"|"HR"|"DL"|"DT"|"DD"|"BR"|"I"|"A"|"B"|"P"
HTMLKEYW {HTMLKEYL}|{HTMLKEYU}
LABELID [a-z_A-Z][a-z_A-Z0-9\-]*
REFWORD2 ("#"|"::")?({ID}{TEMPLPART}?("."|"#"|"::"|"-"|"/"))*({ID}(":")?){FUNCARG}?
REFWORD {LABELID}|{REFWORD2}
......@@ -768,7 +768,7 @@ REFWORD {LABELID}|{REFWORD2}
<St_Ref2>"\""|\n { /* " or \n => end of title */
return 0;
}
<St_XRefItem>{ID} {
<St_XRefItem>{LABELID} {
g_token->name=yytext;
}
<St_XRefItem>" " {
......
......@@ -3277,11 +3277,8 @@ QCString getDotImageMapFromFile(const QCString& inFile, const QCString& outDir,
err("error: Output dir %s does not exist!\n",outDir.data()); exit(1);
}
QCString absInFile = QCString(d.absPath())+"/"+inFile;
QCString absOutFile = QCString(d.absPath())+"/"+outFile;
DotRunner dotRun(absInFile,d.absPath().data(),FALSE);
dotRun.addJob(MAP_CMD,absOutFile);
DotRunner dotRun(inFile,d.absPath().data(),FALSE);
dotRun.addJob(MAP_CMD,outFile);
dotRun.preventCleanUp();
if (!dotRun.run())
{
......@@ -3290,7 +3287,7 @@ QCString getDotImageMapFromFile(const QCString& inFile, const QCString& outDir,
QGString result;
FTextStream tmpout(&result);
convertMapFile(tmpout, absOutFile, relPath ,TRUE, context);
convertMapFile(tmpout, outFile, relPath ,TRUE, context);
d.remove(outFile);
return result.data();
......
......@@ -1552,7 +1552,7 @@ static void findUsingDirectives(EntryNav *rootNav)
}
else // unknown namespace, but add it anyway.
{
printf("++ new unknown namespace %s\n",name.data());
//printf("++ new unknown namespace %s\n",name.data());
NamespaceDef *nd=new NamespaceDef(root->fileName,root->startLine,name);
nd->setDocumentation(root->doc,root->docFile,root->docLine); // copy docs to definition
nd->setBriefDescription(root->brief,root->briefFile,root->briefLine);
......@@ -6998,6 +6998,7 @@ static void computeMemberRelations()
// );
if (md!=bmd && bmcd && mcd && bmcd!=mcd && mcd->isBaseClass(bmcd,TRUE))
{
//printf(" derived scope\n");
LockingPtr<ArgumentList> bmdAl = bmd->argumentList();
LockingPtr<ArgumentList> mdAl = md->argumentList();
//printf(" Base argList=`%s'\n Super argList=`%s'\n",
......
......@@ -1089,6 +1089,8 @@ static void copyEntry(Entry *dest, Entry *src)
dest->bodyLine = src->bodyLine;
dest->args = src->args;
dest->argList = new ArgumentList(*src->argList);
dest->doc = src->doc;
dest->brief = src->brief;
}
/** fill empty interface module procedures with info from
......
......@@ -1558,7 +1558,7 @@ void HtmlDocVisitor::writeDotFile(const QCString &fn,const QCString &relPath,
m_t << "<img src=\"" << relPath << baseName << "."
<< Config_getEnum("DOT_IMAGE_FORMAT") << "\" alt=\""
<< baseName << "\" border=\"0\" usemap=\"#" << mapName << "\">" << endl;
QCString imap = getDotImageMapFromFile(baseName,outDir,relPath,context);
QCString imap = getDotImageMapFromFile(fn,outDir,relPath,context);
m_t << "<map name=\"" << mapName << "\" id=\"" << mapName << "\">" << imap << "</map>" << endl;
}
......
......@@ -1534,6 +1534,7 @@ void HtmlGenerator::writeChar(char c)
static void startSectionHeader(FTextStream &t,
const QCString &relPath,int sectionCount)
{
t << "<!-- startSectionHeader -->";
static bool dynamicSections = Config_getBool("HTML_DYNAMIC_SECTIONS");
if (dynamicSections)
{
......@@ -1552,11 +1553,13 @@ static void startSectionHeader(FTextStream &t,
static void endSectionHeader(FTextStream &t)
{
t << "<!-- endSectionHeader -->";
t << "</div>" << endl;
}
static void startSectionSummary(FTextStream &t,int sectionCount)
{
t << "<!-- startSectionSummary -->";
static bool dynamicSections = Config_getBool("HTML_DYNAMIC_SECTIONS");
if (dynamicSections)
{
......@@ -1568,6 +1571,7 @@ static void startSectionSummary(FTextStream &t,int sectionCount)
static void endSectionSummary(FTextStream &t)
{
t << "<!-- endSectionSummary -->";
static bool dynamicSections = Config_getBool("HTML_DYNAMIC_SECTIONS");
if (dynamicSections)
{
......@@ -1577,6 +1581,7 @@ static void endSectionSummary(FTextStream &t)
static void startSectionContent(FTextStream &t,int sectionCount)
{
t << "<!-- startSectionContent -->";
static bool dynamicSections = Config_getBool("HTML_DYNAMIC_SECTIONS");
if (dynamicSections)
{
......@@ -1592,6 +1597,7 @@ static void startSectionContent(FTextStream &t,int sectionCount)
static void endSectionContent(FTextStream &t)
{
t << "<!-- endSectionContent -->";
t << "</div>" << endl;
}
......@@ -1621,6 +1627,7 @@ void HtmlGenerator::endClassDiagram(const ClassDiagram &d,
t << "_map\">" << endl;
d.writeImage(t,dir,relPath,fileName);
t << " </div>";
endSectionContent(t);
m_sectionCount++;
}
......@@ -1936,22 +1943,20 @@ void HtmlGenerator::endParameterName(bool last,bool emptyList,bool closeBracket)
{
if (emptyList)
{
t << "</td>" << endl;
t << " <td>";
if (closeBracket) t << "&#160;)";
t << "&#160;</td>" << endl;
t << "</td>" << endl;
t << " <td>";
}
else
{
t << "</td><td>&#160;</td>" << endl;
t << "&#160;</td>" << endl;
t << " </tr>" << endl;
t << " <tr>" << endl;
t << " <td></td>" << endl;
t << " <td>";
if (closeBracket) t << ")";
t << "</td>" << endl;
t << " <td></td><td></td><td>";
t << " <td></td><td>";
}
}
else
......
......@@ -182,7 +182,8 @@ static void writeDefaultHeaderPart1(FTextStream &t)
t << "]{";
if (Config_getBool("COMPACT_LATEX")) t << "article"; else t << "book";
t << "}\n";
if (paperType=="a4wide") t << "\\usepackage{a4wide}\n";
// the next package is obsolete (see bug 563698)
//if (paperType=="a4wide") t << "\\usepackage{a4wide}\n";
t << "\\usepackage{makeidx}\n"
"\\usepackage{graphicx}\n"
"\\usepackage{multicol}\n"
......@@ -193,10 +194,10 @@ static void writeDefaultHeaderPart1(FTextStream &t)
"\\usepackage{alltt}\n"
//"\\usepackage{ae,aecompl,aeguill}\n"
;
if (Config_getBool("USE_PDFLATEX"))
{
t << "\\usepackage{times}" << endl;
}
//if (Config_getBool("USE_PDFLATEX"))
//{
// t << "\\usepackage{times}" << endl;
//}
if (Config_getBool("PDF_HYPERLINKS"))
{
t << "\\usepackage{ifpdf}" << endl
......@@ -229,6 +230,9 @@ static void writeDefaultHeaderPart1(FTextStream &t)
// if the command is empty, no output is needed.
t << sLanguageSupportCommand << endl;
}
t << "\\usepackage{mathptmx}\n";
t << "\\usepackage[scaled=.90]{helvet}\n";
t << "\\usepackage{courier}\n";
t << "\\usepackage{doxygen}\n";
// define option for listings
......@@ -308,6 +312,49 @@ static void writeDefaultStyleSheetPart1(FTextStream &t)
"\\RequirePackage{color}\n"
"\\RequirePackage{fancyhdr}\n"
"\\RequirePackage{verbatim}\n\n";
t << "% Use helvetica font instead of times roman\n"
"\\RequirePackage{helvet}\n"
"\\RequirePackage{sectsty}\n"
"\\RequirePackage{tocloft}\n"
"\\allsectionsfont{\\usefont{OT1}{phv}{bc}{n}\\selectfont}\n"
"\\renewcommand{\\cftchapfont}{%\n"
" \\fontsize{11}{13}\\usefont{OT1}{phv}{bc}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftchappagefont}{%\n"
" \\fontsize{11}{13}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsecfont}{%\n"
" \\fontsize{10}{12}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsecpagefont}{%\n"
" \\fontsize{10}{12}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsubsecfont}{%\n"
" \\fontsize{10}{12}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsubsecpagefont}{%\n"
" \\fontsize{10}{12}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsubsubsecfont}{%\n"
" \\fontsize{9}{11}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftsubsubsecpagefont}{%\n"
" \\fontsize{9}{11}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftparafont}{%\n"
" \\fontsize{9}{11}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cftparapagefont}{%\n"
" \\fontsize{9}{11}\\usefont{OT1}{phv}{c}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\cfttoctitlefont}{%\n"
" \\fontsize{20}{22}\\usefont{OT1}{phv}{b}{n}\\selectfont\n"
"}\n"
"\\renewcommand{\\rmdefault}{phv}\n"
"\\renewcommand{\\bfdefault}{bc}\n"
"\n\n";
t << "% Setup fancy headings\n"
"\\pagestyle{fancyplain}\n"
"\\newcommand{\\clearemptydoublepage}{%\n"
......@@ -320,25 +367,42 @@ static void writeDefaultStyleSheetPart1(FTextStream &t)
t << "\\renewcommand{\\sectionmark}[1]{%\n"
" \\markright{\\thesection\\ #1}%\n"
"}\n";
t << "\\lhead[\\fancyplain{}{\\bfseries\\thepage}]{%\n"
" \\fancyplain{}{\\bfseries\\rightmark}%\n"
"}\n";
t << "\\rhead[\\fancyplain{}{\\bfseries\\leftmark}]{%\n"
" \\fancyplain{}{\\bfseries\\thepage}%\n"
"}\n";
t << "\\rfoot[\\fancyplain{}{\\bfseries\\scriptsize%\n ";
//t << "\\lhead[\\fancyplain{}{\\bfseries\\thepage}]{%\n"
// " \\fancyplain{}{\\bfseries\\rightmark}%\n"
// "}\n";
//t << "\\rhead[\\fancyplain{}{\\bfseries\\leftmark}]{%\n"
// " \\fancyplain{}{\\bfseries\\thepage}%\n"
// "}\n";
//t << "\\rfoot[\\fancyplain{}{\\bfseries\\scriptsize%\n ";
t << "\\fancyhead[LE]{\\fancyplain{}{\\bfseries\\thepage}}\n";
t << "\\fancyhead[CE]{\\fancyplain{}{}}\n";
t << "\\fancyhead[RE]{\\fancyplain{}{\\bfseries\\leftmark}}\n";
t << "\\fancyhead[LO]{\\fancyplain{}{\\bfseries\\rightmark}}\n";
t << "\\fancyhead[CO]{\\fancyplain{}{}}\n";
t << "\\fancyhead[RO]{\\fancyplain{}{\\bfseries\\thepage}}\n";
t << "\\fancyfoot[LE]{\\fancyplain{}{}}\n";
t << "\\fancyfoot[CE]{\\fancyplain{}{}}\n";
t << "\\fancyfoot[RE]{\\fancyplain{}{\\bfseries\\scriptsize ";
}
static void writeDefaultStyleSheetPart2(FTextStream &t)
{
t << "\\lfoot[]{\\fancyplain{}{\\bfseries\\scriptsize%\n ";
t << "}}\n";
t << "\\fancyfoot[LO]{\\fancyplain{}{\\bfseries\\scriptsize ";
//t << "\\lfoot[]{\\fancyplain{}{\\bfseries\\scriptsize%\n ";
}
static void writeDefaultStyleSheetPart3(FTextStream &t)
{
static bool latexSourceCode = Config_getBool("LATEX_SOURCE_CODE");
t << "}}\n";
t << "\\cfoot{}\n\n";
//t << "\\cfoot{}\n\n";
t << "\\fancyfoot[CO]{\\fancyplain{}{}}\n";
t << "\\fancyfoot[RO]{\\fancyplain{}{}}\n";
t << "%---------- Internal commands used in this style file ----------------\n\n";
t << "% Generic environment used by all paragraph-based environments defined\n"
"% below. Note that the command \\title{...} needs to be defined inside\n"
......@@ -623,7 +687,8 @@ static void writeDefaultStyleSheetPart3(FTextStream &t)
t << "\\setlength{\\parindent}{0cm}\n";
t << "\\setlength{\\parskip}{0.2cm}\n";
t << "\\addtocounter{secnumdepth}{1}\n";
t << "\\sloppy\n";
// \sloppy should not be used, see bug 563698
//t << "\\sloppy\n";
t << "\\usepackage[T1]{fontenc}\n";
t << "\\makeatletter\n";
t << "\\renewcommand{\\paragraph}{\\@startsection{paragraph}{4}{0ex}%\n";
......@@ -1128,14 +1193,11 @@ void LatexGenerator::writeStyleInfo(int part)
break;
case 2:
{
//t << " Dimitri van Heesch \\copyright~1997-2010";
t << "}]{}\n";
writeDefaultStyleSheetPart2(t);
}
break;
case 4:
{
//t << " Dimitri van Heesch \\copyright~1997-2010";
writeDefaultStyleSheetPart3(t);
endPlainFile();
}
......
This diff is collapsed.
......@@ -2933,10 +2933,9 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
typeDecl.writeChar(' ');
}
if (numVisibleEnumValues>0)
uint enumValuesPerLine = (uint)Config_getInt("ENUM_VALUES_PER_LINE");
if (numVisibleEnumValues>0 && enumValuesPerLine>0)
{
uint enumValuesPerLine = (uint)Config_getInt("ENUM_VALUES_PER_LINE");
if (enumValuesPerLine==0) enumValuesPerLine=1;
typeDecl.docify("{ ");
if (fmdl)
{
......
......@@ -264,7 +264,9 @@ QCString MemberGroup::anchor() const
{
uchar md5_sig[16];
QCString sigStr(33);
MD5Buffer((const unsigned char *)grpHeader.data(),grpHeader.length(),md5_sig);
QCString locHeader = grpHeader;
if (locHeader.isEmpty()) locHeader="[NOHEADER]";
MD5Buffer((const unsigned char *)locHeader.data(),locHeader.length(),md5_sig);
MD5SigToString(md5_sig,sigStr.data(),33);
return "amgrp"+sigStr;
}
......
......@@ -409,12 +409,12 @@ void MemberList::writeDeclarations(OutputList &ol,
if (numDecMembers()==0) return;
//printf("%p: MemberList::writeDeclaration(title=`%s',subtitle=`%s')=%d\n",
// this,title,subtitle,numDecMembers());
ol.startMemberHeader(listTypeAsString());
if (title)
{
ol.startMemberHeader(listTypeAsString());
ol.parseText(title);
ol.endMemberHeader();
}
ol.endMemberHeader();
if (subtitle)
{
QCString st=subtitle;
......@@ -449,8 +449,8 @@ void MemberList::writeDeclarations(OutputList &ol,
MemberGroup *mg;
while ((mg=mgli.current()))
{
//printf("mg->header=%s\n",mg->header().data());
bool hasHeader=mg->header()!="[NOHEADER]";
bool hasHeader=!mg->header().isEmpty() && mg->header()!="[NOHEADER]";
//printf("mg->header=%s hasHeader=%d\n",mg->header().data(),hasHeader);
ol.startMemberGroupHeader(hasHeader);
if (hasHeader)
{
......
......@@ -73,6 +73,8 @@ void PageDef::writeDocumentation(OutputList &ol)
QCString pageName;
pageName=escapeCharsInString(name(),FALSE,TRUE);
//printf("PageDef::writeDocumentation: %s\n",getOutputFileBase().data());
startFile(ol,getOutputFileBase(),pageName,title(),HLI_Pages,TRUE);
ol.pushGeneratorState();
......
......@@ -129,6 +129,11 @@ static void setFileName(const char *name)
QFileInfo fi(name);
g_yyFileName=convertToQCString(fi.absFilePath());
g_yyFileDef=findFileDef(Doxygen::inputNameDict,g_yyFileName,ambig);
if (g_yyFileDef==0) // if this is not an input file check if it is an
// include file
{
g_yyFileDef=findFileDef(Doxygen::includeNameDict,g_yyFileName,ambig);
}
//printf("setFileName(%s) g_yyFileName=%s g_yyFileDef=%p\n",
// name,g_yyFileName.data(),g_yyFileDef);
if (g_yyFileDef && g_yyFileDef->isReference()) g_yyFileDef=0;
......@@ -313,11 +318,13 @@ static FileState *findFile(const char *fileName,bool localInclude,bool &alreadyI
while (s)
{
QCString absName = (QCString)s+"/"+fileName;
//printf(" Looking for %s in %s\n",fileName,s);
FileState *fs = checkAndOpenFile(absName,alreadyIncluded);
if (fs)
{
setFileName(absName);
g_yyLineNr=1;
//printf(" -> found it\n");
return fs;
}
else if (alreadyIncluded)
......@@ -1252,7 +1259,7 @@ static void readIncludeFile(const QCString &inc)
if (Debug::isFlagSet(Debug::Preprocessor))
{
for (i=0;i<g_includeStack.count();i++) msg(" ");
msg("#include %s: parsing...\n",incFileName.data());
//msg("#include %s: parsing...\n",incFileName.data());
}
if (oldFileDef)
{
......@@ -1290,11 +1297,11 @@ static void readIncludeFile(const QCString &inc)
if (oldFileDef)
{
bool ambig;
QCString absPath = incFileName;
if (QDir::isRelativePath(incFileName))
{
QString absPath = QDir::cleanDirPath(oldFileDef->getPath()+"/"+incFileName);
//printf("%s + %s -> resolved path %s\n",oldFileDef->getPath().data(),incFileName.data(),absPath.data());
incFileName = absPath;
}
FileDef *fd = findFileDef(Doxygen::inputNameDict,incFileName,ambig);
//printf("%s::findFileDef(%s)=%p\n",oldFileDef->name().data(),incFileName.data(),fd);
......
......@@ -5191,7 +5191,7 @@ TYPEDEFPREFIX (("typedef"{BN}+)?)((("volatile"|"const"){BN}+)?)
/* ---- Single line comments ------ */
<DocLine>[^\n]*"\n"[ \t]*"//"[/!] { // continuation of multiline C++-style comment
docBlock+=yytext;
docBlock.resize(docBlock.size() - 3);
docBlock.resize(docBlock.length() - 3);
yyLineNr++;
}
<DocLine>[^\n]*/"\n" { // whole line
......@@ -5487,7 +5487,13 @@ static void handleCommentBlock(const QCString &doc,bool brief)
)
{
//printf("parseCommentBlock position=%d [%s]\n",position,doc.data()+position);
if (needsEntry) newEntry();
if (needsEntry)
{
QCString docFile = current->docFile;
newEntry();
current->docFile = docFile;
current->docLine = lineNr;
}
}
if (needsEntry)
{
......
/******************************************************************************
/******************************************************************************
*
*
*
......
......@@ -1828,6 +1828,62 @@ class TranslatorKorean : public TranslatorAdapter_1_6_3
return "일치하는것 없음";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.6.3 (missing items for the directory pages)
//////////////////////////////////////////////////////////////////////////
/*! introduction text for the directory dependency graph */
virtual QCString trDirDependency(const char *name)
{
return QCString(name) + "에 대한 디렉토리 의존 그래프";
}
/*! when clicking a directory dependency label, a page with a
* table is shown. The heading for the first column mentions the
* source file that has a relation to another file.
*/
virtual QCString trFileIn(const char *name)
{
return QCString(name) + "의 파일";
}
/*! when clicking a directory dependency label, a page with a
* table is shown. The heading for the second column mentions the
* destination file that is included.
*/
virtual QCString trIncludesFileIn(const char *name)
{
return QCString(name) + "의 파일 포함";
}
/** Compiles a date string.
* @param year Year in 4 digits
* @param month Month of the year: 1=January
* @param day Day of the Month: 1..31
* @param dayOfWeek Day of the week: 1=Monday..7=Sunday
* @param hour Hour of the day: 0..23
* @param minutes Minutes in the hour: 0..59
* @param seconds Seconds within the minute: 0..59
* @param includeTime Include time in the result string?
*/
virtual QCString trDateTime(int year,int month,int day,int dayOfWeek,
int hour,int minutes,int seconds,
bool includeTime)
{
static const char *days[] = { "월","화","수","목","금","토","일" };
static const char *months[] = { "1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월" };
QCString sdate;
sdate.sprintf("%s %s %d %d",days[dayOfWeek-1],months[month-1],day,year);
if (includeTime)
{
QCString stime;
stime.sprintf(" %.2d:%.2d:%.2d",hour,minutes,seconds);
sdate+=stime;
}
return sdate;
}
};
#endif
......@@ -1937,6 +1937,7 @@ void writeExample(OutputList &ol,ExampleSDict *ed)
ol.disable(OutputGenerator::Latex);
ol.disable(OutputGenerator::RTF);
// link for Html / man
//printf("writeObjectLink(file=%s)\n",e->file.data());
ol.writeObjectLink(0,e->file,e->anchor,e->name);
ol.popGeneratorState();
......@@ -4140,7 +4141,7 @@ static bool getScopeDefs(const char *docScope,const char *scope,
static bool isLowerCase(QCString &s)
{
char *p=s.data();
uchar *p=(uchar*)s.data();
if (p==0) return TRUE;
int c;
while ((c=*p++)) if (!islower(c)) return FALSE;
......@@ -6451,7 +6452,8 @@ bool updateLanguageMapping(const QCString &extension,const QCString &language)
{
g_extLookup.remove(extension);
}
g_extLookup.insert(extension,new int(parserId));
//printf("registering extension %s\n",extName.data());
g_extLookup.insert(extName,new int(parserId));
if (!Doxygen::parserManager->registerExtension(extName,p->parserName))
{
err("Failed to assign extension %s to parser %s for language %s\n",
......@@ -6503,10 +6505,12 @@ SrcLangExt getLanguageFromFileName(const QCString fileName)
int *pVal=g_extLookup.find(extStr);
if (pVal) // listed extension
{
//printf("getLanguageFromFileName(%s)=%x\n",extStr.data(),*pVal);
return (SrcLangExt)*pVal;
}
}
}
//printf("getLanguageFromFileName(%s) not found!\n",fileName.data());
return SrcLangExt_Cpp; // not listed => assume C-ish language.
}
......
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