summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2003-05-14 19:55:59 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2003-05-14 19:55:59 (GMT)
commit64200b5e975b19f38f9a68569b98c6f53e6fe4d9 (patch)
treed211455e0cef95445694e7630c63dd0e90d3f3a5
parenta9f41d99f3651cd66850e9020bc3af7cb559306e (diff)
downloadDoxygen-64200b5e975b19f38f9a68569b98c6f53e6fe4d9.zip
Doxygen-64200b5e975b19f38f9a68569b98c6f53e6fe4d9.tar.gz
Doxygen-64200b5e975b19f38f9a68569b98c6f53e6fe4d9.tar.bz2
Release-1.3-20030514
-rw-r--r--INSTALL4
-rw-r--r--README4
-rw-r--r--VERSION2
-rw-r--r--doc/config.doc2
-rw-r--r--doc/doxygen_manual.tex2
-rw-r--r--doc/index.doc4
-rw-r--r--doc/install.doc6
-rw-r--r--packages/rpm/doxygen.spec2
-rw-r--r--qtools/qglobal.h2
-rw-r--r--src/classdef.cpp2
-rw-r--r--src/code.l8
-rw-r--r--src/commentcnv.l68
-rw-r--r--src/config.l8
-rw-r--r--src/constexp.l2
-rw-r--r--src/declinfo.l4
-rw-r--r--src/defargs.l3
-rw-r--r--src/docparser.cpp40
-rw-r--r--src/doctokenizer.l3
-rw-r--r--src/ftvhelp.cpp115
-rw-r--r--src/htmldocvisitor.cpp2
-rw-r--r--src/htmlgen.cpp3
-rw-r--r--src/index.cpp4
-rw-r--r--src/libdoxygen.pro.in1
-rw-r--r--src/memberdef.cpp1
-rw-r--r--src/memberlist.cpp9
-rw-r--r--src/page.h131
-rw-r--r--src/pagedef.h95
-rw-r--r--src/pre.l16
-rw-r--r--src/reflist.cpp14
-rw-r--r--src/reflist.h5
-rw-r--r--src/scanner.l21
-rw-r--r--src/tagreader.cpp10
-rw-r--r--src/translator_br.h56
-rw-r--r--src/translator_cz.h49
-rw-r--r--src/translator_de.h59
-rw-r--r--src/translator_fr.h296
-rw-r--r--src/translator_it.h43
-rw-r--r--src/util.cpp24
-rw-r--r--wintools/Doxygen.dsp14
39 files changed, 622 insertions, 512 deletions
diff --git a/INSTALL b/INSTALL
index e637c92..04dd2ab 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
-DOXYGEN Version 1.3-20030430
+DOXYGEN Version 1.3-20030514
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
-Dimitri van Heesch (30 April 2003)
+Dimitri van Heesch (14 May 2003)
diff --git a/README b/README
index a772eec..ebdfa1f 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-DOXYGEN Version 1.3_20030430
+DOXYGEN Version 1.3_20030514
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) (30 April 2003)
+Dimitri van Heesch (dimitri@stack.nl) (14 May 2003)
diff --git a/VERSION b/VERSION
index b5343c0..8f0c41d 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.3-20030430
+1.3-20030514
diff --git a/doc/config.doc b/doc/config.doc
index 3a7c23e..80f07e6 100644
--- a/doc/config.doc
+++ b/doc/config.doc
@@ -1478,7 +1478,7 @@ TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
\addindex DOT_IMAGE_FORMAT
The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
generated by dot. Possible values are gif, jpg, and png.
- If left blank gif will be used.
+ If left blank png will be used.
\anchor cfg_dot_path
<dt>\c DOT_PATH <dd>
diff --git a/doc/doxygen_manual.tex b/doc/doxygen_manual.tex
index d345e00..0c9bac3 100644
--- a/doc/doxygen_manual.tex
+++ b/doc/doxygen_manual.tex
@@ -30,7 +30,7 @@
]{hyperref}
\makeindex
\setcounter{tocdepth}{1}
-\setlength{\footrulewidth}{0.4pt}
+\renewcommand{\footrulewidth}{0.4pt}
\begin{document}
\begin{titlepage}
\includegraphics[width=\textwidth]{doxygen_logo}
diff --git a/doc/index.doc b/doc/index.doc
index 4c104de..df3455e 100644
--- a/doc/index.doc
+++ b/doc/index.doc
@@ -183,8 +183,8 @@ Thanks go to:
Roddy, Paul Schwartz, Charles Duffy, Vadym Voznyuk, Philip Walton,
Dwight Browne, Andreas Fredriksson, Karel Lindveld, Ivan Lee, Albert
Vernon, Adam McKee, Vijapurapu Anatharac, Ben Hunsberger and
- Walter Wartenweiler, Jeff Garbers, David Harris and Terry Brown
- for donating money.
+ Walter Wartenweiler, Jeff Garbers, David Harris, Terry Brown and
+ Nicolas Reimen for donating money.
<li>The Comms group of <a href="http://www.symbian.com">Symbian</a> for donating
an ultra cool <a href="http://www.psion.com/revoplus">Revo plus</a>
organizer!
diff --git a/doc/install.doc b/doc/install.doc
index 9b2f6ac..2dbbf51 100644
--- a/doc/install.doc
+++ b/doc/install.doc
@@ -445,8 +445,10 @@ Here is what is required:
<li>To generate LaTeX documentation or formulas in HTML you need the tools:
<code>latex</code>, <code>dvips</code> and <code>gswin32</code>.
To get these working under Windows
- install the fpTeX distribution. You can download it at:
- http://www.ese-metz.fr/~popineau/fptex/wwwfptex.html
+ install the fpTeX distribution. You can find more info at:
+ http://www.fptex.org/ and download it from CTAN or one of its mirrors.
+ In the Netherlands for example this would be:
+ ftp://ftp.easynet.nl/mirror/CTAN/systems/win32/fptex/
Make sure the tools are available from a dos box, by adding the
directory they are in to the search path.
diff --git a/packages/rpm/doxygen.spec b/packages/rpm/doxygen.spec
index 7c70968..5e6ad0b 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_20030430
+Version: 1.3_20030514
Release: 1
Epoch: 1
Source0: ftp://ftp.stack.nl/pub/users/dimitri/%{name}-%{version}.src.tar.gz
diff --git a/qtools/qglobal.h b/qtools/qglobal.h
index 53b082e..b8854c0 100644
--- a/qtools/qglobal.h
+++ b/qtools/qglobal.h
@@ -594,6 +594,6 @@ Q_EXPORT void qObsolete( const char *message );
#endif
// DvH: added to avoid warnings on recent gcc versions
-#define Q_DELETE_VOID_UNDEFINED
+#define Q_DELETING_VOID_UNDEFINED
#endif // QGLOBAL_H
diff --git a/src/classdef.cpp b/src/classdef.cpp
index 6766c1f..ebd7e39 100644
--- a/src/classdef.cpp
+++ b/src/classdef.cpp
@@ -1415,7 +1415,7 @@ void ClassDef::writeMemberList(OutputList &ol)
{
QCString name=mi->ambiguityResolutionScope+md->name();
//ol.writeListItem();
- ol.writeString(" <tr bgcolor=\"#f0f0f0\"><td>");
+ ol.writeString(" <tr class=\"memlist\"><td>");
Definition *bd = md->getGroupDef();
if (bd==0) bd=cd;
ol.writeObjectLink(bd->getReference(),bd->getOutputFileBase(),
diff --git a/src/code.l b/src/code.l
index 5335daa..e303139 100644
--- a/src/code.l
+++ b/src/code.l
@@ -1388,7 +1388,7 @@ TYPEKW ("bool"|"char"|"double"|"float"|"int"|"long"|"short"|"signed"|"unsigned"
addType();
g_name+=yytext;
}
-<Body>"("{B}*("*"{B}*)*{SCOPENAME}*{B}*")"/{B}* { // (*p)->func()
+<Body>"("{B}*("*"{B}*)+{SCOPENAME}*{B}*")"/{B}* { // (*p)->func() but not "if (p) ..."
g_code->codify(yytext);
int s=0;while (s<yyleng && !isId(yytext[s])) s++;
int e=yyleng-1;while (e>=0 && !isId(yytext[e])) e--;
@@ -2085,7 +2085,11 @@ void parseCode(BaseCodeDocInterface &od,const char *className,const QCString &s,
return;
}
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
-// int codeYYwrap() { return 1 ; }
void codeYYdummy() { yy_flex_realloc(0,0); }
}
+#else
+#error "You seem to be using a version of flex newer than 2.5.4. These are currently incompatible with 2.5.4, and do NOT work with doxygen! Please use version 2.5.4 or expect things to be parsed wrongly! A bug report has been submitted (#732132)."
+#endif
+
diff --git a/src/commentcnv.l b/src/commentcnv.l
index aa8b37b..16ab83a 100644
--- a/src/commentcnv.l
+++ b/src/commentcnv.l
@@ -25,10 +25,13 @@
#include "bufstr.h"
#include "debug.h"
#include "message.h"
+#include "config.h"
static BufStr *g_inBuf;
static BufStr *g_outBuf;
static int g_inBufPos;
+static int g_col;
+static int g_blockHeadCol;
static void replaceCommentMarker(const char *s,int len)
{
@@ -59,9 +62,35 @@ static void replaceCommentMarker(const char *s,int len)
g_outBuf->addArray(p,len-(p-s));
}
+static inline int computeIndent(const char *s)
+{
+ int col=0;
+ static int tabSize=Config_getInt("TAB_SIZE");
+ const char *p=s;
+ char c;
+ while ((c=*p++))
+ {
+ if (c==' ') col++;
+ else if (c=='\t') col+=tabSize-(col%tabSize);
+ else break;
+ }
+ return col;
+}
+
static inline void copyToOutput(const char *s,int len)
{
g_outBuf->addArray(s,len);
+ int i;
+ static int tabSize=Config_getInt("TAB_SIZE");
+ for (i=0;i<len;i++)
+ {
+ switch (s[i])
+ {
+ case '\n': g_col=0; break;
+ case '\t': g_col+=tabSize-(g_col%tabSize); break;
+ default: g_col++; break;
+ }
+ }
}
#undef YY_INPUT
@@ -76,10 +105,22 @@ static int yyread(char *buf,int max_size)
return bytesToCopy;
}
+#define replaceComment(offset) \
+ int i=computeIndent(&yytext[offset]); \
+ if (i==g_blockHeadCol) \
+ { \
+ replaceCommentMarker(yytext,yyleng); \
+ } \
+ else \
+ { \
+ copyToOutput(" */",3); \
+ int i;for (i=yyleng-1;i>=0;i--) unput(yytext[i]); \
+ BEGIN(Scan); \
+ } \
+
%}
%option noyywrap
-%option nounput
%x Scan
%x SkipString
@@ -99,18 +140,20 @@ static int yyread(char *buf,int max_size)
<Scan>\n { /* new line */
copyToOutput(yytext,yyleng);
}
-<Scan>("//!"|"///").*\n/[ \t]*"//"[\/!][^\/] { /* start C++ style special comment block */
+<Scan>("//!"|"///").*/\n[ \t]*"//"[\/!][^\/] { /* start C++ style special comment block */
int i=3;
if (yytext[2]=='/')
{
while (i<yyleng && yytext[i]=='/') i++;
}
+ g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
BEGIN(SComment);
}
-<Scan>"//##Documentation".*\n { /* Start of Rational Rose ANSI C++ comment block */
+<Scan>"//##Documentation".*/\n { /* Start of Rational Rose ANSI C++ comment block */
int i=17; //=strlen("//##Documentation");
+ g_blockHeadCol=g_col;
copyToOutput("/**",3);
copyToOutput(yytext+i,yyleng-i);
BEGIN(SComment);
@@ -169,28 +212,28 @@ static int yyread(char *buf,int max_size)
BEGIN(Scan);
}
<SComment>^[ \t]*"///"[\/]*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(0);
}
<SComment>\n[ \t]*"///"[\/]*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(1);
}
<SComment>^[ \t]*"///"[^\/\n].*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(0);
}
<SComment>\n[ \t]*"///"[^\/\n].*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(1);
}
<SComment>^[ \t]*"//!".*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(0);
}
<SComment>\n[ \t]*"//!".*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(1);
}
<SComment>^[ \t]*"//##".*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(0);
}
<SComment>\n[ \t]*"//##".*/\n {
- replaceCommentMarker(yytext,yyleng);
+ replaceComment(1);
}
<SComment>\n { /* end of special comment */
copyToOutput(" */",3);
@@ -205,6 +248,7 @@ void convertCppComments(BufStr *inBuf,BufStr *outBuf)
g_inBuf = inBuf;
g_outBuf = outBuf;
g_inBufPos = 0;
+ g_col = 0;
BEGIN(Scan);
yylex();
if (Debug::isFlagSet(Debug::CommentCnv))
@@ -214,7 +258,9 @@ void convertCppComments(BufStr *inBuf,BufStr *outBuf)
}
//----------------------------------------------------------------------------
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
void commentcnvYYdummy() { yy_flex_realloc(0,0); }
}
+#endif
diff --git a/src/config.l b/src/config.l
index 7516965..b91119c 100644
--- a/src/config.l
+++ b/src/config.l
@@ -65,7 +65,6 @@ void config_warn(const char *fmt, ...)
#define MAX_INCLUDE_DEPTH 10
#define YY_NEVER_INTERACTIVE 1
-#define YY_NO_UNPUT
/* -----------------------------------------------------------------
*/
@@ -410,6 +409,7 @@ static void readIncludeFile(const char *incName)
%}
+%option nounput
%option noyywrap
%x Start
@@ -2713,6 +2713,6 @@ bool Config::parse(const char *fn)
return TRUE;
}
-//extern "C" { // some bogus code to keep the compiler happy
-// int configYYwrap() { return 1 ; }
-//}
+extern "C" { // some bogus code to keep the compiler happy
+ //int configYYwrap() { return 1 ; }
+}
diff --git a/src/constexp.l b/src/constexp.l
index 264c9d6..f9df891 100644
--- a/src/constexp.l
+++ b/src/constexp.l
@@ -49,6 +49,8 @@ static int yyread(char *buf,int max_size)
%}
+%option nounput
+
%%
"?" { return TOK_QUESTIONMARK; }
diff --git a/src/declinfo.l b/src/declinfo.l
index ba0b877..4474f1e 100644
--- a/src/declinfo.l
+++ b/src/declinfo.l
@@ -29,9 +29,6 @@
#include "util.h"
#include "message.h"
-
-#define YY_NO_UNPUT
-
/* -----------------------------------------------------------------
*
* statics
@@ -97,6 +94,7 @@ static int yyread(char *buf,int max_size)
B [ \t]
ID ([a-z_A-Z][a-z_A-Z0-9]*)|(@[0-9]+)
+%option nounput
%option noyywrap
%x Start
diff --git a/src/defargs.l b/src/defargs.l
index 8bdffa3..b1f2134 100644
--- a/src/defargs.l
+++ b/src/defargs.l
@@ -409,6 +409,9 @@ void stringToArgumentList(const char *argsString,ArgumentList* &al)
//printf("stringToArgumentList(%s) result=%s\n",argsString,argListToString(al).data());
}
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
void defargsYYdummy() { yy_flex_realloc(0,0); }
}
+#endif
+
diff --git a/src/docparser.cpp b/src/docparser.cpp
index d4df2df..e84bf96 100644
--- a/src/docparser.cpp
+++ b/src/docparser.cpp
@@ -1923,38 +1923,40 @@ void DocImage::parse()
{
case TK_COMMAND:
warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Illegal command %s as part of a \\image",
- g_token->name.data());
+ g_token->name.data());
break;
case TK_SYMBOL:
- warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unsupported symbol %s found",
- g_token->name.data());
+ warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unsupported symbol %s found",
+ g_token->name.data());
break;
default:
- warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unexpected token %s",
- tokToString(tok));
+ warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unexpected token %s",
+ tokToString(tok));
break;
}
}
}
- tok=doctokenizerYYlex();
- while (tok==TK_WORD) // there are values following the title
+ if (!m_children.isEmpty())
{
- if (g_token->name=="width")
- {
- m_width=g_token->chars;
- }
- else if (g_token->name=="height")
- {
- m_height=g_token->chars;
- }
- else
+ tok=doctokenizerYYlex();
+ while (tok==TK_WORD) // there are values following the title
{
- warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unknown option %s after image title",
+ if (g_token->name=="width")
+ {
+ m_width=g_token->chars;
+ }
+ else if (g_token->name=="height")
+ {
+ m_height=g_token->chars;
+ }
+ else
+ {
+ warn_doc_error(g_fileName,doctokenizerYYlineno,"Warning: Unknown option %s after image title",
g_token->name.data());
+ }
+ tok=doctokenizerYYlex();
}
- tok=doctokenizerYYlex();
}
- ASSERT(tok==0);
doctokenizerYYsetStatePara();
handlePendingStyleCommands(this,m_children);
diff --git a/src/doctokenizer.l b/src/doctokenizer.l
index 031d5ec..8cf6196 100644
--- a/src/doctokenizer.l
+++ b/src/doctokenizer.l
@@ -917,6 +917,9 @@ void doctokenizerYYsetInsidePre(bool b)
g_insidePre = b;
}
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
void doctokenizerYYdummy() { yy_flex_realloc(0,0); }
}
+#endif
+
diff --git a/src/ftvhelp.cpp b/src/ftvhelp.cpp
index 54514e6..2385e3f 100644
--- a/src/ftvhelp.cpp
+++ b/src/ftvhelp.cpp
@@ -38,7 +38,6 @@ unsigned char ftv2blank_png[] = {
0x32, 0xcb, 0x72, 0x8f, 0x7c, 0x12, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2blank_png_len = 174;
unsigned char ftv2doc_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -64,7 +63,6 @@ unsigned char ftv2doc_png[] = {
0x83, 0x47, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
0x42, 0x60, 0x82
};
-unsigned int ftv2doc_png_len = 255;
unsigned char ftv2folderclosed_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -90,7 +88,6 @@ unsigned char ftv2folderclosed_png[] = {
0x13, 0x15, 0x98, 0x60, 0xbd, 0x81, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2folderclosed_png_len = 259;
unsigned char ftv2folderopen_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -116,7 +113,6 @@ unsigned char ftv2folderopen_png[] = {
0x0d, 0xa4, 0x29, 0x14, 0xcb, 0xda, 0x47, 0xac, 0x44, 0x00, 0x00, 0x00,
0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2folderopen_png_len = 261;
unsigned char ftv2lastnode_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -140,7 +136,6 @@ unsigned char ftv2lastnode_png[] = {
0x88, 0x10, 0xca, 0x33, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e,
0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2lastnode_png_len = 233;
unsigned char ftv2link_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -174,7 +169,6 @@ unsigned char ftv2link_png[] = {
0xcf, 0x07, 0x71, 0x95, 0x2b, 0xa1, 0x10, 0x78, 0xd0, 0xff, 0x00, 0x00,
0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2link_png_len = 358;
unsigned char ftv2mlastnode_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -192,7 +186,6 @@ unsigned char ftv2mlastnode_png[] = {
0xc0, 0xdc, 0x69, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2mlastnode_png_len = 160;
unsigned char ftv2mnode_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -213,7 +206,6 @@ unsigned char ftv2mnode_png[] = {
0x96, 0x03, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
0x60, 0x82
};
-unsigned int ftv2mnode_png_len = 194;
unsigned char ftv2node_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -237,7 +229,6 @@ unsigned char ftv2node_png[] = {
0x52, 0x00, 0xe2, 0xfa, 0x45, 0x3a, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2node_png_len = 235;
unsigned char ftv2plastnode_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -255,7 +246,6 @@ unsigned char ftv2plastnode_png[] = {
0x00, 0x6e, 0xc1, 0x02, 0xc2, 0xe5, 0xed, 0x75, 0xa7, 0x00, 0x00, 0x00,
0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2plastnode_png_len = 165;
unsigned char ftv2pnode_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -276,7 +266,6 @@ unsigned char ftv2pnode_png[] = {
0xba, 0x6b, 0x07, 0x2f, 0xaa, 0xcb, 0x1f, 0x6f, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int ftv2pnode_png_len = 200;
unsigned char ftv2vertline_png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
@@ -300,31 +289,67 @@ unsigned char ftv2vertline_png[] = {
0x3a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
0x82
};
-unsigned int ftv2vertline_png_len = 229;
struct ImageInfo
{
+ const char *alt;
const char *name;
- unsigned char *data;
+ const unsigned char *data;
unsigned int len;
+ unsigned short width, height;
} image_info[] =
{
- { "ftv2blank.png",ftv2blank_png,ftv2blank_png_len },
- { "ftv2doc.png",ftv2doc_png,ftv2doc_png_len },
- { "ftv2folderclosed.png",ftv2folderclosed_png,ftv2folderclosed_png_len },
- { "ftv2folderopen.png",ftv2folderopen_png,ftv2folderopen_png_len },
- { "ftv2lastnode.png",ftv2lastnode_png,ftv2lastnode_png_len },
- { "ftv2link.png",ftv2link_png,ftv2link_png_len },
- { "ftv2mlastnode.png",ftv2mlastnode_png,ftv2mlastnode_png_len },
- { "ftv2mnode.png",ftv2mnode_png,ftv2mnode_png_len },
- { "ftv2node.png",ftv2node_png,ftv2node_png_len },
- { "ftv2plastnode.png",ftv2plastnode_png,ftv2plastnode_png_len },
- { "ftv2pnode.png",ftv2pnode_png,ftv2pnode_png_len },
- { "ftv2vertline.png",ftv2vertline_png,ftv2vertline_png_len },
- { 0,0,0 }
+ { "&nbsp;", "ftv2blank.png",ftv2blank_png,174,16,22 },
+#define FTVIMG_blank 0
+
+ { "*", "ftv2doc.png",ftv2doc_png,255,24,22 },
+#define FTVIMG_doc 1
+
+ { "+", "ftv2folderclosed.png",ftv2folderclosed_png,259,24,22 },
+#define FTVIMG_folderclosed 2
+
+ { "-", "ftv2folderopen.png",ftv2folderopen_png,261,24,22 },
+#define FTVIMG_folderopen 3
+
+ { "\\", "ftv2lastnode.png",ftv2lastnode_png,233,16,22 },
+#define FTVIMG_lastnode 4
+
+ { "-", "ftv2link.png",ftv2link_png,358,24,22 },
+#define FTVIMG_link 5
+
+ { "\\", "ftv2mlastnode.png",ftv2mlastnode_png,160,16,22 },
+#define FTVIMG_mlastnode 6
+
+ { "o", "ftv2mnode.png",ftv2mnode_png,194,16,22 },
+#define FTVIMG_mnode 7
+
+ { "o", "ftv2node.png",ftv2node_png,235,16,22 },
+#define FTVIMG_node 8
+
+ { "\\", "ftv2plastnode.png",ftv2plastnode_png,165,16,22 },
+#define FTVIMG_plastnode 9
+
+ { "o", "ftv2pnode.png",ftv2pnode_png,200,16,22 },
+#define FTVIMG_pnode 10
+
+ { "|", "ftv2vertline.png",ftv2vertline_png,229,16,22 },
+#define FTVIMG_vertline 11
+
+ { 0,0,0,0,0,0 }
+#define FTVIMG_UNUSED 12
};
+#define _S(nym) #nym
+#define FTV_ICON_FILE(nym) "ftv2" _S(nym) ".png"
+#define FTVIMG_INDEX(nym) FTVIMG_ ## nym
+#define _INFO(nym) ( image_info[FTVIMG_INDEX(nym)] )
+#define IMG_PREAMBLE(nym) \
+ "<img src=\"" FTV_ICON_FILE(nym) "\" " \
+ "alt=\"" << _INFO(nym).alt << "\" " \
+ "width=" << _INFO(nym).width << " " \
+ "height=" << _INFO(nym).height << " "
+
struct FTVNode
{
FTVNode(bool dir,const char *r,const char *f,const char *a,const char *n)
@@ -467,22 +492,22 @@ void FTVHelp::generateIndent(QTextStream &t, FTVNode *n,int level)
{
if (n->isDir)
{
- t << "<img src=\"ftv2plastnode.png\" onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
+ t << IMG_PREAMBLE(plastnode) << "onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
}
else
{
- t << "<img src=\"ftv2lastnode.png\"/>";
+ t << IMG_PREAMBLE(lastnode) << "/>";
}
}
else
{
if (n->isDir)
{
- t << "<img src=\"ftv2pnode.png\" onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
+ t << IMG_PREAMBLE(pnode) << "onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
}
else
{
- t << "<img src=\"ftv2node.png\"/>";
+ t << IMG_PREAMBLE(node) << "/>";
}
}
}
@@ -490,11 +515,11 @@ void FTVHelp::generateIndent(QTextStream &t, FTVNode *n,int level)
{
if (n->isLast)
{
- t << "<img src=\"ftv2blank.png\"/>";
+ t << IMG_PREAMBLE(blank) << "/>";
}
else
{
- t << "<img src=\"ftv2vertline.png\"/>";
+ t << IMG_PREAMBLE(vertline) << "/>";
}
}
}
@@ -550,7 +575,7 @@ void FTVHelp::generateTree(QTextStream &t, const QList<FTVNode> &nl,int level)
generateIndent(t,n,0);
if (n->isDir)
{
- t << "<img src=\"ftv2folderclosed.png\" onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
+ t << IMG_PREAMBLE(folderclosed) << "onclick=\"toggleFolder('folder" << folderId << "', this)\"/>";
generateLink(t,n);
t << "</p>\n";
t << spaces << "<div id=\"folder" << folderId << "\">\n";
@@ -560,7 +585,7 @@ void FTVHelp::generateTree(QTextStream &t, const QList<FTVNode> &nl,int level)
}
else
{
- t << "<img src=\"ftv2doc.png\"/>";
+ t << IMG_PREAMBLE(doc) << "/>";
generateLink(t,n);
t << "</p>\n";
}
@@ -680,7 +705,7 @@ void FTVHelp::generateTreeView()
t << " {\n";
t << " var folder = document.getElementById(id);\n";
t << " var l = 0;\n";
- t << " var vl = \"ftv2vertline.png\";\n";
+ t << " var vl = \"" FTV_ICON_FILE(vertline) "\";\n";
t << " if (imageNode != null && imageNode.nodeName != \"IMG\") \n";
t << " {\n";
t << " imageNode = findChildNode(imageNode, \"IMG\");\n";
@@ -700,14 +725,14 @@ void FTVHelp::generateTreeView()
t << " if (imageNode != null) \n";
t << " {\n";
t << " l = imageNode.src.length;\n";
- t << " imageNode.nextSibling.src = \"ftv2folderclosed.png\";\n";
- t << " if (imageNode.src.substring(l-13,l) == \"ftv2mnode.png\")\n";
+ t << " imageNode.nextSibling.src = \"" FTV_ICON_FILE(folderclosed) "\";\n";
+ t << " if (imageNode.src.substring(l-13,l) == \"" FTV_ICON_FILE(mnode) "\")\n";
t << " {\n";
- t << " imageNode.src = \"ftv2pnode.png\";\n";
+ t << " imageNode.src = \"" FTV_ICON_FILE(pnode) "\";\n";
t << " }\n";
- t << " else if (imageNode.src.substring(l-17,l) == \"ftv2mlastnode.png\")\n";
+ t << " else if (imageNode.src.substring(l-17,l) == \"" FTV_ICON_FILE(mlastnode) "\")\n";
t << " {\n";
- t << " imageNode.src = \"ftv2plastnode.png\";\n";
+ t << " imageNode.src = \"" FTV_ICON_FILE(plastnode) "\";\n";
t << " }\n";
t << " }\n";
t << " folder.style.display = \"none\";\n";
@@ -723,14 +748,14 @@ void FTVHelp::generateTreeView()
t << " if (imageNode != null) \n";
t << " {\n";
t << " l = imageNode.src.length;\n";
- t << " imageNode.nextSibling.src = \"ftv2folderopen.png\";\n";
- t << " if (imageNode.src.substring(l-13,l) == \"ftv2pnode.png\")\n";
+ t << " imageNode.nextSibling.src = \"" FTV_ICON_FILE(folderopen) "\";\n";
+ t << " if (imageNode.src.substring(l-13,l) == \"" FTV_ICON_FILE(pnode) "\")\n";
t << " {\n";
- t << " imageNode.src = \"ftv2mnode.png\";\n";
+ t << " imageNode.src = \"" FTV_ICON_FILE(mnode) "\";\n";
t << " }\n";
- t << " else if (imageNode.src.substring(l-17,l) == \"ftv2plastnode.png\")\n";
+ t << " else if (imageNode.src.substring(l-17,l) == \"" FTV_ICON_FILE(plastnode) "\")\n";
t << " {\n";
- t << " imageNode.src = \"ftv2mlastnode.png\";\n";
+ t << " imageNode.src = \"" FTV_ICON_FILE(mlastnode) "\";\n";
t << " }\n";
t << " }\n";
t << " folder.style.display = \"block\";\n";
diff --git a/src/htmldocvisitor.cpp b/src/htmldocvisitor.cpp
index c234a8a..22a81a5 100644
--- a/src/htmldocvisitor.cpp
+++ b/src/htmldocvisitor.cpp
@@ -275,8 +275,6 @@ void HtmlDocVisitor::visit(DocFormula *f)
m_t << " src=\"" << f->name() << ".png\">";
if (bDisplay)
m_t << endl << "<p>" << endl;
- else
- m_t << " ";
}
void HtmlDocVisitor::visit(DocIndexEntry *)
diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp
index a32f592..615cf94 100644
--- a/src/htmlgen.cpp
+++ b/src/htmlgen.cpp
@@ -88,6 +88,9 @@ static const char *defaultStyleSheet =
" margin-top : 2px; \n"
" margin-bottom : 2px \n"
"}\n"
+"TR.memlist {\n"
+" background-color: #f0f0f0; \n"
+"}\n"
"p.formulaDsp { text-align: center; }\n"
"img.formulaDsp { }\n"
"img.formulaInl { vertical-align: middle; }\n"
diff --git a/src/index.cpp b/src/index.cpp
index faa4091..852143a 100644
--- a/src/index.cpp
+++ b/src/index.cpp
@@ -2285,7 +2285,9 @@ void writeGroupTreeNode(OutputList &ol, GroupDef *gd,int level)
/* Some groups should appear twice under different parent-groups.
* That is why we should not check if it was visited
*/
- if (/*!gd->visited &&*/ (!gd->isASubGroup() || level>0))
+ if (/*!gd->visited &&*/ (!gd->isASubGroup() || level>0) &&
+ (!gd->isReference() || Config_getBool("EXTERNAL_GROUPS")) // hide external groups by default
+ )
{
//printf("gd->name()=%s #members=%d\n",gd->name().data(),gd->countMembers());
// write group info
diff --git a/src/libdoxygen.pro.in b/src/libdoxygen.pro.in
index f48fc0b..7fa3a78 100644
--- a/src/libdoxygen.pro.in
+++ b/src/libdoxygen.pro.in
@@ -65,7 +65,6 @@ HEADERS = bufstr.h \
namespacedef.h \
outputgen.h \
outputlist.h \
- page.h \
pagedef.h \
perlmodgen.h \
pngenc.h \
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index aad22eb..230096c 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -1897,6 +1897,7 @@ void MemberDef::writeEnumDeclaration(OutputList &typeDecl,
if (numVisibleEnumValues>0)
{
uint enumValuesPerLine = (uint)Config_getInt("ENUM_VALUES_PER_LINE");
+ if (enumValuesPerLine==0) enumValuesPerLine=1;
typeDecl.docify("{ ");
if (fmdl)
{
diff --git a/src/memberlist.cpp b/src/memberlist.cpp
index fe4da71..ef5e884 100644
--- a/src/memberlist.cpp
+++ b/src/memberlist.cpp
@@ -413,6 +413,15 @@ void MemberList::addListReferences(Definition *def)
if (md->getGroupDef()==0 || def->definitionType()==Definition::TypeGroup)
{
md->addListReference(def);
+ if (md->memberType()==MemberDef::Enumeration && md->enumFieldList())
+ {
+ MemberListIterator vmli(*md->enumFieldList());
+ MemberDef *vmd;
+ for ( ; (vmd=vmli.current()) ; ++vmli)
+ {
+ vmd->addListReference(def);
+ }
+ }
}
}
if (memberGroupList)
diff --git a/src/page.h b/src/page.h
deleted file mode 100644
index 82e5256..0000000
--- a/src/page.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/******************************************************************************
- *
- *
- *
- * Copyright (C) 1997-2003 by Dimitri van Heesch.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation under the terms of the GNU General Public License is hereby
- * granted. No representations are made about the suitability of this software
- * for any purpose. It is provided "as is" without express or implied warranty.
- * See the GNU General Public License for more details.
- *
- * Documents produced by Doxygen are derivative works derived from the
- * input used in their production; they are not affected by this license.
- *
- */
-
-#if 0
-#include "sortdict.h"
-#include "config.h"
-#include "docparser.h"
-
-#include "section.h"
-#include "doxygen.h"
-
-class PageInfo
-{
- public:
- PageInfo(const char *f, int l,const char *n,const char *d,const char *t) :
- defFileName(f), defLine(l), name(n),
- doc(d), title(t), context(0), xrefListItems(0),m_inGroup(0)
- {
- sectionDict = new SectionDict(17);
- }
- ~PageInfo()
- {
- delete sectionDict;
- }
-
- // where the page definition was found
- QCString defFileName;
- int defLine;
-
- // contents of the page
- QCString name;
- QCString doc;
- QCString title;
-
- // external reference? if so then this is the tag file name
- QCString reference;
- QCString fileName;
-
- // class, file or namespace in which the page was found
- Definition *context;
-
- // functions to get a uniform interface with Definitions
- QCString getOutputFileBase() const { return fileName; }
- bool isReference() const { return !reference.isEmpty(); }
- QCString getReference() const { return reference; }
-
- //void addSections(QList<QCString> *anchorList)
- //{
- // if (anchorList)
- // {
- // QCString *s=anchorList->first();
- // while (s)
- // {
- // SectionInfo *si=0;
- // if (!s->isEmpty() && (si=Doxygen::sectionDict[*s]))
- // {
- // //printf("Add section `%s' to definition `%s'\n",
- // // si->label.data(),n.data());
- // if (sectionDict==0)
- // {
- // sectionDict = new SectionDict(17);
- // }
- // if (sectionDict->find(*s)==0)
- // {
- // sectionDict->insert(*s,si);
- // }
- // si->pageRef = this;
- // si->fileName = fileName;
- // }
- // s=anchorList->next();
- // }
- // }
- //}
- void findSectionsInDocumentation()
- {
- docFindSections(doc,this,0,0,defFileName);
- }
-
- void writeDocAnchorsToTagFile()
- {
- if (!Config_getString("GENERATE_TAGFILE").isEmpty() && sectionDict)
- {
- QDictIterator<SectionInfo> sdi(*sectionDict);
- SectionInfo *si;
- for (;(si=sdi.current());++sdi)
- {
- if (!si->generated)
- {
- Doxygen::tagFile << " <docanchor>" << si->label << "</docanchor>" << endl;
- }
- }
- }
- }
-
-
- void makePartOfGroup(GroupDef *gd) { m_inGroup = gd; }
- GroupDef *getGroupDef() const { return m_inGroup; }
-
- // is this page part of a group
- SectionDict *sectionDict;
- QList<ListItemInfo> *xrefListItems;
-
- private:
- GroupDef *m_inGroup;
-};
-
-class PageSDict : public SDict<PageInfo>
-{
- public:
- PageSDict(int size) : SDict<PageInfo>(size) {}
- virtual ~PageSDict() {}
- int compareItems(GCI i1,GCI i2)
- {
- return stricmp(((PageInfo *)i1)->name,((PageInfo *)i2)->name);
- }
-};
-#endif
diff --git a/src/pagedef.h b/src/pagedef.h
index 77b7cee..3be2e75 100644
--- a/src/pagedef.h
+++ b/src/pagedef.h
@@ -17,11 +17,6 @@
#include "definition.h"
#include "sortdict.h"
-//#include "config.h"
-//#include "docparser.h"
-
-//#include "section.h"
-//#include "doxygen.h"
class PageDef : public Definition
{
@@ -44,97 +39,7 @@ class PageDef : public Definition
QCString title() const { return m_title; }
GroupDef *getGroupDef() const;
void setFileName(const char *name) { m_fileName = name; }
-#if 0
-
- bool isReference() const { return !reference.isEmpty(); }
- QCString getReference() const { return reference; }
- PageInfo(const char *f, int l,const char *n,const char *d,const char *t) :
- defFileName(f), defLine(l), name(n),
- doc(d), title(t), context(0), xrefListItems(0),m_inGroup(0)
- {
- sectionDict = new SectionDict(17);
- }
- ~PageInfo()
- {
- delete sectionDict;
- }
- // where the page definition was found
- QCString defFileName;
- int defLine;
-
- // contents of the page
- QCString name;
- QCString doc;
- QCString title;
-
- // external reference? if so then this is the tag file name
- QCString reference;
- QCString fileName;
-
- // class, file or namespace in which the page was found
- Definition *context;
-
-
- //void addSections(QList<QCString> *anchorList)
- //{
- // if (anchorList)
- // {
- // QCString *s=anchorList->first();
- // while (s)
- // {
- // SectionInfo *si=0;
- // if (!s->isEmpty() && (si=Doxygen::sectionDict[*s]))
- // {
- // //printf("Add section `%s' to definition `%s'\n",
- // // si->label.data(),n.data());
- // if (sectionDict==0)
- // {
- // sectionDict = new SectionDict(17);
- // }
- // if (sectionDict->find(*s)==0)
- // {
- // sectionDict->insert(*s,si);
- // }
- // si->pageRef = this;
- // si->fileName = fileName;
- // }
- // s=anchorList->next();
- // }
- // }
- //}
- void findSectionsInDocumentation()
- {
- docFindSections(doc,this,0,0,defFileName);
- }
-
- void writeDocAnchorsToTagFile()
- {
- if (!Config_getString("GENERATE_TAGFILE").isEmpty() && sectionDict)
- {
- QDictIterator<SectionInfo> sdi(*sectionDict);
- SectionInfo *si;
- for (;(si=sdi.current());++sdi)
- {
- if (!si->generated)
- {
- Doxygen::tagFile << " <docanchor>" << si->label << "</docanchor>" << endl;
- }
- }
- }
- }
-
-
- void makePartOfGroup(GroupDef *gd) { m_inGroup = gd; }
- GroupDef *getGroupDef() const { return m_inGroup; }
-
- // is this page part of a group
- SectionDict *sectionDict;
- QList<ListItemInfo> *xrefListItems;
-
- private:
- GroupDef *m_inGroup;
-#endif
private:
QCString m_fileName;
QCString m_title;
diff --git a/src/pre.l b/src/pre.l
index 667f272..72b05d0 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -354,6 +354,12 @@ static void processConcatOperators(QCString &expr)
//printf("processConcatOperators: out=`%s'\n",expr.data());
}
+static void yyunput (int c,char *buf_ptr );
+static void returnCharToStream(char c)
+{
+ unput(c);
+}
+
/*! replaces the function macro \a def whose argument list starts at
* \a pos in expression \a expr.
* Notice that this routine may scan beyond the \a expr string if needed.
@@ -1900,7 +1906,9 @@ static int getCurrentChar(const QCString &expr,QCString *rest,uint pos)
}
else
{
- int cc=yyinput();unput(cc);
+ int cc=yyinput();
+ returnCharToStream(cc);
+ //unput((char)cc);
//printf("%c=yyinput()\n",cc);
return cc;
}
@@ -1921,7 +1929,8 @@ static void unputChar(const QCString &expr,QCString *rest,uint &pos,char c)
}
else
{
- unput(c);
+ //unput(c);
+ returnCharToStream(c);
}
//printf("result: unputChar(%s,%s,%d,%c)\n",expr.data(),rest ? rest->data() : 0,pos,c);
}
@@ -2114,7 +2123,10 @@ void preprocessFile(const char *fileName,BufStr &output)
}
}
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
extern "C" { // some bogus code to keep the compiler happy
// int preYYwrap() { return 1 ; }
void preYYdummy() { yy_flex_realloc(0,0); }
}
+#endif
+
diff --git a/src/reflist.cpp b/src/reflist.cpp
index 5293f4e..af5a6b3 100644
--- a/src/reflist.cpp
+++ b/src/reflist.cpp
@@ -32,10 +32,8 @@ RefList::RefList(const char *listName,
m_dictIterator = 0;
m_id = 0;
m_listName = listName;
- //m_optionName = optionName;
m_pageTitle = pageTitle;
m_secTitle = secTitle;
- /*m_type = type;*/
}
/*! Destroy the todo list. Currently not called! */
@@ -95,11 +93,6 @@ QCString RefList::listName() const
return m_listName;
}
-//QCString RefList::optionName() const
-//{
-// return m_optionName;
-//}
-
QCString RefList::pageTitle() const
{
return m_pageTitle;
@@ -110,10 +103,3 @@ QCString RefList::sectionTitle() const
return m_secTitle;
}
-
-//BaseOutputDocInterface::SectionTypes RefList::sectionType() const
-//{
-// return m_type;
-//}
-
-
diff --git a/src/reflist.h b/src/reflist.h
index 25e7d2a..66b5f7a 100644
--- a/src/reflist.h
+++ b/src/reflist.h
@@ -50,26 +50,21 @@ class RefList
RefItem *getFirstRefItem();
RefItem *getNextRefItem();
QCString listName() const;
- //QCString optionName() const;
QCString pageTitle() const;
QCString sectionTitle() const;
- //BaseOutputDocInterface::SectionTypes sectionType() const;
RefList(const char *listName,
const char *pageTitle,const char *secTitle
- /*,BaseOutputDocInterface::SectionTypes type*/
);
~RefList();
private:
int m_id;
QCString m_listName;
- //QCString m_optionName;
QCString m_pageTitle;
QCString m_secTitle;
QIntDict<RefItem> *m_dict;
QIntDictIterator<RefItem> *m_dictIterator;
- //BaseOutputDocInterface::SectionTypes m_type;
};
#endif
diff --git a/src/scanner.l b/src/scanner.l
index 76a726a..ba3704c 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -1884,9 +1884,9 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
/*
<FindFieldArg>"," { unput(*yytext); BEGIN(FindFields); }
*/
-<ReadBody,ReadNSBody>[^\r\n\#{}"'/]* { current->program += yytext ; }
-<ReadBody,ReadNSBody>"//".* { current->program += yytext ; }
-<ReadBody,ReadNSBody>"#".* { if (! insidePHP)
+<ReadBody,ReadNSBody>[^\r\n\#{}"'/]* { current->program += yytext ; }
+<ReadBody,ReadNSBody>"//".* { current->program += yytext ; }
+<ReadBody,ReadNSBody>"#".* { if (! insidePHP)
REJECT;
current->program += yytext ;
}
@@ -4454,14 +4454,16 @@ PHPKW ("require"|"require_once"|"include"|"include_once"|"echo")[^a-zA-Z0-9_;]
<LineDoc>[\n\r]+{B}*"//"[!/] { lineCount(); }
<LineDoc>\n {
yyLineNr++;
- if (!Config_getBool("HIDE_IN_BODY_DOCS") &&
- lastDocContext==SkipCurly) // inside body
+ if (lastDocContext==SkipCurly) // inside body
{
- if (!previous->doc.isEmpty())
+ if (!Config_getBool("HIDE_IN_BODY_DOCS"))
{
- previous->doc+="<p>";
+ if (!previous->doc.isEmpty())
+ {
+ previous->doc+="<p>";
+ }
+ previous->doc += current->brief;
}
- previous->doc += current->brief;
current->brief.resize(0);
}
BEGIN( lastDocContext );
@@ -5003,7 +5005,10 @@ void parseMain(Entry *rt)
parseCompounds(rt);
}
+#if !defined(YY_FLEX_SUBMINOR_VERSION)
//----------------------------------------------------------------------------
extern "C" { // some bogus code to keep the compiler happy
void scannerYYdummy() { yy_flex_realloc(0,0); }
}
+#endif
+
diff --git a/src/tagreader.cpp b/src/tagreader.cpp
index 45fe620..61af14c 100644
--- a/src/tagreader.cpp
+++ b/src/tagreader.cpp
@@ -895,6 +895,10 @@ void TagFileParser::buildMemberList(Entry *ce,QList<TagMemberInfo> &members)
me->virt = tmi->virt;
me->stat = tmi->isStatic;
me->fileName = ce->fileName;
+ if (ce->section == Entry::GROUPDOC_SEC)
+ {
+ me->groups->append(new Grouping(ce->name,Grouping::GROUPING_INGROUP));
+ }
addDocAnchors(me,tmi->docAnchors);
TagInfo *ti = new TagInfo;
ti->tagName = m_tagName;
@@ -1113,8 +1117,8 @@ void TagFileParser::buildLists(Entry *root)
}
// build group list, but only if config file says to include it
- if (Config_getBool("EXTERNAL_GROUPS"))
- {
+ //if (Config_getBool("EXTERNAL_GROUPS"))
+ //{
TagGroupInfo *tgi = m_tagFileGroups.first();
while (tgi)
{
@@ -1132,7 +1136,7 @@ void TagFileParser::buildLists(Entry *root)
root->addSubEntry(ge);
tgi = m_tagFileGroups.next();
}
- }
+ //}
// build page list
TagPageInfo *tpi = m_tagFilePages.first();
diff --git a/src/translator_br.h b/src/translator_br.h
index 17e2ce9..f45947f 100644
--- a/src/translator_br.h
+++ b/src/translator_br.h
@@ -13,26 +13,21 @@
* Brazilian Portuguese version by
* Fabio "FJTC" Jun Takada Chino <chino@icmc.usp.br>
* http://www.icmc.sc.usp.br/~chino
- * Version: 1.2.19 (2002/10/15)
+ * Version: 1.3 (2003/05/01)
*
* History:
+ * 1.3:
+ * - Updated to Doxygen 1.3.x.
* 1.2.19:
* - Updated to Doxygen 1.2.19
* - Translation Review (Thanks to Jorge Ramos and others)
* - Small fixes in C output.
* - Latex generation support fixed (invalid package name).
- * 1.2.18 (2002/07/30):
- * - Updated to Doxygen 1.2.18
- * 1.2.17 (2002/07/10):
- * - Updated to Doxygen 1.2.17.
- * 1.2.13.2 (2002/05/10):
- * - Latex Babel package language name fixed.
- * - "Estrura" bug identified and fixed (Thanks to Jorge Ramos).
*/
#ifndef TRANSLATOR_BR_H
#define TRANSLATOR_BR_H
-class TranslatorBrazilian: public TranslatorAdapter_1_3
+class TranslatorBrazilian: public Translator
{
public:
@@ -1422,5 +1417,48 @@ class TranslatorBrazilian: public TranslatorAdapter_1_3
return "Eventos";
}
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return "Tipos do Pacote";
+ }
+
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return "Funções do Pacote";
+ }
+
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return "Funções Estáticas do Pacote";
+ }
+
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return "Atributos do Pacote";
+ }
+
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return "Atributos Estáticos do Pacote";
+ }
+
};
#endif
diff --git a/src/translator_cz.h b/src/translator_cz.h
index 0b2c5e0..c493e33 100644
--- a/src/translator_cz.h
+++ b/src/translator_cz.h
@@ -147,6 +147,9 @@
// 2002/10/15
// - The new trEvents() and trEventDocumentation() implemented.
//
+// 2003/04/28
+// - The five new methods "since 1.3" implemented.
+//
// Todo
// ----
// - The trReimplementedFromList() should pass the kind of the
@@ -165,8 +168,7 @@
// Windows version. The version which does not call the function is
// probably slightly faster.
-
-class TranslatorCzech : public TranslatorAdapter_1_3
+class TranslatorCzech : public Translator
{
private:
/*! The decode() inline assumes the source written in the
@@ -1553,12 +1555,51 @@ class TranslatorCzech : public TranslatorAdapter_1_3
*/
virtual QCString trEvents()
{
- return "Události";
+ return decode("Události");
}
/*! Header used for the documentation section of a class' events. */
virtual QCString trEventDocumentation()
{
- return "Dokumentace událostí";
+ return decode("Dokumentace událostí");
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return decode("Typy v balíku");
+ }
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return decode("Funkce v balíku");
+ }
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return decode("Statické funkce v balíku");
+ }
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return decode("Atributy balíku");
+ }
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return decode("Statické atributy balíku");
}
};
diff --git a/src/translator_de.h b/src/translator_de.h
index 08f44a7..215b572 100644
--- a/src/translator_de.h
+++ b/src/translator_de.h
@@ -73,13 +73,17 @@
// - changed "Datenelemente" to "Methoden" in
// tr{,Static}{Public,Protected,Private}Members
//
+// 2003/04/28 Jens Seidel (jensseidel@users.sourceforge.net)
+// - Updated for "new since 1.3" version
+// - translated Java package to Paket
+//
// Todo:
// - see FIXME
#ifndef TRANSLATOR_DE_H
#define TRANSLATOR_DE_H
-class TranslatorGerman : public TranslatorAdapter_1_3
+class TranslatorGerman : public Translator
{
public:
@@ -1225,31 +1229,31 @@ class TranslatorGerman : public TranslatorAdapter_1_3
/*! Used as the title of a Java package */
virtual QCString trPackage(const char *name)
{
- return (QCString)"Package "+name;
+ return (QCString)"Paket "+name;
}
/*! Title of the package index page */
virtual QCString trPackageList()
{
- return "Package Liste";
+ return "Paketliste";
}
/*! The description of the package index page */
virtual QCString trPackageListDescription()
{
- return "Hier folgen die packages mit einer Kurzbeschreibung (wenn verfügbar):";
+ return "Hier folgen die Pakete mit einer Kurzbeschreibung (wenn verfügbar):";
}
/*! The link name in the Quick links header for each page */
virtual QCString trPackages()
{
- return "Packages";
+ return "Pakete";
}
/*! Used as a chapter title for Latex & RTF output */
virtual QCString trPackageDocumentation()
{
- return "Package Dokumentation";
+ return "Paketdokumentation";
}
/*! Text shown before a multi-line define */
@@ -1477,6 +1481,49 @@ class TranslatorGerman : public TranslatorAdapter_1_3
return "Ereignisdokumentation";
}
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return "Pakettypen";
+ }
+
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return "Paketfunktionen";
+ }
+
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return "Statische Paketfunktionen";
+ }
+
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return "Paketattribute";
+ }
+
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return "Statische Paketattribute";
+ }
+
};
#endif
diff --git a/src/translator_fr.h b/src/translator_fr.h
index 627614e..4e6ffe3 100644
--- a/src/translator_fr.h
+++ b/src/translator_fr.h
@@ -43,11 +43,15 @@
* -------------+------------------------------------------------------------
* 2003-02-04 | Corrected typo. Thanks to Bertrand M. :)
* -------------+------------------------------------------------------------
+ * 2003-03-29 | Update for new since 1.3
+ * -------------+------------------------------------------------------------
+ * 2003-03-29 | Changed fonction into m‚thode.
+ * -------------+------------------------------------------------------------
*/
#ifndef TRANSLATOR_FR_H
#define TRANSLATOR_FR_H
-class TranslatorFrench : public TranslatorAdapter_1_3
+class TranslatorFrench : public Translator
{
public:
QCString idLanguage()
@@ -79,35 +83,35 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! used in the compound documentation before a list of related functions. */
QCString trRelatedFunctions()
- { return "Fonctions associées"; }
+ { return "Fonctions associ‚es"; }
/*! subscript for the related functions. */
QCString trRelatedSubscript()
- { return "(Noter que ces fonctions ne sont pas des méthodes de la classe)"; }
+ { return "(Noter que ces fonctions ne sont pas des m‚thodes de la classe)"; }
/*! header that is put before the detailed description of files, classes and namespaces. */
QCString trDetailedDescription()
- { return "Description détaillée"; }
+ { return "Description d‚taill‚e"; }
/*! header that is put before the list of typedefs. */
QCString trMemberTypedefDocumentation()
- { return "Documentation des types imbriqués"; }
+ { return "Documentation des types imbriqu‚s"; }
/*! header that is put before the list of enumerations. */
QCString trMemberEnumerationDocumentation()
- { return "Documentation des énumérations imbriquées"; }
+ { return "Documentation des ‚num‚rations imbriqu‚es"; }
/*! header that is put before the list of member functions. */
QCString trMemberFunctionDocumentation()
- { return "Documentation des méthodes"; }
+ { return "Documentation des m‚thodes"; }
/*! header that is put before the list of member attributes. */
QCString trMemberDataDocumentation()
- { return "Documentation des données imbriquées"; }
+ { return "Documentation des donn‚es imbriqu‚es"; }
/*! this is the text of a link put after brief descriptions. */
QCString trMore()
- { return "Plus de détails..."; }
+ { return "Plus de d‚tails..."; }
/*! put in the class documentation */
QCString trListOfAllMembers()
@@ -119,33 +123,33 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! this is the first part of a sentence that is followed by a class name */
QCString trThisIsTheListOfAllMembers()
- { return "Ceci est la liste complète des membres de "; }
+ { return "Ceci est la liste complŠte des membres de "; }
/*! this is the remainder of the sentence after the class name */
QCString trIncludingInheritedMembers()
- { return " y compris des membres des classes héritées."; }
+ { return " y compris des membres des classes h‚rit‚es."; }
/*! this is put at the author sections at the bottom of man pages.
* parameter s is name of the project name.
*/
QCString trGeneratedAutomatically(const char *s)
- { QCString result="Généré automatiquement par Doxygen";
+ { QCString result="G‚n‚r‚ automatiquement par Doxygen";
if (s) result+=(QCString)" pour "+s;
- result+=" à partir du code source.";
+ result+=" … partir du code source.";
return result;
}
/*! put after an enum name in the list of all members */
QCString trEnumName()
- { return "énumération"; }
+ { return "‚num‚ration"; }
/*! put after an enum value in the list of all members */
QCString trEnumValue()
- { return "élément d'une énumération"; }
+ { return "‚l‚ment d'une ‚num‚ration"; }
/*! put after an undocumented member in the list of all members */
QCString trDefinedIn()
- { return "défini dans"; }
+ { return "d‚fini dans"; }
// quick reference sections
@@ -157,7 +161,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is put above each page as a link to the class hierarchy */
QCString trClassHierarchy()
- { return "Hiérarchie des classes"; }
+ { return "Hi‚rarchie des classes"; }
/*! This is put above each page as a link to the list of annotated classes */
QCString trCompoundList()
@@ -169,7 +173,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is put above each page as a link to the list of all verbatim headers */
QCString trHeaderFiles()
- { return "Fichiers d'en-tête"; }
+ { return "Fichiers d'en-tˆte"; }
/*! This is put above each page as a link to all members of compounds. */
QCString trCompoundMembers()
@@ -177,11 +181,11 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is put above each page as a link to all members of files. */
QCString trFileMembers()
- { return "Déclarations"; }
+ { return "D‚clarations"; }
/*! This is put above each page as a link to all related pages. */
QCString trRelatedPages()
- { return "Pages associées"; }
+ { return "Pages associ‚es"; }
/*! This is put above each page as a link to all examples. */
QCString trExamples()
@@ -193,29 +197,29 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is an introduction to the class hierarchy. */
QCString trClassHierarchyDescription()
- { return "Cette liste d'héritage est, autant que possible, "
- "classée par ordre alphabétique"; }
+ { return "Cette liste d'h‚ritage est, autant que possible, "
+ "class‚e par ordre alphab‚tique"; }
/*! This is an introduction to the list with all files. */
QCString trFileListDescription(bool extractAll)
{
QCString result="Liste de tous les fichiers ";
- if (!extractAll) result+="documentés ";
- result+="avec une brève description :";
+ if (!extractAll) result+="document‚s ";
+ result+="avec une brŠve description :";
return result;
}
/*! This is an introduction to the annotated compound list. */
QCString trCompoundListDescription()
{ return "Liste des classes, des structures et des unions "
- "avec une brève description :";
+ "avec une brŠve description :";
}
/*! This is an introduction to the page with all class members. */
QCString trCompoundMembersDescription(bool extractAll)
{
QCString result="Liste de tous les membres de classe ";
- if (!extractAll) result+="documentés ";
+ if (!extractAll) result+="document‚s ";
result+="avec les liens vers ";
if (!extractAll) result+="la documentation de la classe correspondante :";
else result+="les classes auxquelles ils appartiennent :";
@@ -225,18 +229,18 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is an introduction to the page with all file members. */
QCString trFileMembersDescription(bool extractAll)
{
- QCString result="Liste de toutes les déclarations";
- if (!extractAll) result+="documentées ";
+ QCString result="Liste de toutes les d‚clarations";
+ if (!extractAll) result+="document‚es ";
result+="avec liens sur ";
if (extractAll) result+="la documentation du fichier correspondant "
"pour chacune :";
- else result+="les fichiers dans lesquels elles sont définies :";
+ else result+="les fichiers dans lesquels elles sont d‚finies :";
return result;
}
/*! This is an introduction to the page with the list of all header files. */
QCString trHeaderFilesDescription()
- { return "Liste de tous les fichiers d'en-tête constituant "
+ { return "Liste de tous les fichiers d'en-tˆte constituant "
"l'interface de programmation :"; }
/*! This is an introduction to the page with the list of all examples */
@@ -245,7 +249,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is an introduction to the page with the list of related pages */
QCString trRelatedPagesDescription()
- { return "Liste de toutes les pages de documentation associées :"; }
+ { return "Liste de toutes les pages de documentation associ‚es :"; }
/*! This is an introduction to the page with the list of class/file groups */
QCString trModulesDescription()
@@ -274,7 +278,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
* class hierarchy.
*/
QCString trHierarchicalIndex()
- { return "Index hiérarchique"; }
+ { return "Index hi‚rarchique"; }
/*! This is used in LaTeX as the title of the chapter with the
* annotated compound index.
@@ -320,13 +324,13 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is used in LaTeX as the title of the document */
QCString trReferenceManual()
- { return "Manuel de référence"; }
+ { return "Manuel de r‚f‚rence"; }
/*! This is used in the documentation of a file as a header before the
* list of defines
*/
QCString trDefines()
- { return "Définitions des macros"; }
+ { return "D‚finitions des macros"; }
/*! This is used in the documentation of a file as a header before the
* list of function prototypes
@@ -338,13 +342,13 @@ class TranslatorFrench : public TranslatorAdapter_1_3
* list of typedefs
*/
QCString trTypedefs()
- { return "Définitions des types"; }
+ { return "D‚finitions des types"; }
/*! This is used in the documentation of a file as a header before the
* list of enumerations
*/
QCString trEnumerations()
- { return "Énumérations"; }
+ { return "num‚rations"; }
/*! This is used in the documentation of a file as a header before the
* list of (global) functions
@@ -362,7 +366,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
* list of (global) variables
*/
QCString trEnumerationValues()
- { return "Éléments énumérés"; }
+ { return "l‚ments ‚num‚r‚s"; }
/*! This is used in the documentation of a file before the list of
* documentation blocks for defines
@@ -386,13 +390,13 @@ class TranslatorFrench : public TranslatorAdapter_1_3
* of documentation blocks for enumeration types
*/
QCString trEnumerationTypeDocumentation()
- { return "Documentation du type de l'énumération"; }
+ { return "Documentation du type de l'‚num‚ration"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for enumeration values
*/
QCString trEnumerationValueDocumentation()
- { return "Documentation de l'élément de l'énumeration"; }
+ { return "Documentation de l'‚l‚ment de l'‚numeration"; }
/*! This is used in the documentation of a file/namespace before the list
* of documentation blocks for functions
@@ -417,7 +421,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
QCString trGeneratedAt(const char *date,const char *projName)
{
- QCString result=(QCString)"Généré le "+date;
+ QCString result=(QCString)"G‚n‚r‚ le "+date;
if (projName) result+=(QCString)" pour "+projName;
result+=(QCString)" par ";
return result;
@@ -426,13 +430,13 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
QCString trWrittenBy()
{
- return "écrit par";
+ return "‚crit par";
}
/*! this text is put before a class diagram */
QCString trClassDiagram(const char *clName)
{
- return (QCString)"Graphe d'héritage de la classe "+clName;
+ return (QCString)"Graphe d'h‚ritage de la classe "+clName;
}
/*! this text is generated when the \\internal command is used. */
@@ -441,8 +445,8 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! this text is generated when the \\reimp command is used. */
QCString trReimplementedForInternalReasons()
- { return "Redéfini pour des raisons internes; "
- "l'interface n'est pas modifiée";
+ { return "Red‚fini pour des raisons internes; "
+ "l'interface n'est pas modifi‚e";
}
/*! this text is generated when the \\warning command is used. */
@@ -467,11 +471,11 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! this text is generated when the \\sa command is used. */
QCString trSeeAlso()
- { return "Voir également"; }
+ { return "Voir ‚galement"; }
/*! this text is generated when the \\param command is used. */
QCString trParameters()
- { return "Paramètres"; }
+ { return "ParamŠtres"; }
/*! this text is generated when the \\exception command is used. */
QCString trExceptions()
@@ -479,7 +483,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! this text is used in the title page of a LaTeX document. */
QCString trGeneratedBy()
- { return "Généré par"; }
+ { return "G‚n‚r‚ par"; }
// new since 0.49-990307
@@ -490,8 +494,8 @@ class TranslatorFrench : public TranslatorAdapter_1_3
virtual QCString trNamespaceListDescription(bool extractAll)
{
QCString result="Liste de tous les namespaces ";
- if (!extractAll) result+="documentés ";
- result+="avec une brève description :";
+ if (!extractAll) result+="document‚s ";
+ result+="avec une brŠve description :";
return result;
}
@@ -509,7 +513,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
* related classes
*/
virtual QCString trRelatedFunctionDocumentation()
- { return "Documentation des fonctions amies et associées"; }
+ { return "Documentation des fonctions amies et associ‚es"; }
//////////////////////////////////////////////////////////////////////////
// new since 0.49-990425
@@ -520,7 +524,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
ClassDef::CompoundType compType,
bool /*isTemplate*/)
{
- QCString result="Référence de ";
+ QCString result="R‚f‚rence de ";
switch(compType)
{
case ClassDef::Class: result+="la classe "; break;
@@ -537,7 +541,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! used as the title of the HTML page of a file */
virtual QCString trFileReference(const char *fileName)
{
- QCString result= "Référence du fichier ";
+ QCString result= "R‚f‚rence du fichier ";
result += fileName;
return result;
}
@@ -545,7 +549,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! used as the title of the HTML page of a namespace */
virtual QCString trNamespaceReference(const char *namespaceName)
{
- QCString result= "Référence du namespace ";
+ QCString result= "R‚f‚rence du namespace ";
result += namespaceName;
return result;
}
@@ -560,17 +564,17 @@ class TranslatorFrench : public TranslatorAdapter_1_3
virtual QCString trStaticPublicMembers()
{ return "Membres publics statiques"; }
virtual QCString trProtectedMembers()
- { return "Membres protégés"; }
+ { return "Membres prot‚g‚s"; }
virtual QCString trProtectedSlots()
- { return "Connecteurs protégés"; }
+ { return "Connecteurs prot‚g‚s"; }
virtual QCString trStaticProtectedMembers()
- { return "Membres protégés statiques"; }
+ { return "Membres prot‚g‚s statiques"; }
virtual QCString trPrivateMembers()
- { return "Membres privés"; }
+ { return "Membres priv‚s"; }
virtual QCString trPrivateSlots()
- { return "Connecteurs privés"; }
+ { return "Connecteurs priv‚s"; }
virtual QCString trStaticPrivateMembers()
- { return "Membres privés statiques"; }
+ { return "Membres priv‚s statiques"; }
/*! this function is used to produce a comma-separated list of items.
* use generateMarker(i) to indicate where item i should be put.
@@ -602,7 +606,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trInheritsList(int numEntries)
{
- return "Est dérivée de "+trWriteList(numEntries)+".";
+ return "Est d‚riv‚e de "+trWriteList(numEntries)+".";
}
/*! used in class documentation to produce a list of super classes,
@@ -610,7 +614,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trInheritedByList(int numEntries)
{
- return "Dérivée par "+trWriteList(numEntries)+".";
+ return "D‚riv‚e par "+trWriteList(numEntries)+".";
}
/*! used in member documentation blocks to produce a list of
@@ -618,7 +622,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trReimplementedFromList(int numEntries)
{
- return "Redéfinie à partir de "+trWriteList(numEntries)+".";
+ return "Red‚finie … partir de "+trWriteList(numEntries)+".";
}
/*! used in member documentation blocks to produce a list of
@@ -626,7 +630,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trReimplementedInList(int numEntries)
{
- return "Redéfinie dans "+trWriteList(numEntries)+".";
+ return "Red‚finie dans "+trWriteList(numEntries)+".";
}
/*! This is put above each page as a link to all members of namespaces. */
@@ -637,10 +641,10 @@ class TranslatorFrench : public TranslatorAdapter_1_3
virtual QCString trNamespaceMemberDescription(bool extractAll)
{
QCString result="Voici une liste de tous les membres de namespace";
- if (!extractAll) result+="documentés ";
+ if (!extractAll) result+="document‚s ";
result+=" avec liens vers ";
if (extractAll)
- result+="les documentations des namespaces associés :";
+ result+="les documentations des namespaces associ‚s :";
else
result+="les namespaces auxquels ils appartiennent :";
return result;
@@ -678,7 +682,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
bool single)
{ // here s is one of " Class", " Struct" or " Union"
// single is true implies a single file
- QCString result=(QCString)"La documentation associée à cette ";
+ QCString result=(QCString)"La documentation associ‚e … cette ";
switch(compType)
{
case ClassDef::Class: result+="classe"; break;
@@ -687,7 +691,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
case ClassDef::Interface: result+="interface"; break;
case ClassDef::Exception: result+="exception"; break;
}
- result+=" a été générée à partir ";
+ result+=" a ‚t‚ g‚n‚r‚e … partir ";
if (single) result+=" du fichier suivant :";
else result+="des fichiers suivants :";
return result;
@@ -698,7 +702,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trAlphabeticalList()
{
- return "Liste par ordre alphabétique";
+ return "Liste par ordre alphab‚tique";
}
@@ -708,7 +712,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! This is used as the heading text for the retval command. */
virtual QCString trReturnValues()
- { return "Valeurs retournées"; }
+ { return "Valeurs retourn‚es"; }
/*! This is in the (quick) index as a link to the main page (index.html)
*/
@@ -731,11 +735,11 @@ class TranslatorFrench : public TranslatorAdapter_1_3
}
virtual QCString trDefinedAtLineInSourceFile()
{
- return "Définition à la ligne @0 du fichier @1.";
+ return "D‚finition … la ligne @0 du fichier @1.";
}
virtual QCString trDefinedInSourceFile()
{
- return "Définition dans le fichier @0.";
+ return "D‚finition dans le fichier @0.";
}
//////////////////////////////////////////////////////////////////////////
// new since 0.49-991205
@@ -743,7 +747,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
virtual QCString trDeprecated()
{
- return "Obsolète";
+ return "ObsolŠte";
}
//////////////////////////////////////////////////////////////////////////
@@ -758,7 +762,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! this text is put before an include dependency graph */
virtual QCString trInclDepGraph(const char *fName)
{
- return (QCString)"Graphe des dépendances par inclusion pour "+fName+":";
+ return (QCString)"Graphe des d‚pendances par inclusion pour "+fName+":";
}
/*! header that is put before the list of constructor/destructors. */
virtual QCString trConstructorDocumentation()
@@ -773,12 +777,12 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! Used in the file sources to point to the corresponding documentation. */
virtual QCString trGotoDocumentation()
{
- return "Aller à la documentation de ce fichier.";
+ return "Aller … la documentation de ce fichier.";
}
/*! Text for the \\pre command */
virtual QCString trPrecondition()
{
- return "Précondition";
+ return "Pr‚condition";
}
/*! Text for the \\post command */
virtual QCString trPostcondition()
@@ -802,15 +806,15 @@ class TranslatorFrench : public TranslatorAdapter_1_3
}
virtual QCString trGraphicalHierarchy()
{
- return "Diagramme hiérarchique des classes";
+ return "Diagramme hi‚rarchique des classes";
}
virtual QCString trGotoGraphicalHierarchy()
{
- return "Aller au diagramme hiérarchique des classes";
+ return "Aller au diagramme hi‚rarchique des classes";
}
virtual QCString trGotoTextualHierarchy()
{
- return "Aller à la hiérarchie des classes en texte";
+ return "Aller … la hi‚rarchie des classes en texte";
}
virtual QCString trPageIndex()
{
@@ -839,27 +843,27 @@ class TranslatorFrench : public TranslatorAdapter_1_3
}
virtual QCString trProtectedTypes()
{
- return "Types Protégés";
+ return "Types Prot‚g‚s";
}
virtual QCString trProtectedAttribs()
{
- return "Attributs Protégés";
+ return "Attributs Prot‚g‚s";
}
virtual QCString trStaticProtectedAttribs()
{
- return "Attributs Protégés Statiques";
+ return "Attributs Prot‚g‚s Statiques";
}
virtual QCString trPrivateTypes()
{
- return "Types Privés";
+ return "Types Priv‚s";
}
virtual QCString trPrivateAttribs()
{
- return "Attributs Privés";
+ return "Attributs Priv‚s";
}
virtual QCString trStaticPrivateAttribs()
{
- return "Attributs Privés Statiques";
+ return "Attributs Priv‚s Statiques";
}
//////////////////////////////////////////////////////////////////////////
@@ -874,7 +878,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! Used as the header of the todo list */
virtual QCString trTodoList()
{
- return "Liste des choses à faire";
+ return "Liste des choses … faire";
}
//////////////////////////////////////////////////////////////////////////
@@ -883,7 +887,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
virtual QCString trReferencedBy()
{
- return "Référencé par";
+ return "R‚f‚renc‚ par";
}
virtual QCString trRemarks()
{
@@ -910,32 +914,32 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! title of the graph legend page */
virtual QCString trLegendTitle()
{
- return "Légende du graphe";
+ return "L‚gende du graphe";
}
/*! page explaining how the dot graph's should be interpreted */
virtual QCString trLegendDocs()
{
return
- "Cette page explique comment interpréter les graphes générés "
+ "Cette page explique comment interpr‚ter les graphes g‚n‚r‚s "
"par doxygen.<p>\n"
- "Considérez l'exemple suivant:\n"
+ "Consid‚rez l'exemple suivant:\n"
"\\code\n"
- "/*! Classe invisible à cause d'une troncature */\n"
+ "/*! Classe invisible … cause d'une troncature */\n"
"class Invisible { };\n\n"
- "/*! Classe tronquée, la relation d'héritage est masquée */\n"
+ "/*! Classe tronqu‚e, la relation d'h‚ritage est masqu‚e */\n"
"class Truncated : public Invisible { };\n\n"
- "/*! Classe non documentée avec des commentaires Doxygen */\n"
+ "/*! Classe non document‚e avec des commentaires Doxygen */\n"
"class Undocumented { };\n\n"
- "/*! Classe dérivée par héritage public */\n"
+ "/*! Classe d‚riv‚e par h‚ritage public */\n"
"class PublicBase : public Truncated { };\n\n"
- "/*! Classe dérivée par héritage protégé */\n"
+ "/*! Classe d‚riv‚e par h‚ritage prot‚g‚ */\n"
"class ProtectedBase { };\n\n"
- "/*! Classe dérivée par héritage privé */\n"
+ "/*! Classe d‚riv‚e par h‚ritage priv‚ */\n"
"class PrivateBase { };\n\n"
- "/*! Classe utilisée par la classe dérivée */\n"
+ "/*! Classe utilis‚e par la classe d‚riv‚e */\n"
"class Used { };\n\n"
- "/*! Super-classe qui hérite de plusieurs autres classes */\n"
+ "/*! Super-classe qui h‚rite de plusieurs autres classes */\n"
"class Inherited : public PublicBase,\n"
" protected ProtectedBase,\n"
" private PrivateBase,\n"
@@ -945,35 +949,35 @@ class TranslatorFrench : public TranslatorAdapter_1_3
" Used *m_usedClass;\n"
"};\n"
"\\endcode\n"
- "Si la valeur 200 est attribuée au tag \\c MAX_DOT_GRAPH_HEIGHT "
- "du fichier de configuration, cela génèrera le graphe suivant:"
+ "Si la valeur 200 est attribu‚e au tag \\c MAX_DOT_GRAPH_HEIGHT "
+ "du fichier de configuration, cela g‚nŠrera le graphe suivant:"
"<p><center><img src=\"graph_legend."+Config_getEnum("DOT_IMAGE_FORMAT")+"\"></center>\n"
"<p>\n"
"Les rectangles du graphe ci-dessus ont la signification suivante:\n"
"<ul>\n"
- "<li>Un rectangle plein noir représente la structure ou la classe pour laquelle "
- "le graphe est généré.\n"
- "<li>Un rectangle avec un bord noir indique une classe ou une structure documentée.\n"
- "<li>Un rectangle avec un bord gris indique une classe ou une structure non documentée.\n"
- "<li>Un rectangle avec un bord rouge indique une structure ou une classe documentée\n"
- "pour laquelle des relations d'héritage ou de collaboration manquent. Un graphe est "
- "tronqué s'il ne rentre pas dans les limites spécifiées."
+ "<li>Un rectangle plein noir repr‚sente la structure ou la classe pour laquelle "
+ "le graphe est g‚n‚r‚.\n"
+ "<li>Un rectangle avec un bord noir indique une classe ou une structure document‚e.\n"
+ "<li>Un rectangle avec un bord gris indique une classe ou une structure non document‚e.\n"
+ "<li>Un rectangle avec un bord rouge indique une structure ou une classe document‚e\n"
+ "pour laquelle des relations d'h‚ritage ou de collaboration manquent. Un graphe est "
+ "tronqu‚ s'il ne rentre pas dans les limites sp‚cifi‚es."
"</ul>\n"
- "Les flèches ont la signification suivante:\n"
+ "Les flŠches ont la signification suivante:\n"
"<ul>\n"
- "<li>Une flèche bleu foncé est utilisée pour visualiser une relation d'héritage public "
+ "<li>Une flŠche bleu fonc‚ est utilis‚e pour visualiser une relation d'h‚ritage public "
"entre deux classes.\n"
- "<li>Une flèche vert foncé est utilisée pour une relation d'héritage protégé.\n"
- "<li>Une flèche rouge foncé est utilisée pour une relation d'héritage privé.\n"
- "<li>Une flèche violette en pointillés est utilisée si une classe est contenue ou "
- "utilisée par une autre classe. La flèche est étiquetée avec la ou les variable(s) "
- "qui permettent d'accéder à la classe ou structure pointée. \n"
+ "<li>Une flŠche vert fonc‚ est utilis‚e pour une relation d'h‚ritage prot‚g‚.\n"
+ "<li>Une flŠche rouge fonc‚ est utilis‚e pour une relation d'h‚ritage priv‚.\n"
+ "<li>Une flŠche violette en pointill‚s est utilis‚e si une classe est contenue ou "
+ "utilis‚e par une autre classe. La flŠche est ‚tiquet‚e avec la ou les variable(s) "
+ "qui permettent d'acc‚der … la classe ou structure point‚e. \n"
"</ul>\n";
}
/*! text for the link to the legend page */
virtual QCString trLegend()
{
- return "Légende";
+ return "L‚gende";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.0
@@ -997,7 +1001,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! Used as a section header for KDE-2 IDL methods */
virtual QCString trDCOPMethods()
{
- return "Méthodes DCOP";
+ return "M‚thodes DCOP";
}
//////////////////////////////////////////////////////////////////////////
@@ -1007,12 +1011,12 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! Used as a section header for IDL properties */
virtual QCString trProperties()
{
- return "Propriétés";
+ return "Propri‚t‚s";
}
/*! Used as a section header for IDL property documentation */
virtual QCString trPropertyDocumentation()
{
- return "Documentation des propriétés";
+ return "Documentation des propri‚t‚s";
}
//////////////////////////////////////////////////////////////////////////
@@ -1029,7 +1033,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
{
if (Config_getBool("OPTIMIZE_OUTPUT_FOR_C"))
{
- return "Structures de données";
+ return "Structures de donn‚es";
}
else
{
@@ -1049,7 +1053,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
/*! The description of the package index page */
virtual QCString trPackageListDescription()
{
- return "Liste des paquetages avec une brève description (si disponible):";
+ return "Liste des paquetages avec une brŠve description (si disponible):";
}
/*! The link name in the Quick links header for each page */
virtual QCString trPackages()
@@ -1240,7 +1244,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trReferences()
{
- return "Références";
+ return "R‚f‚rences";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.2.13
@@ -1251,7 +1255,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trImplementedFromList(int numEntries)
{
- return "Implémente "+trWriteList(numEntries)+".";
+ return "Impl‚mente "+trWriteList(numEntries)+".";
}
/*! used in member documentation blocks to produce a list of
@@ -1259,7 +1263,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trImplementedInList(int numEntries)
{
- return "Implémenté dans "+trWriteList(numEntries)+".";
+ return "Impl‚ment‚ dans "+trWriteList(numEntries)+".";
}
//////////////////////////////////////////////////////////////////////////
@@ -1271,7 +1275,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trRTFTableOfContents()
{
- return "Table des matières";
+ return "Table des matiŠres";
}
//////////////////////////////////////////////////////////////////////////
@@ -1283,7 +1287,7 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trDeprecatedList()
{
- return "Liste obsolète";
+ return "Liste obsolŠte";
}
//////////////////////////////////////////////////////////////////////////
@@ -1295,13 +1299,53 @@ class TranslatorFrench : public TranslatorAdapter_1_3
*/
virtual QCString trEvents()
{
- return "Evènements";
+ return "EvŠnements";
}
/*! Header used for the documentation section of a class' events. */
virtual QCString trEventDocumentation()
{
- return "Documentation des évènements";
+ return "Documentation des ‚vŠnements";
+ }
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return "Types de paquetage";
+ }
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return "M‚thodes de paquetage";
+ }
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return "M‚thodes statiques de paquetage";
+ }
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return "Attributs de paquetage";
+ }
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return "Attributs statiques de paquetage";
}
};
+
#endif
diff --git a/src/translator_it.h b/src/translator_it.h
index d97fc92..9f806d4 100644
--- a/src/translator_it.h
+++ b/src/translator_it.h
@@ -19,6 +19,7 @@
*
* Revision history
*
+ * 2003/04: translated new items used since version 1.3
* 2002/11: translated new items used since version 1.2.18
* 2002/08: translated new items used since version 1.2.17
* 2002/07: translated new items used since version 1.2.16
@@ -67,7 +68,7 @@
#ifndef TRANSLATOR_IT_H
#define TRANSLATOR_IT_H
-class TranslatorItalian : public TranslatorAdapter_1_3
+class TranslatorItalian : public Translator
{
public:
@@ -1389,6 +1390,46 @@ class TranslatorItalian : public TranslatorAdapter_1_3
return "Documentazione degli eventi";
}
+
+//////////////////////////////////////////////////////////////////////////
+// new since 1.3
+//////////////////////////////////////////////////////////////////////////
+
+ /*! Used as a heading for a list of Java class types with package scope.
+ */
+ virtual QCString trPackageTypes()
+ {
+ return "Tipi con visibilità di package";
+ }
+ /*! Used as a heading for a list of Java class functions with package
+ * scope.
+ */
+ virtual QCString trPackageMembers()
+ {
+ return "Funczioni con visibilità di package";
+ }
+ /*! Used as a heading for a list of static Java class functions with
+ * package scope.
+ */
+ virtual QCString trStaticPackageMembers()
+ {
+ return "Funzioni statiche con visibilità di package";
+ }
+ /*! Used as a heading for a list of Java class variables with package
+ * scope.
+ */
+ virtual QCString trPackageAttribs()
+ {
+ return "Attributi con visibilità di package";
+ }
+ /*! Used as a heading for a list of static Java class variables with
+ * package scope.
+ */
+ virtual QCString trStaticPackageAttribs()
+ {
+ return "Attributi statici con visibilità di package";
+ }
+
};
#endif
diff --git a/src/util.cpp b/src/util.cpp
index d51c449..910a682 100644
--- a/src/util.cpp
+++ b/src/util.cpp
@@ -823,11 +823,12 @@ void linkifyText(const TextGeneratorIntf &out,const char *scName,const char *nam
do // for each scope (starting with full scope and going to empty scope)
{
QCString fullName = word;
+ QCString prefix;
replaceNamespaceAliases(fullName,fullName.length());
if (scopeOffset>0)
{
- QCString prefix = scopeName.left(scopeOffset);
+ prefix = scopeName.left(scopeOffset);
replaceNamespaceAliases(prefix,scopeOffset);
fullName.prepend(prefix+"::");
}
@@ -2518,7 +2519,7 @@ bool resolveRef(/* in */ const char *scName,
GroupDef *gd = 0;
// check if nameStr is a member or global.
- //printf("getDefs(scope=%s,name=%s,args=%s\n",scopeStr.data(),nameStr.data(),argsStr.data());
+ //printf("getDefs(scope=%s,name=%s,args=%s)\n",scopeStr.data(),nameStr.data(),argsStr.data());
if (getDefs(scopeStr,nameStr,argsStr,
md,cd,fd,nd,gd,
scopePos==0 && !memberScopeFirst,
@@ -3192,6 +3193,12 @@ QCString stripScope(const char *name)
}
+/*! Convert nibble (range 0..15) to hex char */
+static char nibbleToHex(int n)
+{
+ return (n < 10) ? ('0'+n) : ('a'+n-10);
+}
+
/*! Converts a string to an XML-encoded string */
QCString convertToXML(const char *s)
{
@@ -3208,7 +3215,18 @@ QCString convertToXML(const char *s)
case '&': result+="&amp;"; break;
case '\'': result+="&apos;"; break;
case '"': result+="&quot;"; break;
- default: result+=c; break;
+ default:
+ if (c<0)
+ {
+ result+=(QCString)"&#x" +
+ nibbleToHex((((uchar)c)>>4)&0xf)+
+ nibbleToHex(c&0xf)+";";
+ }
+ else
+ {
+ result+=c;
+ }
+ break;
}
}
return result;
diff --git a/wintools/Doxygen.dsp b/wintools/Doxygen.dsp
index 1387c8e..2225090 100644
--- a/wintools/Doxygen.dsp
+++ b/wintools/Doxygen.dsp
@@ -25,7 +25,7 @@ CFG=Doxygen - Win32 Debug
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName "Doxygen"
# PROP Scc_LocalPath "."
-CPP=xicl6.exe
+CPP=cwcl.exe
RSC=rc.exe
!IF "$(CFG)" == "Doxygen - Win32 Release"
@@ -49,7 +49,7 @@ RSC=rc.exe
BSC32=snBsc.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
-LINK32=xilink6.exe
+LINK32=cwlink.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 qtools.lib libpng.lib zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /libpath:"Release"
@@ -74,7 +74,7 @@ LINK32=xilink6.exe
BSC32=snBsc.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
-LINK32=xilink6.exe
+LINK32=cwlink.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 qtools.lib libpng.lib zlib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ws2_32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"Debug"
# SUBTRACT LINK32 /nodefaultlib
@@ -282,6 +282,10 @@ SOURCE=..\src\packagedef.cpp
# End Source File
# Begin Source File
+SOURCE=..\src\pagedef.cpp
+# End Source File
+# Begin Source File
+
SOURCE=..\src\perlmodgen.cpp
# End Source File
# Begin Source File
@@ -550,6 +554,10 @@ SOURCE=..\src\page.h
# End Source File
# Begin Source File
+SOURCE=..\src\pagedef.h
+# End Source File
+# Begin Source File
+
SOURCE=..\src\perlmodgen.h
# End Source File
# Begin Source File