summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/config.l16
-rw-r--r--src/diagram.cpp9
-rw-r--r--src/doc.l46
-rw-r--r--src/dot.cpp57
-rw-r--r--src/doxygen.cpp89
-rw-r--r--src/doxygen.pro.in10
-rw-r--r--src/doxysearch.cpp2
-rw-r--r--src/doxytag.l4
-rw-r--r--src/formula.cpp14
-rw-r--r--src/ftvhelp.cpp433
-rw-r--r--src/gifenc.cpp288
-rw-r--r--src/gifenc.h90
-rw-r--r--src/htmlgen.cpp8
-rw-r--r--src/image.cpp24
-rw-r--r--src/libdoxygen.pro.in5
-rw-r--r--src/logos.cpp756
-rw-r--r--src/pngenc.cpp157
-rw-r--r--src/pngenc.h54
-rw-r--r--src/pre.l4
-rw-r--r--src/rtfgen.cpp4
-rw-r--r--src/scanner.l2
-rw-r--r--src/translator_br.h2
-rw-r--r--src/translator_cn.h2
-rw-r--r--src/translator_cz.h2
-rw-r--r--src/translator_de.h2
-rw-r--r--src/translator_dk.h2
-rw-r--r--src/translator_en.h2
-rw-r--r--src/translator_es.h2
-rw-r--r--src/translator_fr.h2
-rw-r--r--src/translator_gr.h2
-rw-r--r--src/translator_hr.h2
-rw-r--r--src/translator_hu.h2
-rw-r--r--src/translator_it.h2
-rw-r--r--src/translator_jp.h2
-rw-r--r--src/translator_kr.h2
-rw-r--r--src/translator_nl.h2
-rw-r--r--src/translator_no.h2
-rw-r--r--src/translator_pl.h2
-rw-r--r--src/translator_pt.h2
-rw-r--r--src/translator_ro.h2
-rw-r--r--src/translator_ru.h8
-rw-r--r--src/translator_si.h2
-rw-r--r--src/translator_sk.h2
-rw-r--r--src/translator_ua.h2
-rw-r--r--src/treeview.h32
-rw-r--r--src/treeview.js32
46 files changed, 1100 insertions, 1088 deletions
diff --git a/src/config.l b/src/config.l
index 14db2c1..810287e 100644
--- a/src/config.l
+++ b/src/config.l
@@ -33,6 +33,8 @@
#include "config.h"
#include "version.h"
+#include "lang_cfg.h"
+
#undef Config_getString
#undef Config_getInt
#undef Config_getList
@@ -969,12 +971,12 @@ void Config::check()
dotImageFormat=dotImageFormat.stripWhiteSpace();
if (dotImageFormat.isEmpty())
{
- dotImageFormat = "gif";
+ dotImageFormat = "png";
}
else if (dotImageFormat!="gif" && dotImageFormat!="png" && dotImageFormat!="jpg")
{
config_err("Invalid value for DOT_IMAGE_FORMAT: `%s'. Using the default.\n",dotImageFormat.data());
- dotImageFormat = "gif";
+ dotImageFormat = "png";
}
@@ -2265,13 +2267,13 @@ void Config::create()
ce = addEnum(
"DOT_IMAGE_FORMAT",
"The DOT_IMAGE_FORMAT tag can be used to set the image format of the images \n"
- "generated by dot. Possible values are gif, jpg, and png\n"
- "If left blank gif will be used. \n",
- "gif"
+ "generated by dot. Possible values are png, jpg, or gif\n"
+ "If left blank png will be used. \n",
+ "png"
);
- ce->addValue("gif");
- ce->addValue("jpg");
ce->addValue("png");
+ ce->addValue("jpg");
+ ce->addValue("gif");
ce->addDependency("HAVE_DOT");
cs = addString(
"DOT_PATH",
diff --git a/src/diagram.cpp b/src/diagram.cpp
index 80e5c1b..9df2bf5 100644
--- a/src/diagram.cpp
+++ b/src/diagram.cpp
@@ -1255,13 +1255,6 @@ void ClassDiagram::writeImage(QTextStream &t,const char *path,
uint superRows=super->computeRows();
uint rows=baseRows+superRows-1;
-// t << "<p>Class diagram for ";
-// HtmlGenerator::docifyStatic(t,name);
-// t << ".\n<p><center><img src=\""
-// << fileName << ".gif\" usemap=\"#" << name << "_map\""
-// << " border=\"0\"></center>" << endl
-// << "<map name=\"" << name << "_map\"><p>" << endl;
-
uint lb,ls,xb,xs;
base->computeExtremes(&lb,&xb);
super->computeExtremes(&ls,&xs);
@@ -1281,7 +1274,7 @@ void ClassDiagram::writeImage(QTextStream &t,const char *path,
base->drawConnectors(t,&image,TRUE,TRUE,baseRows,superRows,cellWidth,cellHeight);
super->drawConnectors(t,&image,FALSE,TRUE,baseRows,superRows,cellWidth,cellHeight);
- image.save((QCString)path+"/"+fileName+".gif");
+ image.save((QCString)path+"/"+fileName+".png");
if (generateMap) t << "</map>" << endl;
}
diff --git a/src/doc.l b/src/doc.l
index 24b3b5f..c519ee4 100644
--- a/src/doc.l
+++ b/src/doc.l
@@ -861,7 +861,7 @@ static void writeDotFile(const char *fileName, const char *captionText)
/* ----------------------------------------------------------------- */
-static void checkArgName(const QCString &name)
+static void checkArgName(const QCString &name,bool isParam)
{
hasParamCommand=TRUE;
if (memberDef==0) return; // not a member
@@ -871,31 +871,39 @@ static void checkArgName(const QCString &name)
if (al==0) return; // no argument list
if (!Config_getBool("WARN_IF_UNDOCUMENTED")) return;
+ //printf("name=%s\n",name.data());
static QRegExp re("[a-zA-Z0-9_]+");
int p=0,i=0,l;
while ((i=re.match(name,p,&l))!=-1)
{
QCString aName=name.mid(i,l);
+ //printf("aName=%s\n",aName.data());
ArgumentListIterator ali(*al);
Argument *a;
+ bool found=FALSE;
for (ali.toFirst();(a=ali.current());++ali)
{
QCString argName = memberDef->isDefine() ? a->type : a->name;
if (aName==argName)
{
- paramsFound.insert(name,(void *)(0x8));
- return;
+ //printf("adding `%s'\n",aName.data());
+ paramsFound.insert(aName,(void *)(0x8));
+ found=TRUE;
+ break;
}
}
- //printf("member type=%d\n",memberDef->memberType());
- QCString scope=memberDef->getScopeString();
- if (!scope.isEmpty()) scope+="::"; else scope="";
- warn(memberDef->docFile(),memberDef->docLine(),
- "Warning: argument `%s' of command @param "
- "is not found in the argument list of %s%s%s",
- aName.data(),scope.data(),memberDef->name().data(),
- argListToString(al).data()
- );
+ if (!found && isParam)
+ {
+ //printf("member type=%d\n",memberDef->memberType());
+ QCString scope=memberDef->getScopeString();
+ if (!scope.isEmpty()) scope+="::"; else scope="";
+ warn(memberDef->docFile(),memberDef->docLine(),
+ "Warning: argument `%s' of command @param "
+ "is not found in the argument list of %s%s%s",
+ aName.data(),scope.data(),memberDef->name().data(),
+ argListToString(al).data()
+ );
+ }
p=i+l;
}
}
@@ -1749,7 +1757,14 @@ OPMASK ({B}*{OPNORM}({OPARG}?))|({OPCAST}{OPARG})
<DocScan>"\\capt".*
<DocParam>({DOCPARAM}{BN}*","{BN}*)*{DOCPARAM}{BSEP}* {
QCString argName = substitute(yytext,"\"","").stripWhiteSpace();
- if (inParamBlock) checkArgName(argName);
+ if (inParamBlock)
+ {
+ checkArgName(argName,TRUE);
+ }
+ else if (inRetValBlock)
+ {
+ checkArgName(argName,FALSE);
+ }
outDoc->startDescTableTitle();
scanDoc(argName);
outDoc->endDescTableTitle();
@@ -2797,9 +2812,10 @@ void parseDoc(OutputDocInterface &od,const char *fileName,int startLine,
argListToString(al).data());
for (ali.toFirst();(a=ali.current());++ali)
{
- if (!a->name.isEmpty() && paramsFound.find(a->name)==0)
+ QCString argName = memberDef->isDefine() ? a->type : a->name;
+ if (!argName.isEmpty() && paramsFound.find(argName)==0)
{
- warn_cont( " parameter %s\n",a->name.data());
+ warn_cont( " parameter %s\n",argName.data());
}
}
}
diff --git a/src/dot.cpp b/src/dot.cpp
index 3c8360d..77faf6e 100644
--- a/src/dot.cpp
+++ b/src/dot.cpp
@@ -178,6 +178,39 @@ static bool isLeaf(ClassDef *cd)
return TRUE;
}
+// since dot silently reproduces the input file when it does not
+// support the PNG format, we need to check the result.
+static void checkDotResult(const QCString &imgName)
+{
+ if (Config_getEnum("DOT_IMAGE_FORMAT")=="png")
+ {
+ QFile f(imgName);
+ if (f.open(IO_ReadOnly))
+ {
+ char data[4];
+ if (f.readBlock(data,4)==4)
+ {
+ if (!(data[1]=='P' && data[2]=='N' && data[3]=='G'))
+ {
+ err("Error! Image `%s' produced by dot is not a valid PNG!\n"
+ "You should either select a different format "
+ "(DOT_IMAGE_FORMAT in the config file) or install a more "
+ "recent version of graphviz (1.7+)\n",imgName.data()
+ );
+ }
+ }
+ else
+ {
+ err("Error: Could not read image `%s' generated by dot!\n",imgName.data());
+ }
+ }
+ else
+ {
+ err("Error: Could not open image `%s' generated by dot!\n",imgName.data());
+ }
+ }
+}
+
//--------------------------------------------------------------------
class DotNodeList : public QList<DotNode>
@@ -719,6 +752,7 @@ void DotGfxHierarchyTable::writeGraph(QTextStream &out,const char *path)
out << "</table>" << endl;
return;
}
+ checkDotResult(imgName);
dotArgs.sprintf("-Timap \"%s\" -o \"%s\"",dotName.data(),mapName.data());
//printf("Running: dot -Timap %s -o %s\n",dotName.data(),mapName.data());
if (iSystem(Config_getString("DOT_PATH")+"dot",dotArgs)!=0)
@@ -1300,14 +1334,16 @@ QCString DotClassGraph::writeGraph(QTextStream &out,
{
QCString dotArgs(4096);
QCString imgExt = Config_getEnum("DOT_IMAGE_FORMAT");
- dotArgs.sprintf("-T%s \"%s.dot\" -o \"%s.%s\"",
- imgExt.data(),baseName.data(),baseName.data(),imgExt.data());
+ QCString imgName = baseName+"."+imgExt;
+ dotArgs.sprintf("-T%s \"%s.dot\" -o \"%s\"",
+ imgExt.data(),baseName.data(),imgName.data());
if (iSystem(Config_getString("DOT_PATH")+"dot",dotArgs)!=0)
{
err("Error: Problems running dot. Check your installation!\n");
QDir::setCurrent(oldDir);
return baseName;
}
+ checkDotResult(imgName);
if (generateImageMap)
{
// run dot again to create an image map
@@ -1529,14 +1565,16 @@ QCString DotInclDepGraph::writeGraph(QTextStream &out,
// run dot to create a bitmap image
QCString dotArgs(4096);
QCString imgExt = Config_getEnum("DOT_IMAGE_FORMAT");
- dotArgs.sprintf("-T%s \"%s.dot\" -o \"%s.%s\"",
- imgExt.data(),baseName.data(),baseName.data(),imgExt.data());
+ QCString imgName=baseName+"."+imgExt;
+ dotArgs.sprintf("-T%s \"%s.dot\" -o \"%s\"",
+ imgExt.data(),baseName.data(),imgName.data());
if (iSystem(Config_getString("DOT_PATH")+"dot",dotArgs)!=0)
{
err("Problems running dot. Check your installation!\n");
QDir::setCurrent(oldDir);
return baseName;
}
+ checkDotResult(imgName);
if (generateImageMap)
{
@@ -1674,13 +1712,15 @@ void generateGraphLegend(const char *path)
// run dot to generate the a bitmap image from the graph
QCString dotArgs(4096);
QCString imgExt = Config_getEnum("DOT_IMAGE_FORMAT");
- dotArgs.sprintf("-T%s graph_legend.dot -o graph_legend.%s",imgExt.data(),imgExt.data());
+ QCString imgName = "graph_legend."+imgExt;
+ dotArgs.sprintf("-T%s graph_legend.dot -o %s",imgExt.data(),imgName.data());
if (iSystem(Config_getString("DOT_PATH")+"dot",dotArgs)!=0)
{
err("Problems running dot. Check your installation!\n");
QDir::setCurrent(oldDir);
return;
}
+ checkDotResult(imgName);
QDir::setCurrent(oldDir);
}
@@ -1690,10 +1730,11 @@ void writeDotGraphFromFile(const char *inFile,const char *outFile,
{
QCString dotArgs(4096);
QCString imgExt = Config_getEnum("DOT_IMAGE_FORMAT");
+ QCString imgName = (QCString)outFile+"."+imgExt;
if (format==BITMAP)
{
- dotArgs.sprintf("-T%s \"%s\" -o \"%s.%s\"",imgExt.data(),
- inFile,outFile,imgExt.data());
+ dotArgs.sprintf("-T%s \"%s\" -o \"%s\"",imgExt.data(),
+ inFile,imgName.data());
}
else // format==EPS
{
@@ -1705,4 +1746,6 @@ void writeDotGraphFromFile(const char *inFile,const char *outFile,
{
err("Problems running dot. Check your installation!\n");
}
+ if (format==BITMAP) checkDotResult(imgName);
}
+
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 1168e25..1363348 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -2153,6 +2153,7 @@ static void transferFunctionDocumentation()
matchArguments(mdef->argumentList(),mdec->argumentList())
) /* match found */
{
+ /* FIX: Always match declaration and definition.
FileDef *fdef = mdef->getFileDef();
FileDef *fdec = mdec->getFileDef();
@@ -2161,6 +2162,7 @@ static void transferFunctionDocumentation()
fdef==fdec ||
(fdef!=0 && (!fdef->hasDocumentation() || !fdec->hasDocumentation()))
)
+ */
{
//printf("Found member %s: definition in %s (doc=%d) and declation in %s (doc=%d)\n",
// mn->memberName(),
@@ -2221,6 +2223,90 @@ static void transferFunctionDocumentation()
//----------------------------------------------------------------------
+static void transferFunctionReferences()
+{
+ MemberNameSDict::Iterator mnli(Doxygen::functionNameSDict);
+ MemberName *mn;
+ for (;(mn=mnli.current());++mnli)
+ {
+ MemberDef *md,*mdef=0,*mdec=0;
+ MemberNameIterator mni(*mn);
+ /* find a matching function declaration and definition for this function */
+ for (;(md=mni.current());++mni)
+ {
+ if (md->isPrototype())
+ mdec=md;
+ else if (md->isVariable() && md->isExternal())
+ mdec=md;
+
+ if (md->isFunction() && !md->isStatic() && !md->isPrototype())
+ mdef=md;
+ else if (md->isVariable() && !md->isExternal() && !md->isStatic())
+ mdef=md;
+ }
+ if (mdef && mdec &&
+ matchArguments(mdef->argumentList(),mdec->argumentList())
+ ) /* match found */
+ {
+ MemberSDict *defDict = mdef->getReferencesMembers();
+ MemberSDict *decDict = mdec->getReferencesMembers();
+ if (defDict)
+ {
+ MemberSDict::Iterator msdi(*defDict);
+ MemberDef *rmd;
+ for (msdi.toFirst();(rmd=msdi.current());++msdi)
+ {
+ if (decDict==0 || decDict->find(rmd->name())==0)
+ {
+ mdec->addSourceReferences(rmd);
+ }
+ }
+ }
+ if (decDict)
+ {
+ MemberSDict::Iterator msdi(*decDict);
+ MemberDef *rmd;
+ for (msdi.toFirst();(rmd=msdi.current());++msdi)
+ {
+ if (defDict==0 || defDict->find(rmd->name())==0)
+ {
+ mdef->addSourceReferences(rmd);
+ }
+ }
+ }
+
+ defDict = mdef->getReferencedByMembers();
+ decDict = mdec->getReferencedByMembers();
+ if (defDict)
+ {
+ MemberSDict::Iterator msdi(*defDict);
+ MemberDef *rmd;
+ for (msdi.toFirst();(rmd=msdi.current());++msdi)
+ {
+ if (decDict==0 || decDict->find(rmd->name())==0)
+ {
+ mdec->addSourceReferencedBy(rmd);
+ }
+ }
+ }
+ if (decDict)
+ {
+ MemberSDict::Iterator msdi(*decDict);
+ MemberDef *rmd;
+ for (msdi.toFirst();(rmd=msdi.current());++msdi)
+ {
+ if (defDict==0 || defDict->find(rmd->name())==0)
+ {
+ mdef->addSourceReferencedBy(rmd);
+ }
+ }
+ }
+ }
+ }
+}
+
+//----------------------------------------------------------------------
+
static void transferRelatedFunctionDocumentation()
{
// find match between function declaration and definition for
@@ -4010,7 +4096,7 @@ static void findMember(Entry *root,
warn_cont(" ");
if (md->typeString())
{
- warn_cont("%s",md->typeString());
+ warn_cont("%s ",md->typeString());
}
warn_cont("%s::%s%s\n",
cd->name().data(),
@@ -7198,6 +7284,7 @@ void generateOutput()
msg("Generating file sources...\n");
generateFileSources();
+ transferFunctionReferences();
msg("Generating file documentation...\n");
generateFileDocs();
diff --git a/src/doxygen.pro.in b/src/doxygen.pro.in
index 8c5f42d..75ffd35 100644
--- a/src/doxygen.pro.in
+++ b/src/doxygen.pro.in
@@ -18,15 +18,15 @@ TEMPLATE = app.t
CONFIG = console warn_on $extraopts
HEADERS = doxygen.h
SOURCES = main.cpp
-unix:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools
+unix:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng
win32:INCLUDEPATH += .
-win32-mingw:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools
-win32-msvc:LIBS += qtools.lib doxygen.lib doxycfg.lib shell32.lib
+win32-mingw:LIBS += -L../lib -ldoxygen -ldoxycfg -lqtools -lpng
+win32-msvc:LIBS += qtools.lib png.lib doxygen.lib doxycfg.lib shell32.lib
win32-msvc:TMAKE_LFLAGS += /LIBPATH:..\lib
-win32-borland:LIBS += qtools.lib doxygen.lib doxycfg.lib shell32.lib
+win32-borland:LIBS += qtools.lib png.lib doxygen.lib doxycfg.lib shell32.lib
win32-borland:TMAKE_LFLAGS += -L..\lib -L$(BCB)\lib\psdk
win32:TMAKE_CXXFLAGS += -DQT_NODLL
-INCLUDEPATH += ../qtools .
+INCLUDEPATH += ../qtools ../libpng .
DESTDIR = ../bin
TARGET = doxygen
unix:TARGETDEPS = ../lib/libdoxygen.a ../lib/libdoxycfg.a
diff --git a/src/doxysearch.cpp b/src/doxysearch.cpp
index 4ec3ae7..a521625 100644
--- a/src/doxysearch.cpp
+++ b/src/doxysearch.cpp
@@ -249,7 +249,7 @@ void printSearchPage(bool open=FALSE)
" <tr>\n"
" <td><input name=query size=44 wrap=virtual maxlength=1000 value=\"%s\">\n"
" </td>\n"
- " <td><input type=image src=\"%s/search.gif\" height=26 width=120 border=0 name=\"search\">\n"
+ " <td><input type=image src=\"%s/search.png\" height=26 width=120 border=0 name=\"search\">\n"
" </td>\n"
" </tr>\n",
cgiBin,
diff --git a/src/doxytag.l b/src/doxytag.l
index 288c945..18d940e 100644
--- a/src/doxytag.l
+++ b/src/doxytag.l
@@ -594,9 +594,9 @@ int main(int argc,char **argv)
if (fi.exists())
{
QCString dir=convertToQCString(fi.dir().absPath());
- fi.setFile(dir+"/search.gif");
+ fi.setFile(dir+"/search.png");
if (!fi.exists()) writeSearchButton(dir);
- fi.setFile(dir+"/doxygen.gif");
+ fi.setFile(dir+"/doxygen.png");
if (!fi.exists()) writeLogo(dir);
fi.setFile(dir+"/search.cgi");
if (!fi.exists())
diff --git a/src/formula.cpp b/src/formula.cpp
index 32e16ba..a9541c8 100644
--- a/src/formula.cpp
+++ b/src/formula.cpp
@@ -1,5 +1,5 @@
/******************************************************************************
- *
+ i
*
*
* Copyright (C) 1997-2002 by Dimitri van Heesch.
@@ -85,7 +85,7 @@ void FormulaList::generateBitmaps(const char *path)
for (fli.toFirst();(formula=fli.current());++fli)
{
QCString resultName;
- resultName.sprintf("form_%d.gif",formula->getId());
+ resultName.sprintf("form_%d.png",formula->getId());
// only formulas for which no image exists are generated
QFileInfo fi(resultName);
if (!fi.exists())
@@ -116,7 +116,7 @@ void FormulaList::generateBitmaps(const char *path)
for (;(pagePtr=pli.current());++pli,++pageIndex)
{
int pageNum=*pagePtr;
- msg("Generating image form_%d.gif for formula\n",pageNum);
+ msg("Generating image form_%d.png for formula\n",pageNum);
char dviArgs[4096];
QCString formBase;
formBase.sprintf("_form%d",pageNum);
@@ -297,9 +297,9 @@ void FormulaList::generateBitmaps(const char *path)
dstImage.setPixel(x,y,QMIN(15,(c*15)/(16*10)));
}
}
- // save the result as a gif
+ // save the result as a png
QCString resultName;
- resultName.sprintf("form_%d.gif",pageNum);
+ resultName.sprintf("form_%d.png",pageNum);
// the option parameter 1 is used here as a temporary hack
// to select the right color palette!
dstImage.save(resultName,1);
@@ -320,8 +320,8 @@ void FormulaList::generateBitmaps(const char *path)
// remove the latex file itself
if (!formulaError) thisDir.remove("_formulas.tex");
// write/update the formula repository so we know what text the
- // generated gifs represent (we use this next time to avoid regeneration
- // of the gifs, and to avoid forcing the user to delete all gifs in order
+ // generated pngs represent (we use this next time to avoid regeneration
+ // of the pngs, and to avoid forcing the user to delete all pngs in order
// to let a browser refresh the images).
f.setName("formula.repository");
if (f.open(IO_WriteOnly))
diff --git a/src/ftvhelp.cpp b/src/ftvhelp.cpp
index 17fd9f7..e31a3fd 100644
--- a/src/ftvhelp.cpp
+++ b/src/ftvhelp.cpp
@@ -25,204 +25,287 @@ const char treeview_data[]=
#include "treeview.h"
;
-unsigned char ftv2blank_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x21, 0xfe, 0x1c,
- 0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53, 0x6d,
- 0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65, 0x72,
- 0x20, 0x32, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
- 0x16, 0x00, 0x40, 0x04, 0x14, 0xf0, 0xc9, 0x49, 0xab, 0xbd, 0x38, 0xeb,
- 0xcd, 0xbb, 0xff, 0x60, 0x28, 0x8e, 0x64, 0x69, 0x9e, 0x68, 0xaa, 0x3e,
- 0x11, 0x00, 0x3b
+unsigned char ftv2blank_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x01, 0x00, 0x00, 0x00, 0x01, 0x96, 0xd6, 0x11, 0x47, 0x00, 0x00, 0x00,
+ 0x02, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x01, 0x01, 0x94, 0xfd, 0xae, 0x00,
+ 0x00, 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77,
+ 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20,
+ 0x32, 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00,
+ 0x25, 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74,
+ 0x00, 0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53,
+ 0x6d, 0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65,
+ 0x72, 0x20, 0x32, 0x2e, 0x30, 0x21, 0xf8, 0xd7, 0x5e, 0x53, 0x00, 0x00,
+ 0x00, 0x14, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x38, 0xc0, 0x80,
+ 0x80, 0x1f, 0x30, 0xe0, 0x7f, 0x42, 0x90, 0x00, 0x02, 0x00, 0x78, 0x3c,
+ 0x32, 0xcb, 0x72, 0x8f, 0x7c, 0x12, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
+ 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2blank_gif_len = 135;
-
-unsigned char ftv2doc_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x18, 0x00, 0x16, 0x00, 0xa2, 0x00,
- 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0xc0, 0xc0,
- 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00,
- 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x06, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x18, 0x00, 0x16, 0x00, 0x00, 0x03, 0x55, 0x68, 0xba, 0xdc,
- 0xfe, 0x30, 0xca, 0x49, 0x6b, 0x24, 0x38, 0x67, 0x6b, 0x88, 0xf8, 0x60,
- 0x30, 0x10, 0x96, 0x17, 0x04, 0x02, 0x2a, 0x0c, 0x02, 0x49, 0x79, 0x20,
- 0x58, 0xcc, 0xc5, 0x9b, 0x02, 0x38, 0x00, 0x0e, 0xf5, 0x04, 0xc7, 0x1f,
- 0x51, 0x4f, 0x62, 0xca, 0xe1, 0x3e, 0xbc, 0x17, 0x4a, 0x15, 0x4b, 0xfa,
- 0x3e, 0x46, 0xdd, 0x6a, 0x78, 0x09, 0x02, 0x85, 0x4a, 0x41, 0x14, 0x49,
- 0x85, 0xfc, 0x42, 0x5c, 0xdb, 0x32, 0x86, 0xf5, 0x0d, 0xce, 0xe8, 0x74,
- 0xf7, 0x41, 0x6b, 0xbb, 0x39, 0xf0, 0xb8, 0xdc, 0x92, 0x00, 0x00, 0x3b
+unsigned int ftv2blank_png_len = 174;
+
+unsigned char ftv2doc_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x5f, 0x54, 0x71, 0x2d, 0x00, 0x00, 0x00,
+ 0x15, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff,
+ 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xff, 0xb3, 0xbd, 0xfb, 0xc8, 0x00, 0x00, 0x00, 0x01, 0x74, 0x52,
+ 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00, 0x00, 0x16, 0x74,
+ 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x00,
+ 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32, 0x2e, 0x34, 0x2e,
+ 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x76, 0x49, 0x44, 0x41,
+ 0x54, 0x78, 0xda, 0x63, 0x60, 0x60, 0x60, 0x60, 0x63, 0x60, 0x60, 0x64,
+ 0x00, 0x01, 0x27, 0x30, 0x62, 0x71, 0x01, 0xe2, 0x24, 0x06, 0x38, 0x60,
+ 0x71, 0x00, 0xca, 0x27, 0x33, 0x30, 0x30, 0x01, 0x31, 0xa3, 0x32, 0x03,
+ 0x0a, 0x70, 0x54, 0x32, 0x01, 0x53, 0x69, 0x60, 0x71, 0x27, 0x08, 0x15,
+ 0x1a, 0x1a, 0xca, 0x80, 0x01, 0x5c, 0x5c, 0xc0, 0x94, 0xa2, 0x90, 0x02,
+ 0x88, 0x52, 0x4b, 0x52, 0x05, 0x53, 0x69, 0xc8, 0x94, 0x18, 0x84, 0x52,
+ 0x52, 0x12, 0xc5, 0x69, 0x0a, 0x36, 0xe0, 0xa4, 0xa4, 0xa4, 0x68, 0x82,
+ 0xc4, 0x51, 0x82, 0x6b, 0x04, 0x71, 0x14, 0x4d, 0x61, 0x4e, 0x55, 0x04,
+ 0xf2, 0x60, 0x1c, 0x27, 0x45, 0x24, 0x19, 0x90, 0x01, 0x70, 0x19, 0x67,
+ 0x63, 0x20, 0x30, 0xc5, 0x6f, 0x23, 0x00, 0xf5, 0xd0, 0x11, 0xe0, 0x55,
+ 0x83, 0x47, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
+ 0x42, 0x60, 0x82
};
-const unsigned int ftv2doc_gif_len = 144;
-
-unsigned char ftv2folderclosed_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x18, 0x00, 0x16, 0x00, 0xa2, 0x00,
- 0x00, 0x80, 0x00, 0x80, 0xff, 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0x80, 0x80,
- 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x05, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x18, 0x00, 0x16, 0x00, 0x00, 0x03, 0x4c, 0x58, 0xba, 0xdc,
- 0xfe, 0x30, 0xca, 0x49, 0x2b, 0x25, 0xc4, 0x3a, 0x0c, 0x40, 0xd6, 0x05,
- 0xd7, 0x75, 0xdf, 0x45, 0x8c, 0xa8, 0x77, 0x09, 0x69, 0x5a, 0x42, 0x27,
- 0xdb, 0x8e, 0xef, 0xd6, 0xc9, 0xb3, 0x0a, 0x8f, 0x78, 0x8b, 0xed, 0x3c,
- 0x1f, 0x61, 0x20, 0x39, 0x05, 0x49, 0xc3, 0x00, 0xb1, 0x88, 0x12, 0x60,
- 0x06, 0x82, 0x80, 0xb3, 0x66, 0x23, 0x0d, 0xa4, 0xd2, 0xdf, 0x85, 0x84,
- 0xd5, 0x5a, 0x4e, 0x43, 0x2f, 0x08, 0x43, 0x05, 0x99, 0xcf, 0xe8, 0x49,
- 0x02, 0x00, 0x3b
+unsigned int ftv2doc_png_len = 255;
+
+unsigned char ftv2folderclosed_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x5f, 0x54, 0x71, 0x2d, 0x00, 0x00, 0x00,
+ 0x12, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0,
+ 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x42,
+ 0xee, 0x40, 0xe1, 0x00, 0x00, 0x00, 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00,
+ 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00, 0x00, 0x16, 0x74, 0x45, 0x58, 0x74,
+ 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x00, 0x67, 0x69, 0x66,
+ 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32, 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e,
+ 0x47, 0x0e, 0x00, 0x00, 0x00, 0x7d, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda,
+ 0x8d, 0x8e, 0xc1, 0x0a, 0x84, 0x30, 0x10, 0x43, 0x23, 0x8c, 0x77, 0x0f,
+ 0xfb, 0x03, 0x42, 0xbd, 0x2b, 0xf8, 0x01, 0x65, 0x6d, 0xef, 0xa2, 0xcd,
+ 0xff, 0xff, 0x8a, 0x33, 0xad, 0xee, 0x5a, 0xf6, 0xb0, 0x06, 0xda, 0xf0,
+ 0x86, 0xa6, 0x13, 0x00, 0x88, 0x40, 0x03, 0x53, 0x02, 0x82, 0x9a, 0xd7,
+ 0x51, 0x42, 0x25, 0xae, 0x7a, 0x76, 0xa0, 0xed, 0xea, 0x79, 0x79, 0x17,
+ 0x49, 0x73, 0xe1, 0xf2, 0x32, 0x14, 0x8f, 0x5f, 0x49, 0xb9, 0xed, 0x23,
+ 0x60, 0x20, 0xcd, 0x36, 0x66, 0xe4, 0x40, 0x4b, 0xb4, 0xdb, 0xdb, 0xe5,
+ 0x16, 0xee, 0x16, 0x78, 0x20, 0xf9, 0x96, 0x15, 0x6d, 0xc2, 0x8b, 0xa2,
+ 0x6e, 0xf9, 0x50, 0x64, 0xa6, 0x70, 0xb6, 0x50, 0x0a, 0xd3, 0x78, 0x86,
+ 0x98, 0xa6, 0xde, 0x5d, 0x9d, 0x25, 0xcd, 0xfe, 0xdf, 0xc6, 0x03, 0xa0,
+ 0x13, 0x15, 0x98, 0x60, 0xbd, 0x81, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x49,
+ 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2folderclosed_gif_len = 135;
-
-unsigned char ftv2folderopen_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x18, 0x00, 0x16, 0x00, 0xa2, 0x00,
- 0x00, 0x80, 0x00, 0x80, 0xff, 0xff, 0x00, 0xff, 0xff, 0xff, 0xc0, 0xc0,
- 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00,
- 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x06, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x18, 0x00, 0x16, 0x00, 0x00, 0x03, 0x5f, 0x68, 0xba, 0xdc,
- 0xfe, 0x30, 0xca, 0x49, 0x2b, 0x24, 0xf6, 0x0e, 0x9c, 0x59, 0x01, 0xc2,
- 0xc6, 0x10, 0x24, 0xf5, 0x09, 0x02, 0x47, 0xa2, 0x9c, 0x74, 0x86, 0x2b,
- 0x1a, 0x10, 0x45, 0xe1, 0x82, 0x68, 0x31, 0x08, 0x01, 0x2b, 0x00, 0x36,
- 0xc8, 0x4b, 0xa0, 0x43, 0xf1, 0x08, 0xbf, 0xe0, 0x63, 0x58, 0xec, 0xa5,
- 0x92, 0x11, 0xe6, 0x4e, 0x86, 0x04, 0x46, 0x71, 0xc4, 0x9d, 0xb3, 0xaa,
- 0x74, 0x7c, 0x70, 0x45, 0xd6, 0xce, 0x7a, 0x05, 0x15, 0x49, 0x53, 0xf2,
- 0x95, 0x88, 0x36, 0x42, 0x27, 0x5f, 0x80, 0x7c, 0x2e, 0xef, 0x46, 0x6b,
- 0xf8, 0xbc, 0xbd, 0xc3, 0xef, 0xfb, 0x1b, 0x09, 0x00, 0x3b
+unsigned int ftv2folderclosed_png_len = 259;
+
+unsigned char ftv2folderopen_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x5f, 0x54, 0x71, 0x2d, 0x00, 0x00, 0x00,
+ 0x15, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0xff,
+ 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80,
+ 0x00, 0x80, 0x92, 0x32, 0x8c, 0xe5, 0x00, 0x00, 0x00, 0x01, 0x74, 0x52,
+ 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00, 0x00, 0x16, 0x74,
+ 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x00,
+ 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32, 0x2e, 0x34, 0x2e,
+ 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x7c, 0x49, 0x44, 0x41,
+ 0x54, 0x78, 0xda, 0x85, 0x8d, 0x41, 0x0e, 0x82, 0x30, 0x10, 0x45, 0x5f,
+ 0x08, 0xf5, 0x1e, 0x2d, 0x53, 0xd6, 0xc6, 0x18, 0xd7, 0x8d, 0x18, 0xd7,
+ 0x06, 0xd2, 0x1e, 0xa0, 0xb1, 0xde, 0xff, 0x08, 0x3a, 0x20, 0x21, 0x10,
+ 0xa2, 0x6f, 0xf3, 0xfe, 0xff, 0x8b, 0x19, 0x80, 0x0a, 0x6a, 0x14, 0x81,
+ 0x3c, 0x06, 0x2a, 0x61, 0xc5, 0xd3, 0x43, 0x69, 0xc1, 0xb4, 0xab, 0xf9,
+ 0x70, 0xac, 0x83, 0xca, 0xbb, 0xfb, 0xa4, 0x8b, 0xae, 0x26, 0x46, 0xb6,
+ 0x4c, 0x0f, 0xe8, 0xc3, 0x18, 0xfa, 0xb3, 0x7d, 0xa8, 0x1a, 0xeb, 0x17,
+ 0xa5, 0x46, 0x54, 0x46, 0x4e, 0x2a, 0xe2, 0xce, 0x95, 0x3d, 0xba, 0xb0,
+ 0x64, 0x93, 0x85, 0x9b, 0x0b, 0x73, 0x71, 0x83, 0x75, 0xd7, 0xf2, 0xa7,
+ 0x90, 0xf2, 0x20, 0x9d, 0xfb, 0x16, 0xd2, 0xeb, 0x43, 0xf9, 0xfd, 0xf2,
+ 0x0d, 0xa4, 0x29, 0x14, 0xcb, 0xda, 0x47, 0xac, 0x44, 0x00, 0x00, 0x00,
+ 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2folderopen_gif_len = 154;
+unsigned int ftv2folderopen_png_len = 261;
-unsigned char ftv2lastnode_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
+unsigned char ftv2lastnode_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x4c, 0x83, 0x31, 0xd9, 0x00, 0x00, 0x00,
+ 0x30, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x21, 0xfe, 0x1c,
+ 0x00, 0x00, 0x80, 0x80, 0x80, 0x18, 0xd3, 0xa0, 0x90, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x26,
+ 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00,
0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53, 0x6d,
0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65, 0x72,
- 0x20, 0x32, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
- 0x16, 0x00, 0x40, 0x04, 0x1b, 0xf0, 0xc9, 0x49, 0xab, 0xbd, 0x38, 0xeb,
- 0xcd, 0xbb, 0xff, 0x60, 0x28, 0x72, 0xc0, 0x57, 0x7a, 0x67, 0x97, 0x92,
- 0x4f, 0xe9, 0xb6, 0x63, 0x2c, 0xcf, 0x5e, 0x04, 0x00, 0x3b
+ 0x20, 0x32, 0x2e, 0x30, 0x69, 0x01, 0x6f, 0x3f, 0xcd, 0x06, 0x00, 0x00,
+ 0x00, 0x13, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0x18, 0x30,
+ 0xc0, 0x4f, 0x0c, 0x03, 0x04, 0xc8, 0x33, 0x1e, 0x00, 0x24, 0xa7, 0x00,
+ 0x88, 0x10, 0xca, 0x33, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e,
+ 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2lastnode_gif_len = 142;
-
-unsigned char ftv2link_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x18, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00,
- 0x80, 0x00, 0x00, 0xff, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0,
- 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x21, 0xfe, 0x1c,
+unsigned int ftv2lastnode_png_len = 233;
+
+unsigned char ftv2link_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x5f, 0x54, 0x71, 0x2d, 0x00, 0x00, 0x00,
+ 0x30, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x00, 0x80, 0x00, 0xff,
+ 0xff, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0xff, 0x00, 0x80, 0x80, 0x80,
+ 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x7e, 0x9b, 0x08, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x26,
+ 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00,
0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53, 0x6d,
0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65, 0x72,
- 0x20, 0x32, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00,
- 0x16, 0x00, 0x00, 0x04, 0x77, 0xf0, 0xc9, 0x49, 0xab, 0xbd, 0x38, 0xeb,
- 0x7d, 0x8d, 0xff, 0x20, 0x27, 0x19, 0x93, 0x50, 0x1e, 0x24, 0x47, 0x9a,
- 0x12, 0x7b, 0x3c, 0xa9, 0x16, 0xb3, 0x8f, 0x00, 0xdc, 0xc0, 0xb6, 0x3e,
- 0x47, 0xe1, 0xbf, 0x82, 0x43, 0x4e, 0x26, 0xe9, 0x19, 0x0a, 0x81, 0xc2,
- 0x4b, 0xa8, 0xab, 0x29, 0x0b, 0x04, 0xa4, 0x21, 0x38, 0xcc, 0xa4, 0x0a,
- 0xbc, 0xc0, 0x80, 0x30, 0xe0, 0x55, 0x31, 0x2b, 0xa5, 0x21, 0xc9, 0xa5,
- 0xca, 0x40, 0x06, 0x40, 0x80, 0xdb, 0x65, 0x5a, 0x2b, 0x80, 0xc1, 0x00,
- 0x70, 0x30, 0xbf, 0x1f, 0x37, 0xfc, 0xed, 0xe5, 0x25, 0x02, 0xd2, 0x78,
- 0x34, 0x76, 0x60, 0x78, 0x13, 0x43, 0x2e, 0x5f, 0x16, 0x31, 0x12, 0x74,
- 0x07, 0x8e, 0x8e, 0x89, 0x70, 0x38, 0x93, 0x94, 0x91, 0x22, 0x97, 0x98,
- 0x99, 0x9a, 0x0f, 0x11, 0x00, 0x3b
+ 0x20, 0x32, 0x2e, 0x30, 0x19, 0x02, 0xd9, 0x09, 0xe5, 0x4a, 0x00, 0x00,
+ 0x00, 0x90, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x7d, 0x8c, 0xb1, 0x0a,
+ 0xc2, 0x30, 0x14, 0x45, 0x6f, 0x33, 0xb4, 0x63, 0x7e, 0xa1, 0x53, 0x57,
+ 0x8b, 0x7e, 0x80, 0x6e, 0xae, 0x16, 0x5a, 0xb2, 0xbe, 0x3a, 0x64, 0x35,
+ 0xb8, 0x64, 0xec, 0x2f, 0x07, 0x05, 0x1d, 0x9f, 0x79, 0x8d, 0x21, 0x50,
+ 0xd0, 0x03, 0xc9, 0xcd, 0xe1, 0xbe, 0x17, 0x00, 0xa8, 0x00, 0x82, 0xe0,
+ 0x81, 0x66, 0x7d, 0xc0, 0x9e, 0x51, 0x70, 0x40, 0x1d, 0xcf, 0xad, 0x07,
+ 0x18, 0x1b, 0x74, 0x90, 0xdb, 0x1c, 0x62, 0x0f, 0xe2, 0x20, 0xc1, 0xcc,
+ 0x61, 0x3b, 0x06, 0x6a, 0xbb, 0x14, 0x3b, 0xe9, 0x68, 0xba, 0xac, 0x51,
+ 0x9d, 0x24, 0xec, 0xdc, 0x4b, 0x68, 0xed, 0xd2, 0x5e, 0x1b, 0x7e, 0xfd,
+ 0x92, 0xa8, 0x6d, 0x84, 0xb2, 0x28, 0x28, 0x38, 0xca, 0xd2, 0x4c, 0x46,
+ 0x2d, 0x59, 0xcc, 0x38, 0x5c, 0x8b, 0xcc, 0xe3, 0xfe, 0x2b, 0x71, 0xfa,
+ 0x79, 0xbc, 0x67, 0x79, 0x85, 0x07, 0x54, 0x69, 0xde, 0xde, 0x2f, 0xf8,
+ 0xcf, 0x07, 0x71, 0x95, 0x2b, 0xa1, 0x10, 0x78, 0xd0, 0xff, 0x00, 0x00,
+ 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2link_gif_len = 234;
+unsigned int ftv2link_png_len = 358;
-unsigned char ftv2mlastnode_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x01, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x10, 0x00, 0x16, 0x00, 0x00, 0x04, 0x2a, 0x30, 0xc8, 0x49,
- 0xab, 0x95, 0xe0, 0xea, 0x7d, 0x33, 0xff, 0x15, 0x20, 0x8e, 0x63, 0x67,
- 0x5a, 0x5e, 0x78, 0xaa, 0x68, 0x20, 0xbc, 0x6f, 0x90, 0xcd, 0x53, 0x4a,
- 0xd9, 0xf5, 0x7a, 0xeb, 0x35, 0x49, 0x82, 0xc0, 0xa0, 0x70, 0x48, 0x2c,
- 0x1a, 0x35, 0x11, 0x00, 0x3b
+unsigned char ftv2mlastnode_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x02, 0x03, 0x00, 0x00, 0x01, 0xc3, 0xc3, 0xc4, 0x79, 0x00, 0x00, 0x00,
+ 0x09, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x00,
+ 0x00, 0x00, 0x3c, 0x5e, 0xbb, 0x2c, 0x00, 0x00, 0x00, 0x01, 0x74, 0x52,
+ 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00, 0x00, 0x16, 0x74,
+ 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x00,
+ 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32, 0x2e, 0x34, 0x2e,
+ 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x23, 0x49, 0x44, 0x41,
+ 0x54, 0x78, 0xda, 0x63, 0x60, 0x20, 0x0b, 0x08, 0x08, 0x20, 0x10, 0x0a,
+ 0x60, 0x84, 0x11, 0x8c, 0xa1, 0xa1, 0x20, 0x06, 0x90, 0xc9, 0xa8, 0xb5,
+ 0x50, 0x10, 0xca, 0x02, 0x89, 0x61, 0x01, 0x00, 0x6d, 0x17, 0x02, 0xba,
+ 0xc0, 0xdc, 0x69, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
+ 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2mlastnode_gif_len = 125;
+unsigned int ftv2mlastnode_png_len = 160;
-unsigned char ftv2mnode_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
+unsigned char ftv2mnode_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x4c, 0x83, 0x31, 0xd9, 0x00, 0x00, 0x00,
+ 0x24, 0x50, 0x4c, 0x54, 0x45, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
- 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0b, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x10, 0x00, 0x16, 0x00, 0x00, 0x04, 0x2e, 0x70, 0xc9, 0x49,
- 0xab, 0x95, 0xe0, 0xea, 0x7d, 0x33, 0xff, 0x15, 0x20, 0x8e, 0x63, 0x67,
- 0x5a, 0x5e, 0x78, 0xaa, 0xe8, 0x22, 0xbc, 0xef, 0x92, 0xcd, 0x53, 0x4a,
- 0xd9, 0xf5, 0x7a, 0xeb, 0x35, 0x49, 0x82, 0x40, 0x4c, 0x70, 0x28, 0x24,
- 0x06, 0x71, 0xc6, 0x0d, 0x52, 0x12, 0x01, 0x00, 0x3b
+ 0x00, 0x00, 0x80, 0x80, 0x80, 0x53, 0xbe, 0x1e, 0x99, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x2a,
+ 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0xa0, 0x2e, 0xe0, 0x06,
+ 0x42, 0x74, 0x02, 0xa7, 0x52, 0x54, 0x06, 0xf7, 0x6e, 0x20, 0x80, 0xf1,
+ 0xc1, 0x62, 0xdc, 0x4c, 0x4a, 0x4a, 0xdc, 0xdc, 0xdc, 0xc8, 0x22, 0x30,
+ 0x35, 0x98, 0xda, 0xd1, 0x19, 0x00, 0xb7, 0x79, 0x07, 0x27, 0xaa, 0xf7,
+ 0x96, 0x03, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
+ 0x60, 0x82
};
-const unsigned int ftv2mnode_gif_len = 129;
+unsigned int ftv2mnode_png_len = 194;
-unsigned char ftv2node_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
+unsigned char ftv2node_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x4c, 0x83, 0x31, 0xd9, 0x00, 0x00, 0x00,
+ 0x30, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x21, 0xfe, 0x1c,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x80, 0x80, 0x18, 0xd3, 0xa0, 0x90, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x26,
+ 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00,
0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53, 0x6d,
0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65, 0x72,
- 0x20, 0x32, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
- 0x16, 0x00, 0x40, 0x04, 0x20, 0xf0, 0xc9, 0x49, 0xab, 0xbd, 0x38, 0xeb,
- 0xcd, 0xbb, 0xff, 0x60, 0x28, 0x72, 0xc0, 0x57, 0x7a, 0x67, 0x97, 0x92,
- 0x4f, 0xe9, 0xb6, 0xd7, 0xba, 0xc9, 0x1a, 0x9d, 0xd9, 0x18, 0x1e, 0x63,
- 0x11, 0x00, 0x3b
+ 0x20, 0x32, 0x2e, 0x30, 0x69, 0x01, 0x6f, 0x3f, 0xcd, 0x06, 0x00, 0x00,
+ 0x00, 0x15, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0x18, 0x30,
+ 0xc0, 0x4f, 0x0c, 0x03, 0x04, 0x88, 0x56, 0x8c, 0xc2, 0x00, 0x00, 0x2e,
+ 0x52, 0x00, 0xe2, 0xfa, 0x45, 0x3a, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x49,
+ 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2node_gif_len = 147;
+unsigned int ftv2node_png_len = 235;
-unsigned char ftv2plastnode_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x01, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x10, 0x00, 0x16, 0x00, 0x00, 0x04, 0x2f, 0x30, 0xc8, 0x49,
- 0xab, 0x95, 0xe0, 0xea, 0x7d, 0x33, 0xff, 0x15, 0x20, 0x8e, 0x63, 0x67,
- 0x5a, 0x5e, 0x20, 0x4c, 0x29, 0x95, 0xae, 0x98, 0x29, 0xcc, 0x73, 0x90,
- 0xdd, 0xec, 0x04, 0xdb, 0xa7, 0x9a, 0xa3, 0x3d, 0x17, 0x89, 0x04, 0x2a,
- 0x1a, 0x8f, 0xc8, 0xa4, 0x72, 0xa9, 0x89, 0x00, 0x00, 0x3b
+unsigned char ftv2plastnode_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x02, 0x03, 0x00, 0x00, 0x01, 0xc3, 0xc3, 0xc4, 0x79, 0x00, 0x00, 0x00,
+ 0x09, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x80, 0x80, 0x80, 0x00,
+ 0x00, 0x00, 0x3c, 0x5e, 0xbb, 0x2c, 0x00, 0x00, 0x00, 0x01, 0x74, 0x52,
+ 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00, 0x00, 0x16, 0x74,
+ 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x00,
+ 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32, 0x2e, 0x34, 0x2e,
+ 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x28, 0x49, 0x44, 0x41,
+ 0x54, 0x78, 0xda, 0x63, 0x60, 0x20, 0x0b, 0x08, 0x08, 0x30, 0x08, 0x81,
+ 0x11, 0x90, 0x81, 0x02, 0x18, 0x61, 0x04, 0x63, 0x68, 0x28, 0x90, 0x60,
+ 0x02, 0x32, 0x19, 0xb5, 0x16, 0x0a, 0x42, 0x59, 0x20, 0x31, 0x2c, 0x00,
+ 0x00, 0x6e, 0xc1, 0x02, 0xc2, 0xe5, 0xed, 0x75, 0xa7, 0x00, 0x00, 0x00,
+ 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2plastnode_gif_len = 130;
+unsigned int ftv2plastnode_png_len = 165;
-unsigned char ftv2pnode_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
+unsigned char ftv2pnode_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x4c, 0x83, 0x31, 0xd9, 0x00, 0x00, 0x00,
+ 0x24, 0x50, 0x4c, 0x54, 0x45, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0,
- 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0b, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x10, 0x00, 0x16, 0x00, 0x00, 0x04, 0x32, 0x70, 0xc9, 0x49,
- 0xab, 0x95, 0xe0, 0xea, 0x7d, 0x33, 0xff, 0x15, 0x20, 0x8e, 0x63, 0x67,
- 0x5a, 0xde, 0x22, 0x4c, 0x29, 0x95, 0xae, 0x98, 0x29, 0xcc, 0xf3, 0x92,
- 0xdd, 0xec, 0x04, 0xdb, 0xa7, 0x9a, 0xa3, 0x3d, 0x17, 0x89, 0x04, 0x2a,
- 0xc6, 0x8c, 0x48, 0x5e, 0xd2, 0xd8, 0x5a, 0x72, 0x9a, 0x93, 0x08, 0x00,
- 0x3b
+ 0x00, 0x00, 0x80, 0x80, 0x80, 0x53, 0xbe, 0x1e, 0x99, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x30,
+ 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0xa0, 0x2e, 0xe0, 0x06,
+ 0x42, 0x06, 0x6e, 0x26, 0x38, 0x01, 0xe2, 0xe2, 0x54, 0x8a, 0xca, 0xe0,
+ 0xde, 0x0d, 0x04, 0x10, 0x3e, 0x13, 0x44, 0x8c, 0x9b, 0x49, 0x49, 0x89,
+ 0x9b, 0x9b, 0x1b, 0x59, 0x04, 0xa6, 0x06, 0x53, 0x3b, 0x3a, 0x03, 0x00,
+ 0xba, 0x6b, 0x07, 0x2f, 0xaa, 0xcb, 0x1f, 0x6f, 0x00, 0x00, 0x00, 0x00,
+ 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int ftv2pnode_gif_len = 133;
+unsigned int ftv2pnode_png_len = 200;
-unsigned char ftv2vertline_gif[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x10, 0x00, 0x16, 0x00, 0xb3, 0x00,
- 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00,
+unsigned char ftv2vertline_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x16,
+ 0x04, 0x03, 0x00, 0x00, 0x01, 0x4c, 0x83, 0x31, 0xd9, 0x00, 0x00, 0x00,
+ 0x30, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0x0f, 0x00, 0x21, 0xfe, 0x1c,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x80, 0x80, 0x18, 0xd3, 0xa0, 0x90, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x26,
+ 0x74, 0x45, 0x58, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x00,
0x55, 0x6c, 0x65, 0x61, 0x64, 0x20, 0x47, 0x49, 0x46, 0x20, 0x53, 0x6d,
0x61, 0x72, 0x74, 0x53, 0x61, 0x76, 0x65, 0x72, 0x20, 0x56, 0x65, 0x72,
- 0x20, 0x32, 0x2e, 0x30, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
- 0x16, 0x00, 0x40, 0x04, 0x19, 0xf0, 0xc9, 0x49, 0xab, 0xbd, 0x38, 0xeb,
- 0xcd, 0xbb, 0xff, 0x60, 0x28, 0x72, 0xc0, 0x57, 0x7a, 0x67, 0x97, 0x92,
- 0x66, 0x8b, 0xba, 0x2a, 0x5c, 0x45, 0x00, 0x3b
+ 0x20, 0x32, 0x2e, 0x30, 0x69, 0x01, 0x6f, 0x3f, 0xcd, 0x06, 0x00, 0x00,
+ 0x00, 0x0f, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0x63, 0x60, 0x18, 0x30,
+ 0xc0, 0x4f, 0x5b, 0x06, 0x00, 0x21, 0x14, 0x00, 0xa6, 0xe5, 0x3c, 0xe8,
+ 0x3a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
+ 0x82
};
-const unsigned int ftv2vertline_gif_len = 140;
+unsigned int ftv2vertline_png_len = 229;
+
struct ImageInfo
{
@@ -231,18 +314,18 @@ struct ImageInfo
unsigned int len;
} image_info[] =
{
- { "ftv2blank.gif",ftv2blank_gif,ftv2blank_gif_len },
- { "ftv2doc.gif",ftv2doc_gif,ftv2doc_gif_len },
- { "ftv2folderclosed.gif",ftv2folderclosed_gif,ftv2folderclosed_gif_len },
- { "ftv2folderopen.gif",ftv2folderopen_gif,ftv2folderopen_gif_len },
- { "ftv2lastnode.gif",ftv2lastnode_gif,ftv2lastnode_gif_len },
- { "ftv2link.gif",ftv2link_gif,ftv2link_gif_len },
- { "ftv2mlastnode.gif",ftv2mlastnode_gif,ftv2mlastnode_gif_len },
- { "ftv2mnode.gif",ftv2mnode_gif,ftv2mnode_gif_len },
- { "ftv2node.gif",ftv2node_gif,ftv2node_gif_len },
- { "ftv2plastnode.gif",ftv2plastnode_gif,ftv2plastnode_gif_len },
- { "ftv2pnode.gif",ftv2pnode_gif,ftv2pnode_gif_len },
- { "ftv2vertline.gif",ftv2vertline_gif,ftv2vertline_gif_len },
+ { "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 }
};
diff --git a/src/gifenc.cpp b/src/gifenc.cpp
deleted file mode 100644
index 6a06465..0000000
--- a/src/gifenc.cpp
+++ /dev/null
@@ -1,288 +0,0 @@
-/******************************************************************************
- *
- *
- *
- *
- * Copyright (C) 1997-2002 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.
- *
- * The GIF compression code below is based on the file ppmtogif.c of the
- * netpbm package. The original copyright message follows:
- *
- * ---------------------------------------------------------------------------
- *
- * Copyright (C) 1989 by Jef Poskanzer.
- *
- * Permission to use, copy, modify, and distribute this software and its
- * documentation for any purpose and without fee is hereby granted, provided
- * that the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. This software is provided "as is" without express or
- * implied warranty.
- *
- * ---------------------------------------------------------------------------
- *
- * The Graphics Interchange Format(c) is the Copyright property of
- * CompuServe Incorporated. GIF(sm) is a Service Mark property of
- * CompuServe Incorporated.
- */
-
-#include "gifenc.h"
-
-static const unsigned int masks[] = { 0x0000, 0x0001, 0x0003, 0x0007, 0x000F,
- 0x001F, 0x003F, 0x007F, 0x00FF,
- 0x01FF, 0x03FF, 0x07FF, 0x0FFF,
- 0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF };
-
-GifEncoder::GifEncoder(Byte *rawBytes,Color *p,int w,int h, Byte d,
- int t)
- : colorResolution(8),globalPaletteFlag(0x80),bits(12),
- maxMaxCode(1<<bits)
-{
- width = w;
- height = h;
- depth = d;
- transIndex = t;
- palette = p;
- data = rawBytes;
- dataPtr = data;
-}
-
-GifEncoder::~GifEncoder()
-{
-}
-
-void GifEncoder::writeGIF(QFile &fp)
-{
- // Write the Magic header
- fp.writeBlock( transIndex < 0 ? "GIF87a" : "GIF89a", 6 );
-
- // Write the logical screen descriptor
- putWord( width, fp );
- putWord( height, fp );
- Byte pack = globalPaletteFlag | ((colorResolution-1)<<4) | (depth-1);
- putByte( pack, fp );
- putByte( 0, fp ); // the background color
- putByte( 0, fp ); // no aspect ration defined
-
- // Write global color table
- int i; for ( i=0 ; i< (1<<depth) ; i++)
- {
- putByte(palette[i].red, fp);
- putByte(palette[i].green,fp);
- putByte(palette[i].blue, fp);
- }
-
- if ( transIndex >= 0)
- {
- // Write graphic control extension (needed for GIF transparancy)
- putByte( 0x21, fp); // extension introducer
- putByte( 0xf9, fp); // graphic control label
- putByte( 4, fp); // block size
- putByte( 1, fp); // announce transparacy value
- putWord( 0, fp); // zero delay time
- putByte( transIndex, fp); // write transparant index
- putByte( 0, fp); // end block
- }
-
- // Write the image descriptor
- putByte( 0x2c, fp); // image separator
- putWord( 0, fp); // image left position
- putWord( 0, fp); // image top position
- putWord( width, fp); // image width
- putWord( height, fp); // image height
- putByte( 0, fp); // no local color table, no interlacing
-
- // Write table based image data
- Byte initCodeSize = depth<=1 ? 2 : depth;
- putByte( initCodeSize, fp); // LZW Minimum Code Size
- compress( initCodeSize+1, fp);
- putByte( 0, fp); // end of blocks
-
- // Write GIF Trailer
- putByte( 0x3b, fp);
-}
-
-void GifEncoder::compress( int ibits, QFile &outfile )
-{
- int i;
- int entry;
-
- initBits = ibits;
- numPixels = width*height;
- dataPtr = data;
- clearFlag = FALSE;
- nBits = initBits;
- maxCode = (1<<nBits) -1;
- ClearCode = (1 << (initBits - 1));
- EOFCode = ClearCode + 1;
- freeEntry = ClearCode + 2;
- aCount = 0;
- curAccum = 0;
- curBits = 0;
-
- entry = nextPixel();
-
- int hshift = 0;
- int fcode;
- for ( fcode = hashTableSize; fcode < 65536L; fcode *= 2L ) ++hshift;
- hshift = 8 - hshift; /* set hash code range bound */
-
- clearHashTable(); /* clear hash table */
-
- writeCode( ClearCode,outfile );
-
- int c;
- while ( (c = nextPixel()) != EOF )
- {
- fcode = (c << bits) + entry;
- i = (c << hshift) ^ entry; /* xor hashing */
-
- bool found=FALSE;
- if (htab[i]==fcode)
- {
- entry = codetab[i];
- found=TRUE;
- }
- else if (htab[i]>=0)
- {
- int disp = hashTableSize - i;
- if (i==0) disp=1;
- do
- {
- if ((i-=disp)<0) i+=hashTableSize;
- if (htab[i]==fcode)
- {
- entry=codetab[i];
- found=TRUE;
- }
- } while (htab[i]>0 && !found);
- }
- if (!found)
- {
- writeCode( entry, outfile );
- entry = c;
- if ( freeEntry < maxMaxCode )
- {
- codetab[i] = freeEntry++; /* code -> hashtable */
- htab[i] = fcode;
- }
- else
- {
- clearHashTable();
- freeEntry = ClearCode + 2;
- clearFlag = TRUE;
- writeCode( ClearCode, outfile );
- }
- }
- }
- writeCode( entry, outfile );
- writeCode( EOFCode, outfile );
-}
-
-void GifEncoder::putWord( Word w, QFile &fp )
-{
- fp.putch( w & 0xff );
- fp.putch( (w>>8) & 0xff );
-}
-
-void GifEncoder::putByte( Byte b, QFile &fp )
-{
- fp.putch( b );
-}
-
-void GifEncoder::writeCode( int code, QFile &outfile )
-{
- curAccum &= masks[ curBits ];
-
- if ( curBits > 0 )
- {
- curAccum |= (code << curBits);
- }
- else
- {
- curAccum = code;
- }
-
- curBits += nBits;
-
- while( curBits >= 8 )
- {
- writeChar( (Byte)(curAccum & 0xff),outfile );
- curAccum >>= 8;
- curBits -= 8;
- }
-
- /*
- * If the next entry is going to be too big for the code size,
- * then increase it, if possible.
- */
- if ( freeEntry > maxCode || clearFlag )
- {
- if( clearFlag )
- {
- nBits = initBits;
- maxCode = (1<<nBits)-1;
- clearFlag = FALSE;
- }
- else
- {
- ++nBits;
- if ( nBits == bits )
- maxCode = maxMaxCode;
- else
- maxCode = (1<<nBits)-1;
- }
- }
-
- if ( code == EOFCode )
- {
- /* At EOF, write the rest of the buffer. */
- while( curBits > 0 )
- {
- writeChar( (Byte)(curAccum & 0xff), outfile );
- curAccum >>= 8;
- curBits -= 8;
- }
-
- writePacket(outfile);
- }
-}
-
-/*
- * Add a character to the end of the current packet, and if it is 254
- * characters, flush the packet to disk.
- */
-void GifEncoder::writeChar( Byte c, QFile &fp )
-{
- accum[ aCount++ ] = c;
- if( aCount >= 254 ) writePacket(fp);
-}
-
-/*
- * Flush the packet to disk, and reset the accumulator
- */
-void GifEncoder::writePacket(QFile &fp)
-{
- if ( aCount > 0 )
- {
- fp.putch( aCount );
- fp.writeBlock( (const char *)accum, aCount );
- aCount = 0;
- }
-}
-
-void GifEncoder::clearHashTable() /* reset code table */
-{
- int *htab_p = htab;
- int i; for (i=0;i<hashTableSize;i++) *htab_p++ = -1;
-}
-
diff --git a/src/gifenc.h b/src/gifenc.h
deleted file mode 100644
index cfeacae..0000000
--- a/src/gifenc.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/******************************************************************************
- *
- *
- *
- *
- * Copyright (C) 1997-2002 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.
- *
- */
-
-#ifndef _GIFENC_H
-#define _GIFENC_H
-#include <qfile.h>
-
-typedef unsigned char Byte;
-typedef unsigned short Word;
-
-struct Color
-{
- Byte red;
- Byte green;
- Byte blue;
-};
-
-const int hashTableSize=5003; // size of the hash table
-
-class GifEncoder
-{
- public:
- GifEncoder(Byte *rawBytes,Color *p,int w,int h,Byte d,int t);
- ~GifEncoder();
- void writeGIF(QFile &fp);
-
- protected:
- void putWord( Word w, QFile &fp );
- void putByte( Byte b, QFile &fp );
- void compress(int csize, QFile &fp);
- void writeCode(int code, QFile &fp);
- void writeChar( Byte c, QFile &fp );
- void writePacket(QFile &fp);
- int nextPixel()
- {
- if ( --numPixels < 0) return EOF;
- return *dataPtr++;
- }
- void clearHashTable();
-
- private:
- const int colorResolution; // 8 bit for Red, Green and Blue;
- const int globalPaletteFlag;
- const int bits;
- const int maxMaxCode;
-
- // image variables
- int width; // image width
- int height; // image height
- Byte depth; // bits per CLUT entry
- int transIndex; // index of the transparant color; -1 = none
- Color *palette; // pointer to the color palette
- int numPixels; // total number of pixel (i.e. width * height)
- Byte *data; // pointer to the image data (one byte per pixel)
- Byte *dataPtr; // pointer located at the current pixel.
-
- // compression variables
- bool clearFlag; // clear hash table flag
- int freeEntry; // first free entry in the hash table
- unsigned int curAccum; // encoded bit accumulator
- int curBits; // number of bits in curAccum
- Byte accum[256]; // Buffer for a packet
- int aCount; // Number of characters so far in this 'packet'
- int nBits; // number of bits/code
- int maxCode; // maximum code, given n_bits
- int initBits; // initial number of bits
- int EOFCode; // code for signaling the end of the file
- int ClearCode; // the clear code for the decompressor
-
- // tables
- int htab[hashTableSize]; // the hash table
- Word codetab[hashTableSize]; // the code table
-};
-
-#endif
diff --git a/src/htmlgen.cpp b/src/htmlgen.cpp
index 747902d..af01a96 100644
--- a/src/htmlgen.cpp
+++ b/src/htmlgen.cpp
@@ -184,7 +184,7 @@ void HtmlGenerator::writeFooterFile(QFile &file)
t << "<hr><address><small>\n";
t << theTranslator->trGeneratedAt( "$datetime", "$projectname" );
t << " <a href=\"http://www.doxygen.org/index.html\">\n"
- << "<img src=\"doxygen.gif\" alt=\"doxygen\" "
+ << "<img src=\"doxygen.png\" alt=\"doxygen\" "
<< "align=\"middle\" border=0 width=110 height=53>\n"
<< "</a> $doxygenversion " << theTranslator->trWrittenBy()
<< " <a href=\"mailto:dimitri@stack.nl\">Dimitri van Heesch</a>,\n"
@@ -273,7 +273,7 @@ void HtmlGenerator::writeFooter(int part,bool external)
{
t << "src=\"";
}
- t << "doxygen.gif\" alt=\"doxygen\" "
+ t << "doxygen.png\" alt=\"doxygen\" "
<< "align=\"middle\" border=0 " << endl <<
"width=110 height=53></a>" << versionString <<" ";
}
@@ -649,7 +649,7 @@ void HtmlGenerator::endClassDiagram(ClassDiagram &d,
const char *fileName,const char *name)
{
t << "\n<p><center><img src=\""
- << fileName << ".gif\" usemap=\"#" << name << "_map\""
+ << fileName << ".png\" usemap=\"#" << name << "_map\""
<< " border=\"0\"></center>" << endl
<< "<map name=\"" << name << "_map\">" << endl;
@@ -679,7 +679,7 @@ void HtmlGenerator::writeFormula(const char *n,const char *text)
t << "\"middle\""; // assume Windows users use IE or HtmlHelp which only
// displays formulas nicely with align == "middle"
#endif
- t << " src=\"" << n << ".gif\">" << endl;
+ t << " src=\"" << n << ".png\">" << endl;
if (text && text[0]=='\\') t << "</center><p>" << endl;
}
diff --git a/src/image.cpp b/src/image.cpp
index ba66438..5806230 100644
--- a/src/image.cpp
+++ b/src/image.cpp
@@ -18,7 +18,7 @@
#include "qtbc.h"
#include "image.h"
-#include "gifenc.h"
+#include "pngenc.h"
#include <qglobal.h>
const int charSetWidth=80;
@@ -321,19 +321,11 @@ void Image::fillRect(int x,int y,int lwidth,int lheight,uchar colIndex,uint mask
bool Image::save(const char *fileName,int mode)
{
- GifEncoder gifenc(data,
- mode==0 ? palette : palette2,
- width,height,
- mode==0 ? 3 : 4,
- 0);
- QFile file(fileName);
- if (file.open(IO_WriteOnly))
- {
- gifenc.writeGIF(file);
- return TRUE;
- }
- else
- {
- return FALSE;
- }
+ PngEncoder enc(data,
+ mode==0 ? palette : palette2,
+ width,height,
+ mode==0 ? 3 : 4,
+ 0);
+ enc.write(fileName);
+ return TRUE;
}
diff --git a/src/libdoxygen.pro.in b/src/libdoxygen.pro.in
index 430f865..2d4cf8d 100644
--- a/src/libdoxygen.pro.in
+++ b/src/libdoxygen.pro.in
@@ -35,7 +35,6 @@ HEADERS = bufstr.h \
filename.h \
formula.h \
ftvhelp.h \
- gifenc.h \
groupdef.h \
htmlgen.h \
htmlhelp.h \
@@ -56,6 +55,7 @@ HEADERS = bufstr.h \
outputlist.h \
packagedef.h \
page.h \
+ pngenc.h \
pre.h \
qtbc.h \
reflist.h \
@@ -116,7 +116,6 @@ SOURCES = ce_lex.cpp \
filename.cpp \
formula.cpp \
ftvhelp.cpp \
- gifenc.cpp \
groupdef.cpp \
htmlgen.cpp \
htmlhelp.cpp \
@@ -136,6 +135,7 @@ SOURCES = ce_lex.cpp \
outputgen.cpp \
outputlist.cpp \
packagedef.cpp \
+ pngenc.cpp \
pre.cpp \
reflist.cpp \
rtfgen.cpp \
@@ -151,6 +151,7 @@ SOURCES = ce_lex.cpp \
win32:TMAKE_CXXFLAGS += -DQT_NODLL
win32-msvc:TMAKE_CXXFLAGS += -Zm200
INCLUDEPATH += ../qtools
+INCLUDEPATH += ../libpng
win32:INCLUDEPATH += .
DESTDIR = ../lib
TARGET = doxygen
diff --git a/src/logos.cpp b/src/logos.cpp
index 56ae8bd..2653019 100644
--- a/src/logos.cpp
+++ b/src/logos.cpp
@@ -21,389 +21,364 @@
#include <qfile.h>
#include <qdir.h>
-
-//unsigned char null_data[] = {
-// 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x01, 0x00, 0x01, 0x00, 0x80, 0xff,
-// 0x00, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x21, 0xf9, 0x04, 0x01, 0x00,
-// 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00,
-// 0x00, 0x02, 0x02, 0x44, 0x01, 0x00, 0x3b
-//};
-//unsigned int null_len = 43;
-
-unsigned char logo_data[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x6e, 0x00, 0x35, 0x00, 0xe7, 0x00,
- 0x00, 0xff, 0xff, 0xe2, 0x9f, 0x20, 0x20, 0xb6, 0x25, 0x25, 0xff, 0xff,
- 0xe0, 0xff, 0xff, 0xdc, 0xdf, 0xdf, 0xc6, 0xff, 0xcc, 0xcc, 0xdf, 0xb2,
- 0xb2, 0xfe, 0xfc, 0xd3, 0xbf, 0xbf, 0xa9, 0xff, 0xff, 0xe3, 0xf8, 0xe6,
- 0x93, 0xff, 0xff, 0xdb, 0xdf, 0xdf, 0xc0, 0xf5, 0xdc, 0x76, 0xdf, 0xdf,
- 0xc4, 0xf8, 0xe6, 0x92, 0xde, 0xdc, 0xb9, 0xee, 0xc3, 0x2c, 0xfc, 0xf4,
- 0xbd, 0xfc, 0xf4, 0xbc, 0xfd, 0xf8, 0xc9, 0xdf, 0xdf, 0xc5, 0xf3, 0xd6,
- 0x64, 0xfb, 0xf0, 0xaf, 0xd5, 0xbb, 0x57, 0xf9, 0xeb, 0xa1, 0xf6, 0xe2,
- 0x86, 0xd9, 0xc9, 0x81, 0xf7, 0xe1, 0x86, 0xbf, 0xbf, 0xa4, 0xff, 0xff,
- 0xdf, 0xf4, 0xd6, 0x64, 0x3d, 0x36, 0x19, 0xfd, 0xf8, 0xc8, 0xfa, 0xef,
- 0xaf, 0x20, 0x1f, 0x18, 0xf9, 0xeb, 0xa0, 0xfd, 0xf9, 0xc9, 0xdd, 0xd9,
- 0xb0, 0xfc, 0xf5, 0xbc, 0xb2, 0x92, 0x21, 0xdc, 0xd5, 0xa4, 0xdf, 0xdf,
- 0xc7, 0x3f, 0x3c, 0x2c, 0x1f, 0x1c, 0x0f, 0xb8, 0xa5, 0x58, 0xf7, 0xe2,
- 0x85, 0xf5, 0xdc, 0x75, 0x20, 0x1f, 0x19, 0xff, 0xfe, 0xdb, 0xbf, 0xbf,
- 0xaa, 0xf7, 0xe1, 0x85, 0xf9, 0xea, 0xa1, 0xd0, 0xab, 0x26, 0xf2, 0xd0,
- 0x52, 0xff, 0xfc, 0xd3, 0xda, 0xce, 0x8d, 0x40, 0x3f, 0x35, 0xdc, 0xd5,
- 0xa5, 0xf7, 0xe2, 0x86, 0xfa, 0xf0, 0xaf, 0x3e, 0x3b, 0x28, 0x40, 0x40,
- 0x39, 0x40, 0x40, 0x37, 0xdb, 0xd2, 0x99, 0xbb, 0xb0, 0x78, 0xfb, 0xef,
- 0xaf, 0xd6, 0xc0, 0x67, 0xfa, 0xeb, 0xa1, 0xdd, 0xda, 0xb0, 0xf6, 0xe1,
- 0x86, 0x04, 0x04, 0x03, 0xfe, 0xfc, 0xd4, 0x5c, 0x51, 0x26, 0xba, 0xac,
- 0x6e, 0xdf, 0xdf, 0xc3, 0xef, 0xc6, 0x34, 0xf0, 0xca, 0x42, 0xb9, 0xa9,
- 0x64, 0xff, 0xfe, 0xdc, 0x1e, 0x1b, 0x0d, 0x1f, 0x1c, 0x11, 0x1f, 0x1d,
- 0x14, 0xf5, 0xdd, 0x76, 0x5b, 0x51, 0x26, 0xdd, 0xda, 0xaf, 0xf9, 0xea,
- 0xa0, 0x3f, 0x3d, 0x2f, 0xb5, 0x9c, 0x3d, 0xd6, 0xc1, 0x67, 0xdc, 0xd2,
- 0x99, 0xfa, 0xeb, 0xa0, 0xd5, 0xbc, 0x57, 0xd9, 0xc9, 0x80, 0x3f, 0x3e,
- 0x32, 0x3e, 0x3a, 0x25, 0xfe, 0xf8, 0xc8, 0xda, 0xce, 0x8c, 0x20, 0x20,
- 0x1c, 0xf7, 0xe6, 0x93, 0xd7, 0xc6, 0x75, 0x3d, 0x37, 0x1e, 0xfb, 0xef,
- 0xae, 0xfd, 0xf9, 0xc8, 0xbe, 0xbd, 0x9e, 0xbb, 0xb4, 0x83, 0xd7, 0xc5,
- 0x75, 0x1f, 0x1d, 0x12, 0xdc, 0xd1, 0x98, 0x20, 0x20, 0x1b, 0x1f, 0x1e,
- 0x16, 0x1f, 0x1b, 0x0d, 0xbf, 0xbf, 0xa5, 0x40, 0x40, 0x38, 0xdf, 0xdc,
- 0xb9, 0xfc, 0xf5, 0xbd, 0xf4, 0xd6, 0x65, 0xfa, 0xea, 0xa1, 0xd8, 0xc9,
- 0x81, 0xf0, 0xcb, 0x42, 0xdf, 0xde, 0xc0, 0x1e, 0x18, 0x06, 0xf6, 0xdc,
- 0x75, 0xbf, 0xbf, 0xa8, 0xd8, 0xc6, 0x75, 0xd6, 0xc0, 0x66, 0xf7, 0xe6,
- 0x92, 0xf1, 0xca, 0x42, 0xd2, 0xb2, 0x3a, 0xbe, 0xbe, 0x9e, 0x43, 0x40,
- 0x2f, 0xd7, 0xc6, 0x74, 0xb8, 0xa6, 0x58, 0xbc, 0xb4, 0x83, 0xda, 0xcd,
- 0x8d, 0xf4, 0xd7, 0x64, 0xbb, 0xb0, 0x79, 0xfe, 0xf9, 0xc9, 0x5e, 0x5a,
- 0x42, 0xfa, 0xea, 0xa0, 0x60, 0x60, 0x55, 0x71, 0x17, 0x17, 0xbc, 0xb4,
- 0x82, 0x88, 0x1c, 0x1c, 0xba, 0xac, 0x6d, 0xbd, 0xb7, 0x8e, 0xef, 0xc5,
- 0x34, 0xd8, 0xc5, 0x75, 0xff, 0xff, 0xdd, 0xfb, 0xf0, 0xae, 0x44, 0x44,
- 0x3a, 0xff, 0xff, 0xe1, 0xde, 0xdf, 0xc0, 0x10, 0x10, 0x0d, 0xf3, 0xd7,
- 0x64, 0xd1, 0xad, 0x2d, 0xbd, 0xb8, 0x8d, 0xdf, 0xdf, 0xc2, 0xbf, 0x99,
- 0x99, 0x3e, 0x39, 0x22, 0x5f, 0x5c, 0x47, 0xef, 0xc6, 0x35, 0xf6, 0xdc,
- 0x76, 0xff, 0xff, 0xde, 0x61, 0x61, 0x54, 0x60, 0x60, 0x54, 0xfb, 0xf4,
- 0xbc, 0x3e, 0x38, 0x22, 0x3f, 0x3b, 0x28, 0x20, 0x20, 0x1a, 0xdc, 0xd6,
- 0xa4, 0x5f, 0x5e, 0x4c, 0xbb, 0xb3, 0x82, 0x5e, 0x58, 0x3c, 0x10, 0x0f,
- 0x0b, 0xde, 0xd9, 0xb0, 0xe3, 0xd9, 0x9f, 0xd2, 0xb1, 0x3a, 0xbb, 0xb4,
- 0x82, 0xcd, 0xc6, 0x99, 0xa0, 0x90, 0x4d, 0xe5, 0xe2, 0xb6, 0xb8, 0xa9,
- 0x64, 0xdf, 0xdf, 0xc1, 0xda, 0xcd, 0x8c, 0xfa, 0xf0, 0xae, 0x08, 0x07,
- 0x05, 0xfe, 0xf8, 0xc9, 0xfa, 0xef, 0xae, 0xbf, 0xbe, 0xa5, 0x62, 0x5c,
- 0x3f, 0xf1, 0xd0, 0x52, 0x5e, 0x58, 0x3d, 0xbe, 0xba, 0x97, 0x8f, 0x8f,
- 0x7f, 0x60, 0x5f, 0x50, 0x28, 0x26, 0x1d, 0xb9, 0xac, 0x6e, 0x71, 0x63,
- 0x2e, 0xdb, 0xcd, 0x8d, 0xd8, 0xc5, 0x74, 0xfe, 0xfd, 0xd4, 0x98, 0x8f,
- 0x63, 0x60, 0x5e, 0x4c, 0xc2, 0xb7, 0x7e, 0xf6, 0xe1, 0x85, 0xf6, 0xe2,
- 0x85, 0x0f, 0x0d, 0x06, 0x42, 0x3e, 0x2b, 0xbe, 0xbb, 0x97, 0xdc, 0xd1,
- 0x99, 0x3d, 0x34, 0x15, 0xbd, 0xb7, 0x8d, 0x98, 0x86, 0x3e, 0x99, 0x89,
- 0x4a, 0xee, 0xc5, 0x34, 0x27, 0x25, 0x19, 0xe1, 0xd0, 0x84, 0x60, 0x60,
- 0x52, 0x3e, 0x39, 0x21, 0x3e, 0x38, 0x21, 0x60, 0x5f, 0x4f, 0x44, 0x44,
- 0x3b, 0xee, 0xc6, 0x35, 0x1e, 0x1a, 0x0a, 0xf6, 0xdd, 0x76, 0xdb, 0xd2,
- 0x98, 0xb5, 0x9c, 0x3e, 0xdc, 0xd2, 0x98, 0x85, 0x6d, 0x19, 0x18, 0x17,
- 0x10, 0xd0, 0xad, 0x2e, 0x93, 0x7c, 0x28, 0xee, 0xc6, 0x34, 0x3c, 0x34,
- 0x15, 0xdd, 0xd9, 0xaf, 0xe3, 0xe3, 0xc7, 0x1f, 0x1f, 0x18, 0xbf, 0xbe,
- 0xa4, 0xbf, 0xbd, 0x9e, 0x44, 0x43, 0x38, 0x30, 0x30, 0x29, 0xef, 0xc5,
- 0x35, 0x48, 0x47, 0x3c, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
- 0xff, 0x21, 0xf9, 0x04, 0x01, 0x00, 0x00, 0xff, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x6e, 0x00, 0x35, 0x00, 0x00, 0x08, 0xfe, 0x00, 0xff, 0x09,
- 0x1c, 0x48, 0xb0, 0xa0, 0xc1, 0x83, 0x08, 0x13, 0x2a, 0x5c, 0xc8, 0xb0,
- 0xa1, 0xc3, 0x87, 0x10, 0x23, 0x4a, 0x9c, 0x48, 0xb1, 0xa2, 0xc5, 0x8b,
- 0x18, 0x33, 0x56, 0xac, 0xc7, 0xb1, 0x63, 0x3d, 0x8d, 0x20, 0x43, 0x5a,
- 0xac, 0x17, 0xa7, 0x81, 0xc9, 0x38, 0x1f, 0x45, 0xaa, 0x5c, 0xc9, 0xb0,
- 0x5e, 0x03, 0x02, 0x30, 0x1b, 0xa4, 0x64, 0x49, 0xb3, 0xa6, 0x40, 0x97,
- 0x30, 0x09, 0xc8, 0xb4, 0xc9, 0x93, 0x25, 0xce, 0x98, 0x33, 0x7b, 0x0a,
- 0xcd, 0xf8, 0x53, 0x67, 0xd0, 0xa1, 0x48, 0x29, 0x16, 0xdd, 0x99, 0xb4,
- 0xe9, 0xc4, 0xa5, 0x47, 0x9d, 0x4a, 0x5d, 0x08, 0x75, 0xaa, 0xd5, 0x96,
- 0x0d, 0x2a, 0xc1, 0xc4, 0x15, 0xf5, 0xaa, 0xd7, 0x9b, 0x9e, 0x3e, 0x7c,
- 0x20, 0xe5, 0xa9, 0xeb, 0xd7, 0xa4, 0x1e, 0x3b, 0x3e, 0x18, 0xc0, 0xf6,
- 0x41, 0xca, 0xb4, 0x1e, 0x07, 0xc6, 0xbd, 0xd9, 0xf1, 0xdf, 0x5c, 0x82,
- 0x77, 0xe1, 0xde, 0xb5, 0xab, 0x97, 0xae, 0x5e, 0x8e, 0x11, 0x39, 0x26,
- 0x28, 0x60, 0xa1, 0x00, 0xe1, 0x02, 0x98, 0x00, 0x28, 0x2e, 0xf0, 0xb1,
- 0xde, 0xe0, 0xc2, 0x86, 0x0b, 0xac, 0x98, 0xd1, 0x38, 0x81, 0x05, 0x0b,
- 0x09, 0x2a, 0x17, 0x48, 0xd0, 0xa8, 0x5e, 0xa3, 0xc1, 0x99, 0xf1, 0x5a,
- 0xde, 0xdc, 0x71, 0xb0, 0xe1, 0xc2, 0x90, 0x43, 0x0b, 0x3e, 0x7d, 0x3a,
- 0xb3, 0xe3, 0xcb, 0x90, 0x51, 0x93, 0x7e, 0xe8, 0xb8, 0x80, 0x02, 0xc5,
- 0xb8, 0x6f, 0x2b, 0x56, 0xb0, 0xa2, 0xde, 0x8f, 0x04, 0xb7, 0x83, 0xe3,
- 0x9e, 0xfc, 0x63, 0x06, 0x80, 0xdb, 0x05, 0x7e, 0x8c, 0xf9, 0x51, 0xe0,
- 0x78, 0xef, 0xc1, 0x00, 0x18, 0xcb, 0x35, 0xae, 0x80, 0xf7, 0xef, 0x15,
- 0xbb, 0x75, 0x57, 0xe7, 0xcd, 0x71, 0x46, 0xf3, 0xe3, 0xda, 0x15, 0xfe,
- 0x50, 0xc6, 0xae, 0x3b, 0x7b, 0xf5, 0xd0, 0x0d, 0xeb, 0x7d, 0xc7, 0xbd,
- 0x9b, 0x3d, 0xe3, 0x04, 0xec, 0xe3, 0x2b, 0xce, 0xcc, 0x9e, 0xf3, 0x7a,
- 0xc6, 0xd8, 0xe7, 0x37, 0x1e, 0x96, 0x1f, 0xc0, 0x0c, 0xe6, 0xf2, 0xd5,
- 0xe7, 0x58, 0x79, 0x86, 0xb9, 0xa7, 0x5e, 0x80, 0x02, 0xb6, 0xc4, 0x07,
- 0x5b, 0x03, 0x7c, 0x30, 0xc0, 0x03, 0x10, 0x36, 0xc8, 0xd6, 0x07, 0x6e,
- 0x31, 0xc1, 0xe0, 0x00, 0x4c, 0x44, 0x28, 0x21, 0x13, 0xf5, 0x2c, 0xc8,
- 0xe0, 0x5a, 0x6c, 0x31, 0x61, 0x4a, 0x3d, 0x33, 0x30, 0xc8, 0xa1, 0x5d,
- 0x6b, 0x89, 0xf5, 0x80, 0x1c, 0x72, 0x80, 0xf8, 0x60, 0x3b, 0x29, 0x3e,
- 0xc8, 0x91, 0x8b, 0x7c, 0xd4, 0x63, 0x0a, 0x88, 0x14, 0xd6, 0xe3, 0x62,
- 0x88, 0x0c, 0x3a, 0xe8, 0x56, 0x4b, 0x79, 0x10, 0xc0, 0x80, 0x0c, 0x0c,
- 0x78, 0x00, 0x84, 0x1b, 0x97, 0x78, 0xc0, 0xc0, 0x92, 0x0c, 0xc8, 0x04,
- 0x13, 0x14, 0x45, 0x1e, 0x09, 0x84, 0x92, 0x50, 0xc8, 0x40, 0x80, 0x91,
- 0x0d, 0x10, 0xc9, 0x24, 0x01, 0x32, 0x78, 0x30, 0x46, 0x3d, 0x72, 0xbc,
- 0xb4, 0xe4, 0x3b, 0xf5, 0x78, 0x20, 0x83, 0x95, 0x04, 0xf8, 0x02, 0x44,
- 0x1c, 0x0c, 0x10, 0x00, 0x85, 0x07, 0x97, 0xc8, 0xf3, 0x4d, 0x26, 0x42,
- 0xca, 0x64, 0x26, 0x50, 0x65, 0x42, 0x21, 0x24, 0x03, 0x79, 0xd4, 0x93,
- 0xc9, 0x92, 0x50, 0x7a, 0xb0, 0x4d, 0x03, 0x4c, 0x36, 0x69, 0x96, 0x5c,
- 0x69, 0x20, 0xa0, 0x28, 0x02, 0x11, 0xe8, 0x50, 0x0f, 0x12, 0x9a, 0xc4,
- 0x13, 0x01, 0x0e, 0x8a, 0x46, 0x50, 0x0f, 0x02, 0x49, 0x30, 0xea, 0x28,
- 0x47, 0x3a, 0x44, 0xb0, 0xe8, 0x1c, 0xf5, 0x08, 0xa2, 0x28, 0xa5, 0x8a,
- 0xa6, 0xb1, 0x69, 0x3d, 0x69, 0x64, 0xca, 0xa8, 0x37, 0x93, 0x2a, 0xa3,
- 0xa9, 0x2a, 0xfe, 0x9e, 0x32, 0x4a, 0xcf, 0xa3, 0x6e, 0x48, 0x82, 0x03,
- 0x0e, 0x96, 0x7a, 0x4a, 0x69, 0x04, 0xc4, 0x88, 0x8a, 0x29, 0xa3, 0xf0,
- 0xd4, 0x13, 0x41, 0x12, 0x99, 0xce, 0xa1, 0x83, 0x2a, 0x73, 0x20, 0x40,
- 0xaa, 0xa5, 0x54, 0x59, 0x51, 0x81, 0x08, 0x15, 0x98, 0x70, 0x42, 0x0c,
- 0x1c, 0x21, 0x11, 0xc3, 0x09, 0xd1, 0x8a, 0x70, 0x42, 0x3d, 0xd0, 0x86,
- 0x31, 0x6d, 0x47, 0x31, 0x58, 0xc1, 0x8b, 0x08, 0x22, 0xb0, 0x53, 0xcf,
- 0x17, 0x27, 0x40, 0xab, 0x48, 0x05, 0xb0, 0x30, 0xe3, 0x11, 0xba, 0xd9,
- 0x1a, 0x01, 0xad, 0x09, 0x68, 0x48, 0xc3, 0x91, 0xbc, 0x15, 0xd8, 0xc2,
- 0x8a, 0x26, 0xf5, 0xc4, 0x20, 0x09, 0xb4, 0x96, 0x1a, 0x41, 0x6f, 0x05,
- 0x15, 0x60, 0x6b, 0x82, 0x09, 0x61, 0x08, 0xf3, 0x05, 0x47, 0x06, 0xa3,
- 0x61, 0x45, 0x0c, 0xd7, 0x22, 0x0c, 0xad, 0x11, 0x87, 0xde, 0x64, 0x05,
- 0x0a, 0x28, 0x4c, 0x30, 0x81, 0x0a, 0x24, 0x74, 0xe4, 0xce, 0x0e, 0x13,
- 0x50, 0x40, 0xc1, 0x0e, 0xf5, 0x50, 0xa0, 0xf1, 0x0e, 0x24, 0x20, 0xf1,
- 0x28, 0x09, 0x2a, 0x88, 0x4c, 0xc1, 0x2a, 0xf5, 0x60, 0xb1, 0x83, 0xc9,
- 0x28, 0xd0, 0x41, 0x81, 0x24, 0x1d, 0x73, 0x44, 0x82, 0x24, 0xa7, 0x4c,
- 0x90, 0x31, 0xcd, 0xab, 0x60, 0xc1, 0x51, 0x27, 0x3e, 0x53, 0x40, 0x4b,
- 0x28, 0xc5, 0xc8, 0x6c, 0x32, 0xc5, 0x2a, 0x64, 0x5c, 0xb3, 0xc9, 0x23,
- 0x57, 0x13, 0x4a, 0xce, 0x2a, 0x84, 0x4c, 0x01, 0xc7, 0x2c, 0x53, 0x40,
- 0x87, 0xc6, 0x2a, 0x54, 0x6c, 0x57, 0x27, 0x18, 0x60, 0xd0, 0x43, 0x0f,
- 0x41, 0xb0, 0xd0, 0x11, 0x0b, 0x5b, 0x0c, 0xd1, 0x03, 0x06, 0x41, 0xd4,
- 0x83, 0xc1, 0x08, 0x23, 0x6c, 0x31, 0xc8, 0x39, 0xbb, 0xbc, 0x32, 0xc8,
- 0x16, 0x23, 0x0c, 0x81, 0xc1, 0xfe, 0x2c, 0x2c, 0xb4, 0x02, 0xb7, 0xde,
- 0x67, 0xb0, 0x6d, 0xf6, 0xd9, 0xe5, 0x58, 0x82, 0x81, 0x25, 0x79, 0x63,
- 0x60, 0xc8, 0xd9, 0x6a, 0x88, 0x3d, 0x42, 0x2c, 0x41, 0xb4, 0x01, 0x78,
- 0xd7, 0x8f, 0x84, 0xad, 0x37, 0xdb, 0x86, 0x2c, 0xb2, 0x88, 0x1a, 0x6a,
- 0x98, 0x3d, 0x4d, 0x2f, 0x23, 0xf4, 0x30, 0xce, 0x1b, 0x6f, 0xb4, 0xa1,
- 0x4b, 0x0f, 0x67, 0x9c, 0xb1, 0x85, 0xd7, 0x76, 0x89, 0xc1, 0x48, 0x09,
- 0x25, 0xd4, 0x20, 0x44, 0x2a, 0x53, 0xf8, 0x20, 0x84, 0x06, 0x57, 0x94,
- 0x70, 0x45, 0x0e, 0xf5, 0x20, 0x53, 0x43, 0x0d, 0x1a, 0x34, 0xf3, 0x4b,
- 0x36, 0xd1, 0x08, 0x51, 0x02, 0x17, 0x76, 0x20, 0x93, 0xca, 0xed, 0x45,
- 0x70, 0x51, 0x82, 0x1d, 0x76, 0xe0, 0x2e, 0x84, 0x0f, 0x1d, 0x4d, 0x91,
- 0x08, 0xf0, 0x5c, 0xd4, 0xb0, 0x7b, 0x5a, 0x3e, 0xe4, 0x50, 0x82, 0x06,
- 0x25, 0x14, 0x21, 0xbe, 0x06, 0x1a, 0xac, 0xde, 0xbd, 0x06, 0x45, 0xd4,
- 0x70, 0x88, 0x2b, 0xc1, 0x24, 0x92, 0x0b, 0xfa, 0x42, 0xd4, 0x93, 0xc3,
- 0xeb, 0x1a, 0x1c, 0x32, 0xc5, 0x14, 0x62, 0x1c, 0x0f, 0x3c, 0xef, 0x2d,
- 0x45, 0x02, 0xc1, 0x02, 0x0b, 0x20, 0xc3, 0x02, 0x38, 0xc0, 0x01, 0x2f,
- 0x08, 0x10, 0x02, 0xff, 0xbb, 0x43, 0x3d, 0x96, 0x00, 0xc0, 0x05, 0xfc,
- 0x41, 0x1b, 0x5e, 0xf0, 0x02, 0x02, 0xff, 0xb7, 0x04, 0x30, 0x20, 0xf0,
- 0x0f, 0x03, 0xe4, 0x00, 0x00, 0x31, 0x58, 0xc1, 0x8e, 0x80, 0xc1, 0x0b,
- 0x0b, 0xf8, 0x1f, 0x04, 0x96, 0x00, 0x97, 0x48, 0xdc, 0x21, 0x84, 0x22,
- 0x04, 0x20, 0xef, 0xd8, 0xc0, 0x40, 0x11, 0xde, 0x41, 0x83, 0x64, 0x40,
- 0x20, 0x07, 0xea, 0xa1, 0xc1, 0xff, 0x71, 0x80, 0x0d, 0x6c, 0xd0, 0x60,
- 0x03, 0x67, 0x98, 0x9e, 0x27, 0x6c, 0x80, 0x07, 0xfe, 0x1b, 0x78, 0x01,
- 0x0f, 0x3a, 0xc0, 0x03, 0x67, 0x74, 0xe0, 0x87, 0x34, 0x48, 0x46, 0x3d,
- 0xaa, 0x70, 0x84, 0x23, 0xd2, 0xa0, 0x03, 0x47, 0x38, 0x82, 0x03, 0xa6,
- 0xe8, 0x87, 0x2a, 0xf4, 0xe1, 0x89, 0x2f, 0x58, 0x03, 0x37, 0xba, 0x51,
- 0x86, 0x17, 0xbc, 0xe0, 0x08, 0x1b, 0x78, 0x42, 0x3d, 0xa4, 0x30, 0xc6,
- 0x35, 0x08, 0x91, 0x07, 0x6b, 0xf8, 0x0b, 0x2a, 0x9e, 0xd0, 0x07, 0x4a,
- 0x3c, 0x31, 0x88, 0x33, 0xe4, 0xc8, 0x13, 0x9c, 0xd8, 0x01, 0x1a, 0xfc,
- 0x30, 0x88, 0x65, 0xa8, 0x47, 0x1f, 0x8e, 0xf8, 0x0c, 0x42, 0x48, 0x41,
- 0x0a, 0x84, 0x78, 0xc1, 0x06, 0x3a, 0xf0, 0x82, 0x3c, 0x3a, 0xa4, 0x1e,
- 0x85, 0x70, 0x00, 0x0c, 0xa6, 0x28, 0x0e, 0x07, 0x8c, 0x62, 0x8a, 0x0e,
- 0x20, 0x82, 0x0b, 0xea, 0x61, 0x06, 0x17, 0x68, 0x41, 0x91, 0x90, 0x9c,
- 0xa2, 0x16, 0xaa, 0x00, 0x0d, 0x22, 0x60, 0xd2, 0x05, 0x2d, 0x68, 0x81,
- 0x0b, 0xa6, 0x08, 0x03, 0x2d, 0xa4, 0xa3, 0x1e, 0x2d, 0x40, 0xa5, 0x27,
- 0x61, 0x40, 0x85, 0x49, 0xfe, 0x85, 0x23, 0x95, 0x74, 0x00, 0x15, 0x1c,
- 0xe0, 0x07, 0x8f, 0x14, 0xc2, 0x0f, 0x7b, 0xa0, 0xc2, 0x23, 0x1d, 0xb0,
- 0x07, 0x49, 0xd6, 0x83, 0x08, 0x7b, 0x50, 0xa4, 0x16, 0x42, 0x79, 0x49,
- 0x2a, 0x2c, 0x92, 0x08, 0xac, 0xbb, 0x89, 0x12, 0x52, 0x90, 0x01, 0x10,
- 0x5c, 0x00, 0x11, 0xce, 0x04, 0x41, 0x06, 0x52, 0xa0, 0x84, 0x10, 0xc0,
- 0x21, 0x0a, 0x21, 0xa8, 0x42, 0x17, 0x2e, 0xc0, 0xcd, 0x0b, 0x6c, 0x22,
- 0x03, 0x55, 0x88, 0x02, 0x1c, 0x94, 0xd0, 0x05, 0x69, 0x2a, 0x21, 0x0a,
- 0x51, 0xd0, 0xa6, 0x34, 0xd3, 0x11, 0x82, 0x7a, 0xc0, 0xa1, 0x1e, 0x21,
- 0xc8, 0x40, 0x1d, 0x10, 0x91, 0x01, 0xbd, 0x84, 0xc0, 0x1a, 0xed, 0xfe,
- 0xe4, 0x88, 0x12, 0x32, 0xc0, 0x4d, 0x22, 0x1c, 0xa3, 0x23, 0xd9, 0xec,
- 0x42, 0x1d, 0xb8, 0x29, 0xcd, 0x8e, 0xf0, 0xd3, 0x9b, 0x19, 0x08, 0x41,
- 0x3c, 0x2f, 0x50, 0x07, 0x67, 0xd6, 0xb3, 0x25, 0xf5, 0xf8, 0x84, 0x01,
- 0x26, 0x4a, 0xd1, 0x8a, 0x1a, 0xe0, 0x00, 0x18, 0xcd, 0xa8, 0x45, 0x33,
- 0xca, 0x51, 0x8a, 0x76, 0x74, 0xa2, 0x18, 0xfd, 0x44, 0x3d, 0xb2, 0x00,
- 0x8c, 0x1b, 0xdc, 0x80, 0x1c, 0xf5, 0xc0, 0xe8, 0x45, 0x0f, 0x30, 0xd2,
- 0x1b, 0x64, 0x61, 0x1d, 0xe1, 0xa0, 0x46, 0x16, 0x4c, 0x7a, 0x83, 0x7a,
- 0x72, 0xf4, 0x00, 0x16, 0x5d, 0x29, 0x4e, 0x2b, 0xaa, 0x52, 0x9e, 0x7a,
- 0xad, 0x1e, 0x8e, 0x08, 0x80, 0x00, 0x86, 0x4a, 0xd4, 0xa2, 0x1a, 0xf5,
- 0xa8, 0x48, 0x4d, 0xea, 0x51, 0x03, 0x50, 0x8f, 0x40, 0xe0, 0x01, 0x0f,
- 0x4e, 0xa8, 0x87, 0x51, 0x99, 0xea, 0x04, 0x40, 0x38, 0x21, 0x10, 0xb2,
- 0x08, 0x84, 0x13, 0xa0, 0x0a, 0x88, 0x7a, 0x2a, 0xf5, 0xab, 0x4b, 0x85,
- 0x04, 0x60, 0x12, 0xc2, 0x11, 0x48, 0x04, 0xe0, 0xac, 0x68, 0x4d, 0xab,
- 0x5a, 0xd7, 0xca, 0xd6, 0xb6, 0xae, 0xb5, 0x1e, 0x9c, 0x10, 0x05, 0x36,
- 0x26, 0x81, 0x8e, 0x7a, 0xbc, 0xb5, 0x09, 0xa2, 0x98, 0x47, 0x13, 0xf6,
- 0x0a, 0x0e, 0x75, 0x4c, 0xa2, 0x09, 0x9c, 0xb0, 0xab, 0x5b, 0x07, 0xcb,
- 0x56, 0x47, 0xfc, 0xf4, 0x95, 0x88, 0x4d, 0xac, 0x62, 0x39, 0x62, 0x03,
- 0x09, 0x38, 0xd6, 0x1c, 0x7f, 0x49, 0x81, 0x63, 0x27, 0x3b, 0xd9, 0x14,
- 0x2c, 0xf6, 0xb2, 0x7b, 0x39, 0x8b, 0x5d, 0x24, 0x2b, 0x01, 0x1b, 0x98,
- 0xa5, 0x1e, 0x29, 0x68, 0xec, 0x64, 0x6d, 0x60, 0x59, 0xcd, 0xf2, 0x04,
- 0xb4, 0xa4, 0x3d, 0x14, 0x47, 0x42, 0x9b, 0xda, 0x64, 0x9a, 0x16, 0x23,
- 0x7a, 0x88, 0x2d, 0x2d, 0x44, 0xc7, 0xfa, 0xda, 0xda, 0xda, 0xf6, 0xb6,
- 0xb8, 0xcd, 0xad, 0x6e, 0x77, 0xcb, 0xdb, 0xde, 0xfa, 0xf6, 0xb7, 0xc0,
- 0x0d, 0xae, 0x70, 0x87, 0x4b, 0xdc, 0xe2, 0x1a, 0xf7, 0xb8, 0xc8, 0x4d,
- 0xae, 0x72, 0x97, 0xcb, 0xdc, 0xe6, 0x3a, 0xf7, 0xb9, 0x53, 0x09, 0x08,
- 0x00, 0x3b
+unsigned char doxygen_png_data[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x6e, 0x00, 0x00, 0x00, 0x35,
+ 0x08, 0x02, 0x00, 0x00, 0x00, 0x2f, 0x70, 0x49, 0x98, 0x00, 0x00, 0x00,
+ 0x06, 0x74, 0x52, 0x4e, 0x53, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x37,
+ 0x58, 0x1b, 0x7d, 0x00, 0x00, 0x00, 0x06, 0x62, 0x4b, 0x47, 0x44, 0x00,
+ 0xff, 0x00, 0xff, 0x00, 0xe2, 0xc3, 0xbb, 0xcb, 0x4a, 0x00, 0x00, 0x08,
+ 0x33, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xed, 0x58, 0x6b, 0x6c, 0x54,
+ 0x55, 0x10, 0xde, 0xc4, 0x67, 0x34, 0x04, 0x34, 0x2a, 0x54, 0x4a, 0x77,
+ 0x31, 0x29, 0x62, 0x44, 0x25, 0xa6, 0x60, 0x2d, 0xed, 0xb6, 0xc1, 0x26,
+ 0xfa, 0xc3, 0x44, 0x25, 0x1a, 0x89, 0x34, 0xa5, 0xd1, 0x22, 0xbf, 0x30,
+ 0x21, 0x01, 0xa3, 0x89, 0xf1, 0x81, 0xb6, 0xf1, 0x07, 0xd5, 0xa4, 0xfc,
+ 0x90, 0x26, 0x46, 0x69, 0xd2, 0x1a, 0x45, 0xa5, 0x15, 0x51, 0xd0, 0x3e,
+ 0x56, 0x28, 0x5d, 0x2c, 0x8a, 0x01, 0x84, 0xd2, 0xc7, 0xb6, 0x97, 0x76,
+ 0x23, 0x3f, 0x4a, 0x42, 0x51, 0xa0, 0x4f, 0xe8, 0xf5, 0x3b, 0x33, 0xe7,
+ 0x9c, 0x3d, 0xdb, 0x6e, 0x77, 0xb7, 0xf5, 0x4a, 0xd1, 0xdc, 0xc9, 0xe4,
+ 0x66, 0x76, 0xce, 0x37, 0x33, 0xdf, 0x7c, 0xbb, 0x7b, 0x7b, 0xb7, 0x1e,
+ 0xdb, 0x35, 0x87, 0xcc, 0x33, 0xd3, 0x04, 0xfe, 0x3f, 0xe6, 0x4a, 0xe9,
+ 0x98, 0x4d, 0x59, 0x4a, 0x4f, 0x2c, 0x9b, 0xe9, 0x2d, 0xae, 0x09, 0x9b,
+ 0x8e, 0x94, 0x81, 0x40, 0xb5, 0x65, 0xfd, 0xc4, 0x8e, 0xd8, 0x95, 0x92,
+ 0x6d, 0x3a, 0x52, 0x42, 0x41, 0xdb, 0x0e, 0xb1, 0x23, 0x76, 0xa5, 0x64,
+ 0x73, 0xa5, 0x74, 0xcc, 0x5c, 0x29, 0x1d, 0x33, 0x57, 0x4a, 0xc7, 0xcc,
+ 0x95, 0xd2, 0x31, 0x73, 0xa5, 0x74, 0xcc, 0x5c, 0x29, 0x1d, 0xb3, 0x69,
+ 0x4b, 0xd9, 0xa5, 0xa4, 0xdc, 0xef, 0x4a, 0xc9, 0x36, 0x3d, 0x29, 0x0f,
+ 0xd8, 0xb6, 0x45, 0xde, 0x8d, 0xd8, 0x95, 0x92, 0x2d, 0x81, 0x0a, 0x31,
+ 0x7f, 0x26, 0x5a, 0xd6, 0x41, 0xdb, 0x3e, 0xcd, 0x8e, 0x58, 0x4b, 0xe9,
+ 0x99, 0xdc, 0x62, 0x36, 0x9c, 0x2c, 0x19, 0xff, 0x27, 0x69, 0xc2, 0x0e,
+ 0xf1, 0x7f, 0xd7, 0xc6, 0xc7, 0x78, 0x12, 0xd9, 0x74, 0xa4, 0xe4, 0xca,
+ 0x40, 0xe0, 0x0b, 0xcb, 0x0a, 0x5a, 0x56, 0x33, 0x5d, 0x65, 0x60, 0xdb,
+ 0x3d, 0xb6, 0xdd, 0xcb, 0x8e, 0x97, 0x7a, 0xff, 0x09, 0x60, 0xf6, 0x43,
+ 0x81, 0xc0, 0xce, 0x68, 0x0c, 0x00, 0xcd, 0x08, 0xc6, 0x15, 0xe2, 0x5a,
+ 0x54, 0xf4, 0x1c, 0x5e, 0xe2, 0xaa, 0x33, 0x13, 0x85, 0x50, 0x1d, 0xe4,
+ 0x69, 0x34, 0xcf, 0xa0, 0x41, 0x40, 0xd2, 0x30, 0x07, 0x45, 0x23, 0x23,
+ 0x4b, 0xe9, 0x56, 0x9a, 0xde, 0xb8, 0x95, 0xcd, 0x89, 0x53, 0x93, 0x52,
+ 0x8f, 0xb4, 0xed, 0xb0, 0x56, 0x4d, 0xb9, 0x99, 0x09, 0x43, 0x29, 0x80,
+ 0xf3, 0xf2, 0x1e, 0x05, 0x5e, 0x1d, 0x85, 0xc7, 0xc1, 0x58, 0x4d, 0xc2,
+ 0xec, 0xd4, 0x47, 0x68, 0x8e, 0x8c, 0xcf, 0x97, 0x8a, 0x2b, 0x0d, 0x8a,
+ 0x74, 0x53, 0xa3, 0x23, 0xef, 0x93, 0xc1, 0x4a, 0x77, 0x10, 0x60, 0x9e,
+ 0x8b, 0xc0, 0xe0, 0x16, 0x8e, 0x8e, 0x65, 0x4f, 0xae, 0x55, 0x83, 0x62,
+ 0x20, 0xf9, 0xfd, 0x56, 0xad, 0xc2, 0x13, 0x56, 0x0e, 0x2b, 0xd8, 0xa4,
+ 0x6a, 0x4e, 0x2a, 0xa5, 0x31, 0x35, 0x8e, 0x94, 0x72, 0x5b, 0xd2, 0xb1,
+ 0x37, 0xbe, 0x2b, 0x12, 0x51, 0x19, 0x7c, 0x00, 0xcd, 0x41, 0xdc, 0xcd,
+ 0x90, 0xa6, 0xd7, 0xfc, 0x4c, 0x7d, 0xf8, 0xe1, 0x5b, 0xd1, 0x47, 0x3b,
+ 0x8d, 0xb7, 0x21, 0xc1, 0x5c, 0xe3, 0x9d, 0x96, 0x83, 0xc6, 0x15, 0xaa,
+ 0xd1, 0xc1, 0xa4, 0x17, 0x49, 0x42, 0x4a, 0x1a, 0xfc, 0xb9, 0xbe, 0x1b,
+ 0xd2, 0x9f, 0x17, 0x71, 0x4f, 0x64, 0xd7, 0x19, 0x0e, 0xf8, 0x5e, 0x69,
+ 0x59, 0x4d, 0x06, 0x1e, 0xe0, 0x26, 0x03, 0xac, 0x3b, 0x34, 0x4d, 0xe8,
+ 0x7c, 0x3a, 0xfa, 0xb6, 0xdb, 0x54, 0x54, 0xf4, 0xac, 0xfa, 0xe8, 0x45,
+ 0x92, 0x5a, 0x4a, 0x63, 0xba, 0x98, 0x9b, 0x97, 0x97, 0x09, 0x1f, 0x77,
+ 0xe3, 0x0e, 0x87, 0x0f, 0x99, 0x24, 0x99, 0xde, 0xb8, 0xfb, 0x3b, 0x38,
+ 0xd0, 0x6d, 0xe4, 0x59, 0x93, 0xa1, 0x5a, 0xe4, 0xa0, 0x49, 0x8f, 0x09,
+ 0x4c, 0x94, 0x62, 0x0a, 0x52, 0x5a, 0xdd, 0xfc, 0xe4, 0xd8, 0x69, 0x8f,
+ 0x75, 0xe2, 0x1a, 0x08, 0x54, 0xe5, 0xe5, 0x3d, 0xe2, 0xf3, 0xcd, 0xcf,
+ 0xcf, 0xcf, 0x42, 0x2c, 0xf2, 0xca, 0xd5, 0x73, 0x25, 0x3d, 0x66, 0x8e,
+ 0x85, 0x4c, 0x30, 0xae, 0x12, 0x8c, 0xbc, 0xe8, 0x13, 0xe2, 0x23, 0xf1,
+ 0x2c, 0x35, 0xd6, 0x69, 0x36, 0xa1, 0x5a, 0x51, 0x88, 0xef, 0x3b, 0xdd,
+ 0x2e, 0x32, 0xd5, 0xa3, 0x2b, 0x4d, 0x6f, 0xac, 0x22, 0x7d, 0xab, 0x44,
+ 0x15, 0xf5, 0x11, 0xad, 0x1a, 0xab, 0xa9, 0x7f, 0xb5, 0x2a, 0x17, 0xcd,
+ 0x41, 0x6f, 0xe9, 0xd2, 0xfb, 0xf2, 0xf3, 0x57, 0x74, 0xab, 0x72, 0xa6,
+ 0x27, 0x6b, 0x8d, 0x07, 0x61, 0x95, 0x0c, 0xe9, 0x29, 0x58, 0x19, 0x49,
+ 0x2a, 0xec, 0x94, 0x9c, 0x69, 0x97, 0xa2, 0xa2, 0x55, 0x96, 0x4e, 0x46,
+ 0xad, 0x9c, 0x48, 0x4a, 0x80, 0x1a, 0x1b, 0x3e, 0x19, 0xbb, 0xfc, 0xbb,
+ 0xf6, 0xee, 0xd0, 0x0f, 0x79, 0xb9, 0xcb, 0x90, 0xbf, 0xfe, 0xfa, 0xeb,
+ 0xe6, 0xcc, 0x99, 0x95, 0xff, 0x58, 0x26, 0x32, 0xb6, 0x71, 0x8a, 0x23,
+ 0x8a, 0x4f, 0x98, 0x60, 0x36, 0xc4, 0xc8, 0xe8, 0x56, 0x16, 0x81, 0x1b,
+ 0x1b, 0x65, 0x7f, 0xdb, 0x98, 0x82, 0xa1, 0x66, 0x21, 0x71, 0x38, 0xa1,
+ 0x47, 0x14, 0xad, 0x7d, 0x4a, 0x0e, 0xbd, 0x12, 0x99, 0xe2, 0xf3, 0xdd,
+ 0xad, 0x9b, 0x23, 0x78, 0xe2, 0xf1, 0x6c, 0x26, 0x89, 0x77, 0xb1, 0x61,
+ 0xef, 0x07, 0x36, 0xf5, 0x67, 0x7a, 0x0c, 0xb3, 0x23, 0xdd, 0x9e, 0xd6,
+ 0x1c, 0x34, 0xed, 0x40, 0xc3, 0x27, 0x0a, 0x79, 0x82, 0x93, 0x96, 0x9a,
+ 0x62, 0x19, 0xe5, 0x7a, 0xe5, 0xa4, 0xa4, 0xec, 0xea, 0xa8, 0xb9, 0x32,
+ 0xd4, 0x72, 0x65, 0xe8, 0x67, 0x71, 0x1d, 0x6e, 0xe9, 0x6a, 0xaf, 0xf5,
+ 0x79, 0x53, 0x78, 0x43, 0x41, 0xd4, 0x9b, 0x82, 0x0c, 0x1f, 0x01, 0x83,
+ 0x18, 0x79, 0x06, 0x8f, 0xd1, 0x4b, 0x0d, 0x86, 0x09, 0x70, 0x47, 0xcd,
+ 0x98, 0xec, 0x86, 0xd3, 0x1a, 0x24, 0x73, 0xfd, 0x0f, 0x53, 0x07, 0x2a,
+ 0x11, 0x4d, 0x5a, 0xba, 0xdb, 0x6b, 0x8b, 0x0a, 0x9f, 0x34, 0x9f, 0x39,
+ 0x14, 0x46, 0x4d, 0xe9, 0xa8, 0xd5, 0x7c, 0xae, 0x0c, 0xff, 0xdc, 0x58,
+ 0xf7, 0x11, 0xc3, 0x74, 0xfe, 0x8f, 0xde, 0xef, 0xd7, 0x16, 0x3e, 0x89,
+ 0x77, 0x9a, 0x87, 0x42, 0x4a, 0xce, 0xf3, 0xda, 0x02, 0x46, 0x85, 0xb4,
+ 0x57, 0x4b, 0xa4, 0xf3, 0xb0, 0xe0, 0xdc, 0xf8, 0xe3, 0x47, 0x18, 0x27,
+ 0x1b, 0x46, 0x8e, 0x30, 0xb4, 0x06, 0xad, 0xe4, 0xbe, 0x84, 0xe4, 0x9e,
+ 0xe8, 0x36, 0x05, 0x29, 0x2f, 0x5f, 0xaa, 0x17, 0x7e, 0xb1, 0x01, 0x1e,
+ 0x3a, 0x59, 0xe5, 0xf3, 0xce, 0xd3, 0x4b, 0x7a, 0xbd, 0xf3, 0x42, 0x27,
+ 0xab, 0xe9, 0x08, 0x80, 0x7a, 0xc4, 0x48, 0x52, 0xcc, 0xe0, 0x6a, 0x80,
+ 0xa1, 0xb8, 0xd2, 0x1d, 0xe0, 0x2a, 0x46, 0x0a, 0x70, 0xab, 0xf8, 0xaa,
+ 0xe6, 0xe6, 0x3c, 0x44, 0x1d, 0xa8, 0x44, 0x0c, 0x12, 0xad, 0xb0, 0xbc,
+ 0x39, 0x05, 0x31, 0x32, 0xa3, 0x1a, 0x23, 0xc7, 0x89, 0x18, 0x4d, 0xd0,
+ 0x81, 0x61, 0x0d, 0xfb, 0xca, 0x14, 0xa0, 0xfe, 0x48, 0xb0, 0x62, 0x6d,
+ 0xc1, 0xe3, 0x8b, 0x17, 0x2d, 0x30, 0xfb, 0xf3, 0xda, 0x82, 0xc3, 0xa5,
+ 0xa8, 0x71, 0xdc, 0x10, 0xb0, 0x86, 0xbd, 0x65, 0xa8, 0xd2, 0xa3, 0x89,
+ 0xad, 0x5e, 0x4d, 0x2c, 0x1e, 0x59, 0x41, 0x14, 0x4a, 0x41, 0x92, 0x95,
+ 0x12, 0xfc, 0x46, 0xcf, 0xd7, 0xc0, 0x47, 0xc8, 0x3b, 0x8f, 0x57, 0xe4,
+ 0x66, 0x2f, 0x89, 0x7c, 0x5e, 0xb2, 0x97, 0x84, 0x8e, 0x57, 0x8c, 0xf6,
+ 0x8b, 0xa3, 0x51, 0x3a, 0x45, 0x52, 0x80, 0xfb, 0x85, 0xe3, 0xe8, 0xb1,
+ 0xbc, 0x87, 0xe6, 0xcd, 0x9d, 0x73, 0xf3, 0x4d, 0x37, 0xcc, 0x99, 0x7d,
+ 0x2b, 0x62, 0x64, 0x90, 0x07, 0x1e, 0x98, 0xba, 0x3d, 0x5b, 0x50, 0x5e,
+ 0xf7, 0xed, 0x16, 0x06, 0x73, 0x72, 0xb4, 0x7f, 0xd7, 0xe8, 0x84, 0x29,
+ 0x6a, 0xd0, 0xf6, 0xd1, 0xf3, 0xbb, 0x88, 0xcc, 0x2e, 0x8d, 0xaf, 0xdf,
+ 0xf3, 0xae, 0x89, 0xa9, 0xdb, 0xf3, 0xae, 0xa4, 0xda, 0x5f, 0x13, 0x6e,
+ 0xff, 0x14, 0x7d, 0x42, 0xc7, 0xb6, 0xeb, 0xce, 0xbc, 0x76, 0xfd, 0x9e,
+ 0x2d, 0xbc, 0x91, 0xcc, 0xd3, 0x38, 0xf4, 0x29, 0x7c, 0x61, 0x25, 0x1c,
+ 0x1d, 0xe0, 0x3c, 0x3d, 0x74, 0x0c, 0x6c, 0xc5, 0x2c, 0x5a, 0x7c, 0xbb,
+ 0x37, 0xed, 0x2e, 0x38, 0x1a, 0x8e, 0x80, 0x00, 0x53, 0x45, 0x4f, 0x5a,
+ 0x39, 0xd9, 0x3f, 0x3b, 0x1d, 0xbf, 0x6d, 0x1d, 0xe9, 0xdb, 0x31, 0x7c,
+ 0x96, 0xbc, 0xaf, 0xb2, 0xae, 0xf6, 0xb5, 0xdc, 0x15, 0x8b, 0xbd, 0x0b,
+ 0xee, 0xf0, 0xaf, 0x58, 0x8c, 0x78, 0xf8, 0x6c, 0xe5, 0x30, 0x9f, 0xf6,
+ 0xed, 0xe8, 0xf8, 0xad, 0x0c, 0xf8, 0xce, 0x23, 0x65, 0x80, 0x09, 0x3f,
+ 0x5b, 0x79, 0x60, 0xef, 0x9b, 0x2f, 0x16, 0xe4, 0xde, 0x9b, 0x9e, 0xb2,
+ 0xd2, 0x7f, 0x3f, 0x81, 0x77, 0x8c, 0xc0, 0xfb, 0x2a, 0x81, 0xc9, 0x55,
+ 0xe5, 0x23, 0xc2, 0x45, 0x07, 0xe4, 0x47, 0xa8, 0x0a, 0xad, 0x70, 0x84,
+ 0xfe, 0x91, 0x8f, 0xff, 0x82, 0x3b, 0xea, 0x6a, 0x5f, 0xe7, 0x9e, 0x23,
+ 0x44, 0x43, 0x8f, 0x33, 0x0d, 0x25, 0x48, 0x12, 0xd5, 0x4a, 0x9a, 0xc5,
+ 0xcd, 0xa9, 0xe7, 0xd9, 0x4a, 0x5e, 0x5b, 0x61, 0x28, 0xdf, 0x57, 0xd9,
+ 0x71, 0xa4, 0xac, 0x70, 0x75, 0x76, 0xe1, 0xea, 0x1c, 0xf4, 0xef, 0x38,
+ 0xb2, 0x95, 0xf3, 0x98, 0x4e, 0x8b, 0x97, 0xa9, 0xc5, 0x05, 0x0c, 0x1c,
+ 0xe0, 0x50, 0x83, 0xb7, 0x60, 0x32, 0xcc, 0x21, 0x59, 0x29, 0x7f, 0xfc,
+ 0x6a, 0xc3, 0xd0, 0x99, 0xf2, 0xa1, 0x33, 0xdb, 0xe0, 0x83, 0x74, 0x6d,
+ 0x6f, 0x79, 0x87, 0xfc, 0x6d, 0x7e, 0x49, 0xa7, 0x02, 0xd0, 0xd6, 0xf2,
+ 0x0e, 0xe1, 0x5f, 0x19, 0x92, 0x79, 0xe0, 0xcb, 0x7b, 0x8e, 0xbe, 0x07,
+ 0x24, 0x5c, 0xc1, 0x04, 0x12, 0x18, 0x7f, 0x56, 0x3a, 0xbf, 0x1c, 0xa4,
+ 0x0c, 0xf7, 0xd4, 0x55, 0x1a, 0x13, 0x91, 0x29, 0x2b, 0x9d, 0x9a, 0x6c,
+ 0x53, 0x64, 0xca, 0x01, 0x98, 0xf8, 0x63, 0x0e, 0x6c, 0xdb, 0x64, 0x9f,
+ 0x72, 0x8d, 0xe4, 0xb6, 0xbc, 0xb6, 0x77, 0xc1, 0xed, 0x8a, 0xa1, 0x3c,
+ 0x6d, 0x53, 0xa3, 0x07, 0x55, 0x55, 0x3b, 0x2d, 0xd2, 0x1e, 0xe9, 0x23,
+ 0xe8, 0xa1, 0x10, 0xae, 0x49, 0x0e, 0x29, 0x29, 0x92, 0x95, 0x92, 0xd5,
+ 0xfc, 0xe1, 0x8b, 0xe2, 0x81, 0xde, 0xd2, 0xc1, 0xde, 0x52, 0xba, 0x96,
+ 0x20, 0x18, 0xec, 0xa1, 0x97, 0x3d, 0x25, 0x08, 0xf8, 0x68, 0xb0, 0xa7,
+ 0xa4, 0xad, 0x79, 0x13, 0xc0, 0x6b, 0x9e, 0x59, 0x34, 0xd0, 0x53, 0x2a,
+ 0xf3, 0x0c, 0x20, 0xbf, 0x14, 0x7a, 0x95, 0xbd, 0xf5, 0xa7, 0x97, 0x81,
+ 0x69, 0x0b, 0x6e, 0xe6, 0x53, 0x34, 0x3c, 0xd5, 0xbc, 0xd9, 0xff, 0xe8,
+ 0x42, 0x7f, 0xe6, 0xc2, 0x53, 0x48, 0x8a, 0xfe, 0x25, 0x03, 0x54, 0x8e,
+ 0xb9, 0x62, 0xf9, 0xd4, 0xdb, 0xf8, 0x0a, 0x98, 0x9c, 0xde, 0x5b, 0x8a,
+ 0xd8, 0x33, 0x89, 0xf9, 0x33, 0xef, 0x41, 0x21, 0xfa, 0xb7, 0x35, 0xcb,
+ 0x11, 0x4c, 0x9b, 0xd7, 0x66, 0x03, 0xc0, 0x64, 0x88, 0xab, 0xb9, 0x20,
+ 0x68, 0x00, 0x43, 0x0c, 0x45, 0x66, 0x40, 0x64, 0x36, 0x81, 0x80, 0xe0,
+ 0x10, 0xdc, 0x24, 0xe8, 0x49, 0x05, 0x24, 0x32, 0x59, 0x29, 0x59, 0xcd,
+ 0x7d, 0x9f, 0xad, 0x26, 0x21, 0x36, 0xb3, 0x1c, 0x03, 0x5d, 0x74, 0x55,
+ 0xea, 0x90, 0x40, 0xeb, 0xf7, 0x55, 0xaf, 0x06, 0x32, 0xe7, 0x91, 0x34,
+ 0x04, 0xad, 0xfb, 0xd7, 0x9b, 0xf8, 0x08, 0x6c, 0xff, 0x7a, 0xe8, 0x38,
+ 0x7b, 0xd6, 0x8d, 0xc0, 0x6b, 0x00, 0xf0, 0xde, 0xd4, 0xd9, 0x70, 0x04,
+ 0x0a, 0xb9, 0x19, 0xc8, 0x6d, 0x6f, 0x2c, 0x26, 0x11, 0x67, 0xf3, 0x35,
+ 0x52, 0xd2, 0xf5, 0x2a, 0xcf, 0x8a, 0x6f, 0xcc, 0x44, 0x94, 0x74, 0xc9,
+ 0xb7, 0xd0, 0x3c, 0xc5, 0x46, 0xc8, 0x0c, 0x50, 0x37, 0xbd, 0x08, 0x5e,
+ 0xea, 0x45, 0x10, 0x0c, 0x48, 0xfe, 0x82, 0x0c, 0x33, 0x94, 0x7b, 0x75,
+ 0x49, 0xe6, 0xc0, 0x4c, 0x59, 0xca, 0x82, 0x67, 0x16, 0xed, 0x2e, 0x5f,
+ 0x78, 0xb2, 0xee, 0xf9, 0x8b, 0xad, 0xc5, 0x17, 0x5a, 0x8b, 0x2f, 0x9e,
+ 0x2a, 0x96, 0x41, 0x6b, 0x31, 0x92, 0x38, 0x02, 0x20, 0x67, 0x79, 0x8a,
+ 0x77, 0xfe, 0xac, 0xb4, 0xf9, 0xb3, 0x10, 0x40, 0xaf, 0x93, 0xf5, 0xcf,
+ 0x5f, 0x20, 0x8c, 0xf4, 0x53, 0x02, 0x89, 0x3c, 0x00, 0x80, 0x15, 0x10,
+ 0x80, 0xcb, 0x0b, 0x28, 0x09, 0x5f, 0x63, 0x24, 0xa1, 0x23, 0xfa, 0x08,
+ 0x11, 0xe7, 0x8b, 0xc7, 0x1a, 0xc4, 0x34, 0x7d, 0xdd, 0x45, 0xea, 0x13,
+ 0x5b, 0xbb, 0xe5, 0x29, 0xdb, 0x4b, 0xfd, 0x5c, 0xc5, 0x26, 0xa6, 0xd4,
+ 0x49, 0x1a, 0x58, 0x7b, 0xe3, 0x4b, 0x0f, 0x9a, 0x60, 0x35, 0x6e, 0xdd,
+ 0x05, 0x63, 0x17, 0x0d, 0xd0, 0x85, 0xcc, 0x1c, 0x78, 0xe6, 0x40, 0xc8,
+ 0x75, 0xbc, 0x3e, 0xe3, 0x93, 0xbd, 0x57, 0xc2, 0x02, 0x15, 0x15, 0xf6,
+ 0xaf, 0xbf, 0xc6, 0x77, 0x6b, 0xf7, 0xee, 0x71, 0x9e, 0x10, 0x60, 0x62,
+ 0xe2, 0x24, 0x31, 0x1d, 0x1c, 0xbe, 0xfb, 0x38, 0xe7, 0xcf, 0xa3, 0xab,
+ 0xfe, 0x22, 0xff, 0xee, 0x63, 0x3f, 0x32, 0x1a, 0xcc, 0x01, 0x63, 0xe8,
+ 0x34, 0x27, 0x3b, 0xe3, 0xce, 0xb4, 0xbb, 0x6f, 0xc9, 0xc9, 0xb8, 0x93,
+ 0x33, 0xec, 0xbc, 0x76, 0x7c, 0x92, 0x26, 0x93, 0x98, 0xf9, 0x89, 0xc9,
+ 0x64, 0x1f, 0x86, 0x36, 0xce, 0x9d, 0xfb, 0xa9, 0xcf, 0xf7, 0x7d, 0x7a,
+ 0xfa, 0x0c, 0x3a, 0x08, 0x80, 0xc9, 0xf1, 0xdd, 0x59, 0xe7, 0x7f, 0x59,
+ 0x29, 0xfc, 0xf0, 0x4a, 0xbc, 0x8c, 0x89, 0xc1, 0xd1, 0x9f, 0x87, 0x05,
+ 0x00, 0xe0, 0xe3, 0xdf, 0x64, 0x89, 0x92, 0xc3, 0xb2, 0x04, 0x79, 0x96,
+ 0xd2, 0x59, 0x62, 0xef, 0xa7, 0xa6, 0xf2, 0xa7, 0x2d, 0xb1, 0x94, 0x30,
+ 0xa0, 0x51, 0x33, 0x83, 0x0e, 0x0e, 0xc7, 0xbe, 0x7e, 0xa0, 0x3f, 0xb8,
+ 0xec, 0x5c, 0x73, 0x46, 0x7f, 0x73, 0xc6, 0xd1, 0xaf, 0xc5, 0x97, 0x34,
+ 0x26, 0xac, 0x3f, 0x98, 0x01, 0x58, 0x7f, 0xf3, 0x32, 0x0a, 0x84, 0x9f,
+ 0x43, 0x55, 0x50, 0x54, 0x21, 0x46, 0x93, 0x98, 0x85, 0xff, 0xd0, 0xf1,
+ 0x69, 0x4b, 0x2c, 0xa5, 0x9d, 0xc4, 0x7f, 0x92, 0xaf, 0x8e, 0x1d, 0xfd,
+ 0x72, 0xd1, 0xb9, 0xa6, 0x25, 0xec, 0x25, 0x1b, 0x52, 0x26, 0x83, 0xe1,
+ 0x96, 0xad, 0x61, 0xe3, 0x1c, 0x47, 0xff, 0x2a, 0xc3, 0x64, 0xff, 0xec,
+ 0xcc, 0xac, 0x99, 0x1a, 0x41, 0x53, 0x8f, 0xc7, 0x13, 0x1f, 0x69, 0xea,
+ 0xce, 0x25, 0xac, 0xe3, 0x55, 0xe5, 0x3c, 0xd3, 0xa2, 0x4d, 0xce, 0x4c,
+ 0x69, 0x94, 0x50, 0x14, 0xfd, 0xf1, 0x04, 0x58, 0xe3, 0xaf, 0xb2, 0x8e,
+ 0xf6, 0xb5, 0x2c, 0x25, 0x2c, 0x6d, 0xde, 0x8d, 0xec, 0x49, 0x6d, 0x32,
+ 0xf9, 0x57, 0xef, 0xea, 0xd8, 0x35, 0x2d, 0xe5, 0x7f, 0xcb, 0x5c, 0x29,
+ 0x1d, 0x33, 0x57, 0x4a, 0xc7, 0xcc, 0x95, 0xd2, 0x31, 0x73, 0xa5, 0x74,
+ 0xcc, 0x5c, 0x29, 0x1d, 0x33, 0x57, 0x4a, 0xc7, 0xcc, 0x95, 0xd2, 0x31,
+ 0x73, 0xa5, 0x74, 0xcc, 0x5c, 0x29, 0x1d, 0x33, 0x57, 0x4a, 0xc7, 0xcc,
+ 0x95, 0xd2, 0x31, 0x73, 0xa5, 0x74, 0xcc, 0x5c, 0x29, 0x1d, 0x33, 0x57,
+ 0x4a, 0xc7, 0xcc, 0x95, 0xd2, 0x31, 0x73, 0xa5, 0x74, 0xcc, 0xfe, 0x06,
+ 0xbe, 0x63, 0xe9, 0x2a, 0x3a, 0x4d, 0xca, 0xc2, 0x00, 0x00, 0x00, 0x43,
+ 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65,
+ 0x00, 0x40, 0x28, 0x23, 0x29, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4d, 0x61,
+ 0x67, 0x69, 0x63, 0x6b, 0x20, 0x34, 0x2e, 0x32, 0x2e, 0x37, 0x20, 0x39,
+ 0x39, 0x2f, 0x30, 0x37, 0x2f, 0x30, 0x31, 0x20, 0x63, 0x72, 0x69, 0x73,
+ 0x74, 0x79, 0x40, 0x6d, 0x79, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x65, 0x73,
+ 0x2e, 0x64, 0x75, 0x70, 0x6f, 0x6e, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x6b,
+ 0x02, 0x00, 0xc3, 0x00, 0x00, 0x00, 0x2a, 0x74, 0x45, 0x58, 0x74, 0x53,
+ 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x00, 0x35, 0x34, 0x36,
+ 0x33, 0x61, 0x37, 0x38, 0x35, 0x62, 0x62, 0x31, 0x31, 0x64, 0x33, 0x36,
+ 0x37, 0x30, 0x32, 0x32, 0x37, 0x30, 0x31, 0x63, 0x37, 0x37, 0x65, 0x62,
+ 0x65, 0x38, 0x31, 0x61, 0x62, 0x12, 0xbe, 0x63, 0xf7, 0x00, 0x00, 0x00,
+ 0x0f, 0x74, 0x45, 0x58, 0x74, 0x50, 0x61, 0x67, 0x65, 0x00, 0x31, 0x31,
+ 0x30, 0x78, 0x35, 0x33, 0x2b, 0x30, 0x2b, 0x30, 0xbb, 0x45, 0xd1, 0x42,
+ 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-const unsigned int logo_len = 2378;
+unsigned int doxygen_png_len = 2352;
-unsigned char search_data[] = {
- 0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x78, 0x00, 0x1a, 0x00, 0xe7, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x01, 0x4c, 0x01, 0x01, 0x4c, 0x00,
- 0x02, 0x4c, 0x01, 0x02, 0x4c, 0x02, 0x01, 0x63, 0x01, 0x02, 0x63, 0x02,
- 0x02, 0x63, 0x01, 0x04, 0x63, 0x02, 0x04, 0x63, 0x04, 0x04, 0x63, 0x04,
- 0x07, 0x72, 0x02, 0x04, 0x72, 0x04, 0x04, 0x72, 0x04, 0x07, 0x72, 0x07,
- 0x07, 0x72, 0x04, 0x09, 0x72, 0x07, 0x09, 0x7d, 0x07, 0x09, 0x7d, 0x09,
- 0x09, 0x7d, 0x09, 0x0d, 0x87, 0x09, 0x0d, 0x87, 0x09, 0x11, 0x87, 0x0d,
- 0x11, 0x90, 0x0d, 0x11, 0x90, 0x0d, 0x15, 0x90, 0x11, 0x15, 0x9a, 0x11,
- 0x15, 0x9a, 0x11, 0x1a, 0x9a, 0x15, 0x1a, 0xa2, 0x15, 0x1a, 0xa2, 0x15,
- 0x20, 0xa2, 0x1a, 0x20, 0xa9, 0x1a, 0x20, 0xa9, 0x1a, 0x26, 0xa0, 0x20,
- 0x28, 0xa0, 0x24, 0x28, 0xa7, 0x2f, 0x37, 0xa7, 0x32, 0x37, 0xb0, 0x20,
- 0x26, 0xb0, 0x20, 0x2d, 0xb7, 0x26, 0x2d, 0xbd, 0x2d, 0x2d, 0xb7, 0x26,
- 0x34, 0xb2, 0x29, 0x36, 0xb7, 0x2d, 0x34, 0xbd, 0x2d, 0x34, 0xb5, 0x32,
- 0x3c, 0xad, 0x3e, 0x45, 0x8e, 0x43, 0x3b, 0xad, 0x41, 0x45, 0xbf, 0x43,
- 0x4e, 0xb3, 0x4d, 0x53, 0xb3, 0x53, 0x4f, 0xb3, 0x50, 0x53, 0xba, 0x5e,
- 0x62, 0xb8, 0x71, 0x5f, 0xc3, 0x34, 0x3b, 0xc9, 0x3b, 0x44, 0xc9, 0x3b,
- 0x4d, 0xc9, 0x44, 0x4d, 0xcf, 0x44, 0x56, 0xcf, 0x4d, 0x56, 0xd5, 0x4d,
- 0x5f, 0xd5, 0x56, 0x5f, 0xcc, 0x54, 0x61, 0xda, 0x56, 0x6b, 0xda, 0x5f,
- 0x6b, 0xdf, 0x5f, 0x6b, 0xc0, 0x6b, 0x70, 0xc0, 0x6d, 0x70, 0xcd, 0x7f,
- 0x6a, 0xc6, 0x7a, 0x7f, 0xc6, 0x7c, 0x7f, 0xd7, 0x64, 0x72, 0xd6, 0x66,
- 0x72, 0xd7, 0x6f, 0x72, 0xd7, 0x6d, 0x79, 0xd6, 0x71, 0x71, 0xe5, 0x6b,
- 0x75, 0xe5, 0x75, 0x75, 0xe9, 0x75, 0x8c, 0xcd, 0x81, 0x6e, 0xcd, 0x85,
- 0x72, 0xcd, 0x88, 0x8d, 0xcd, 0x8a, 0x8d, 0xd3, 0x98, 0x9a, 0xd9, 0xa7,
- 0xa9, 0xdc, 0xaa, 0xa0, 0xdf, 0xb6, 0xb7, 0xee, 0x80, 0x8c, 0xe5, 0x8b,
- 0x92, 0xee, 0x8c, 0x9a, 0xf2, 0x8c, 0x9a, 0xea, 0x8c, 0xa0, 0xec, 0x99,
- 0xa3, 0xf7, 0x9a, 0xb4, 0xe1, 0xac, 0xa3, 0xea, 0xae, 0xa0, 0xef, 0xae,
- 0xb1, 0xe6, 0xb5, 0xac, 0xf7, 0xa6, 0xb4, 0xfc, 0xa6, 0xc1, 0xfa, 0xaf,
- 0xc0, 0xf3, 0xc1, 0xb3, 0xf2, 0xd6, 0xac, 0xff, 0xff, 0xa3, 0xe6, 0xc4,
- 0xc6, 0xec, 0xd2, 0xd0, 0xec, 0xd3, 0xd4, 0xf6, 0xcd, 0xc9, 0xfb, 0xc5,
- 0xd1, 0xfb, 0xc9, 0xd4, 0xf2, 0xd6, 0xd3, 0xf7, 0xd3, 0xd2, 0xf5, 0xd0,
- 0xd7, 0xf3, 0xdc, 0xdc, 0xf9, 0xd4, 0xd7, 0xfa, 0xd1, 0xd8, 0xfa, 0xd6,
- 0xda, 0xf9, 0xda, 0xd5, 0xf9, 0xdf, 0xe1, 0xfc, 0xde, 0xe0, 0xff, 0xff,
- 0xcb, 0xff, 0xff, 0xcc, 0xf2, 0xe2, 0xe2, 0xfa, 0xe5, 0xe8, 0xfe, 0xed,
- 0xe9, 0xfe, 0xef, 0xf0, 0xf9, 0xf0, 0xf1, 0xfd, 0xf0, 0xf1, 0xff, 0xf4,
- 0xf0, 0xff, 0xf6, 0xf2, 0xff, 0xf8, 0xf8, 0xff, 0xfa, 0xf8, 0xff, 0xfb,
- 0xfa, 0xff, 0xfb, 0xfb, 0xff, 0xfd, 0xfa, 0xff, 0xfd, 0xfd, 0xff, 0xff,
- 0xfd, 0xff, 0xff, 0xff, 0x00, 0xcc, 0x22, 0x00, 0xcc, 0x55, 0x00, 0xcc,
- 0x99, 0x00, 0xcc, 0xcc, 0x00, 0xaa, 0xcc, 0x00, 0x66, 0xcc, 0x00, 0x33,
- 0xcc, 0x00, 0x00, 0xcc, 0x11, 0x00, 0xcc, 0x44, 0x00, 0xcc, 0x55, 0x00,
- 0xcc, 0x88, 0x00, 0xcc, 0xbb, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00,
- 0xbb, 0xcc, 0x00, 0x88, 0xcc, 0x00, 0x66, 0xcc, 0x00, 0x44, 0xcc, 0x00,
- 0x22, 0x99, 0x00, 0x00, 0x99, 0x11, 0x00, 0x99, 0x33, 0x00, 0x99, 0x44,
- 0x00, 0x99, 0x66, 0x00, 0x99, 0x88, 0x00, 0x99, 0x99, 0x00, 0x88, 0x99,
- 0x00, 0x66, 0x99, 0x00, 0x55, 0x99, 0x00, 0x33, 0x99, 0x00, 0x11, 0x99,
- 0x00, 0x00, 0x99, 0x00, 0x00, 0x99, 0x11, 0x00, 0x99, 0x44, 0x00, 0x99,
- 0x77, 0x00, 0x99, 0x99, 0x00, 0x77, 0x99, 0x00, 0x55, 0x99, 0x00, 0x22,
- 0x99, 0x00, 0x00, 0x99, 0x11, 0x00, 0x99, 0x33, 0x00, 0x99, 0x44, 0x00,
- 0x99, 0x66, 0x00, 0x99, 0x88, 0x00, 0x99, 0x99, 0x00, 0x99, 0x99, 0x00,
- 0x88, 0x99, 0x00, 0x66, 0x99, 0x00, 0x55, 0x99, 0x00, 0x33, 0x99, 0x00,
- 0x11, 0x66, 0x00, 0x00, 0x66, 0x11, 0x00, 0x66, 0x22, 0x00, 0x66, 0x33,
- 0x00, 0x66, 0x44, 0x00, 0x66, 0x55, 0x00, 0x66, 0x66, 0x00, 0x55, 0x66,
- 0x00, 0x44, 0x66, 0x00, 0x33, 0x66, 0x00, 0x22, 0x66, 0x00, 0x11, 0x66,
- 0x00, 0x00, 0x66, 0x00, 0x00, 0x66, 0x11, 0x00, 0x66, 0x22, 0x00, 0x66,
- 0x44, 0x00, 0x66, 0x66, 0x00, 0x55, 0x66, 0x00, 0x33, 0x66, 0x00, 0x11,
- 0x66, 0x00, 0x00, 0x66, 0x11, 0x00, 0x66, 0x22, 0x00, 0x66, 0x33, 0x00,
- 0x66, 0x44, 0x00, 0x66, 0x55, 0x00, 0x66, 0x66, 0x00, 0x66, 0x66, 0x00,
- 0x55, 0x66, 0x00, 0x44, 0x66, 0x00, 0x33, 0x66, 0x00, 0x22, 0x66, 0x00,
- 0x11, 0x33, 0x00, 0x00, 0x33, 0x00, 0x00, 0x33, 0x11, 0x00, 0x33, 0x11,
- 0x00, 0x33, 0x22, 0x00, 0x33, 0x22, 0x00, 0x33, 0x33, 0x00, 0x33, 0x33,
- 0x00, 0x22, 0x33, 0x00, 0x11, 0x33, 0x00, 0x11, 0x33, 0x00, 0x00, 0x33,
- 0x00, 0x00, 0x33, 0x00, 0x00, 0x33, 0x00, 0x00, 0x33, 0x11, 0x00, 0x33,
- 0x22, 0x00, 0x33, 0x33, 0x00, 0x22, 0x33, 0x00, 0x11, 0x33, 0x00, 0x00,
- 0x33, 0x00, 0x00, 0x33, 0x00, 0x00, 0x33, 0x11, 0x00, 0x33, 0x11, 0x00,
- 0x33, 0x22, 0x00, 0x33, 0x22, 0x00, 0x33, 0x33, 0x00, 0x33, 0x33, 0x00,
- 0x22, 0x33, 0x00, 0x22, 0x33, 0x00, 0x11, 0x33, 0x00, 0x11, 0x33, 0x00,
- 0x00, 0x21, 0xf9, 0x04, 0x09, 0x01, 0x00, 0x7c, 0x00, 0x2c, 0x00, 0x00,
- 0x00, 0x00, 0x78, 0x00, 0x1a, 0x00, 0x00, 0x08, 0xff, 0x00, 0xf9, 0x08,
- 0x1c, 0x48, 0xb0, 0xa0, 0xc1, 0x83, 0x08, 0x13, 0x2a, 0x5c, 0xc8, 0xb0,
- 0xa1, 0xc3, 0x87, 0x08, 0xd3, 0xa0, 0x21, 0x43, 0xe6, 0xcb, 0x17, 0x22,
- 0x42, 0x80, 0x68, 0xdc, 0xc8, 0xb1, 0xa3, 0xc7, 0x8f, 0x20, 0x43, 0x8a,
- 0x1c, 0x49, 0x52, 0xa4, 0x8f, 0x1d, 0x2e, 0x50, 0x70, 0x90, 0x20, 0x01,
- 0x07, 0x96, 0x34, 0x0c, 0x25, 0xa2, 0x59, 0x43, 0x73, 0xcc, 0x17, 0x33,
- 0x5d, 0xb4, 0x68, 0xe1, 0xc2, 0xb3, 0xa7, 0xcf, 0x9f, 0x40, 0x83, 0x0a,
- 0x1d, 0x4a, 0xb4, 0xa8, 0x51, 0xa1, 0x51, 0x9e, 0xf8, 0x70, 0x71, 0x02,
- 0xc4, 0x06, 0x96, 0x37, 0xb0, 0x28, 0x9c, 0xc8, 0xa6, 0x8f, 0x9f, 0x3c,
- 0x6e, 0xc6, 0x68, 0x11, 0xf2, 0xc3, 0x87, 0xd7, 0xaf, 0x60, 0xc3, 0x8a,
- 0x1d, 0x4b, 0xb6, 0xac, 0xd9, 0xb3, 0x68, 0xcd, 0xf6, 0xe0, 0x91, 0x23,
- 0x85, 0x08, 0x0f, 0x1b, 0x34, 0x48, 0x70, 0x50, 0x43, 0xea, 0x1e, 0x83,
- 0x13, 0xf1, 0xf8, 0xa1, 0xb3, 0xe6, 0x8b, 0x93, 0x20, 0x30, 0x3e, 0x08,
- 0x1e, 0x4c, 0xb8, 0xb0, 0xe1, 0xc3, 0x88, 0x13, 0x2b, 0x5e, 0xcc, 0xb8,
- 0xf1, 0x60, 0x10, 0x70, 0x33, 0x5c, 0x90, 0xc0, 0xa0, 0x2e, 0x5e, 0x32,
- 0x74, 0xfc, 0xac, 0xd9, 0xb2, 0x64, 0x06, 0x8b, 0x11, 0x20, 0x3a, 0x88,
- 0x1e, 0xdd, 0x81, 0x84, 0x8d, 0xd3, 0x36, 0x48, 0xab, 0x5e, 0xcd, 0xba,
- 0xb5, 0xeb, 0xd7, 0xac, 0x4d, 0xa0, 0x36, 0x01, 0xbb, 0x36, 0x07, 0x0d,
- 0x18, 0x2a, 0xb0, 0xac, 0x41, 0x86, 0xa0, 0xc4, 0x3c, 0x7e, 0xd0, 0x38,
- 0x81, 0x41, 0x22, 0x34, 0x6b, 0x23, 0x6d, 0x18, 0x29, 0x57, 0x1e, 0xc8,
- 0x0a, 0xe9, 0x2b, 0xcb, 0xa3, 0x47, 0x97, 0xa1, 0x3a, 0x49, 0xf4, 0x35,
- 0xab, 0xa1, 0x4b, 0x5f, 0xde, 0x27, 0x89, 0x6a, 0x12, 0x55, 0xfa, 0x48,
- 0xff, 0xef, 0x43, 0x7d, 0xb4, 0x78, 0xe5, 0xce, 0x47, 0x6b, 0x67, 0xd4,
- 0x86, 0xf4, 0xed, 0x0a, 0x13, 0x24, 0x20, 0xb8, 0x71, 0x97, 0x4f, 0x1a,
- 0x32, 0x68, 0x34, 0x3b, 0x79, 0x61, 0x7c, 0x35, 0x89, 0xe4, 0xdb, 0x29,
- 0x67, 0xc4, 0x68, 0x81, 0x04, 0xc8, 0x9d, 0x6a, 0x32, 0x14, 0xb8, 0x5c,
- 0x7b, 0xaa, 0x29, 0x68, 0x20, 0x23, 0xa9, 0x89, 0x76, 0x83, 0x83, 0xd2,
- 0x05, 0x42, 0x5b, 0x07, 0x32, 0x4c, 0x47, 0x9a, 0x83, 0xde, 0xb9, 0x97,
- 0x01, 0x05, 0x12, 0x34, 0x80, 0x80, 0x13, 0x02, 0x89, 0xf1, 0xc5, 0x1b,
- 0x77, 0x78, 0x01, 0x43, 0x7f, 0xab, 0xad, 0xb1, 0xdc, 0x15, 0x37, 0x58,
- 0x11, 0x5d, 0x15, 0x12, 0x3e, 0x88, 0x9e, 0x6a, 0x00, 0x46, 0xa7, 0xda,
- 0x0d, 0xd7, 0xad, 0x91, 0xa3, 0x72, 0x34, 0x76, 0x60, 0x84, 0x8d, 0x8c,
- 0x74, 0x28, 0xa3, 0x72, 0x7d, 0x90, 0xc6, 0xe3, 0x72, 0x17, 0x92, 0xb6,
- 0xc1, 0x64, 0x10, 0x34, 0x40, 0x82, 0x40, 0x5b, 0x6c, 0x71, 0xc6, 0x19,
- 0x4b, 0xa0, 0xe0, 0xda, 0x90, 0xca, 0x31, 0xd8, 0x81, 0x8b, 0x40, 0x8a,
- 0xb6, 0x9e, 0x97, 0xae, 0x1d, 0x29, 0x9d, 0x6a, 0xeb, 0x25, 0x59, 0xe3,
- 0x72, 0x37, 0x74, 0xb0, 0xa4, 0x72, 0x59, 0x50, 0x97, 0xe0, 0x8b, 0xa2,
- 0x9d, 0xc7, 0x48, 0x7a, 0x62, 0x2e, 0xc8, 0x1a, 0x07, 0x93, 0x3d, 0x20,
- 0x22, 0x4c, 0x38, 0x00, 0xc1, 0xc5, 0x16, 0x33, 0xb0, 0xa8, 0x5a, 0x16,
- 0xcb, 0x35, 0x77, 0x03, 0x09, 0x32, 0x34, 0x59, 0x5a, 0x74, 0x1d, 0xba,
- 0x66, 0xc3, 0x72, 0x55, 0xe8, 0xb8, 0xe1, 0x72, 0x78, 0x56, 0xca, 0x5c,
- 0x69, 0x0e, 0x5e, 0x41, 0x9a, 0x15, 0x6b, 0x58, 0x61, 0x84, 0x9c, 0x1a,
- 0x12, 0xb8, 0x5c, 0xa4, 0xaa, 0x65, 0x30, 0x81, 0x9f, 0x06, 0x48, 0x25,
- 0x83, 0x0e, 0x43, 0x00, 0xff, 0xc1, 0xc2, 0x6b, 0x88, 0x6e, 0x97, 0x45,
- 0x84, 0xa2, 0x71, 0xd9, 0x25, 0x4d, 0xbc, 0x66, 0x41, 0x1a, 0x09, 0x0a,
- 0xf6, 0x41, 0x82, 0xa5, 0x6b, 0x2a, 0x97, 0x84, 0x0d, 0x31, 0x46, 0xd7,
- 0xa6, 0xa6, 0x8c, 0x04, 0x42, 0xc2, 0x6b, 0x66, 0xda, 0xe8, 0xa8, 0x93,
- 0x14, 0x38, 0xd0, 0x40, 0xab, 0x7c, 0x68, 0xc0, 0x82, 0x0e, 0x39, 0x88,
- 0xf0, 0xda, 0x9b, 0xdb, 0x79, 0x2a, 0x5a, 0xad, 0x06, 0x8a, 0x3b, 0xee,
- 0x72, 0xa9, 0x11, 0xdb, 0xc1, 0x7a, 0x06, 0x0e, 0xd8, 0x81, 0x9d, 0x41,
- 0xba, 0x66, 0xe7, 0x83, 0x64, 0xaa, 0xb6, 0x41, 0x05, 0xd6, 0x62, 0x7b,
- 0x01, 0x08, 0x29, 0xa4, 0x60, 0xe8, 0x6a, 0x36, 0x80, 0xb9, 0x1d, 0x6d,
- 0xc3, 0xda, 0xd8, 0xa6, 0x68, 0xd6, 0xdd, 0xd8, 0x81, 0xba, 0x14, 0x46,
- 0xd7, 0xc7, 0x15, 0x17, 0x4e, 0xba, 0x5c, 0x79, 0xad, 0x65, 0x48, 0x64,
- 0x91, 0xae, 0xdd, 0xeb, 0xc0, 0x02, 0xd8, 0x52, 0xa0, 0x01, 0x08, 0x21,
- 0x78, 0xc0, 0x9a, 0xa1, 0x26, 0x24, 0x41, 0xae, 0x72, 0xa9, 0xe9, 0x0a,
- 0x21, 0x6a, 0xa8, 0x8d, 0x36, 0xa7, 0x72, 0x37, 0x9c, 0x56, 0x2a, 0xb8,
- 0x55, 0x08, 0x1c, 0x88, 0xbb, 0x1d, 0x30, 0x1b, 0x88, 0x6a, 0x46, 0x1c,
- 0x2c, 0x9a, 0x99, 0x7d, 0x54, 0x21, 0x74, 0x15, 0x27, 0x4f, 0x4b, 0x9a,
- 0x06, 0x13, 0x6c, 0x4c, 0x80, 0x54, 0x11, 0x5c, 0xa0, 0x81, 0x6b, 0x26,
- 0x08, 0x9d, 0xc5, 0x1a, 0x14, 0x47, 0xfb, 0x2c, 0xb9, 0xbe, 0xba, 0xf6,
- 0x63, 0x80, 0x11, 0x8e, 0xd9, 0x81, 0x09, 0xd1, 0xed, 0x2c, 0x9a, 0xc0,
- 0xd8, 0x8d, 0x26, 0x71, 0x20, 0x41, 0xda, 0x89, 0xe7, 0xba, 0x7a, 0xb6,
- 0xc6, 0x41, 0x06, 0x12, 0x28, 0x40, 0xc0, 0xd2, 0x7c, 0xd4, 0x40, 0x81,
- 0xd3, 0x1c, 0x70, 0xa0, 0x1a, 0x08, 0x34, 0x28, 0xff, 0x3b, 0x1a, 0xb9,
- 0x9e, 0x16, 0x2c, 0x60, 0x99, 0x17, 0x47, 0xc8, 0xa1, 0x68, 0x14, 0x46,
- 0x68, 0x73, 0x79, 0x13, 0xb2, 0xd9, 0x81, 0xc4, 0xca, 0x51, 0xdc, 0xc1,
- 0xe1, 0xad, 0x3d, 0xe9, 0x80, 0xdc, 0xc3, 0xc0, 0x84, 0x45, 0x04, 0x77,
- 0x67, 0x90, 0x37, 0x69, 0x20, 0x40, 0xce, 0x5e, 0xcf, 0xe4, 0x0a, 0x2b,
- 0x24, 0x91, 0xbe, 0x8a, 0xfe, 0x60, 0x6a, 0xe0, 0x5e, 0x28, 0x30, 0x23,
- 0xee, 0x32, 0xab, 0xdc, 0x1a, 0x14, 0x8a, 0x9b, 0xa6, 0x92, 0xd1, 0x19,
- 0x2d, 0x1a, 0x07, 0xf7, 0x36, 0x90, 0x00, 0x01, 0x38, 0xc0, 0x94, 0x46,
- 0x0d, 0x11, 0x48, 0x50, 0x01, 0x06, 0x9f, 0x8f, 0x06, 0xc3, 0xbc, 0xd2,
- 0xb5, 0x51, 0xde, 0xc9, 0x01, 0x1a, 0x01, 0xec, 0xa9, 0xa4, 0x89, 0x9e,
- 0x9a, 0xd7, 0xa2, 0xc9, 0x1e, 0xa4, 0x09, 0x0d, 0x47, 0x87, 0xa7, 0x83,
- 0xf1, 0xb2, 0xdd, 0x65, 0xc6, 0x17, 0x3c, 0x90, 0x40, 0x00, 0x31, 0x4c,
- 0x31, 0x10, 0x16, 0x31, 0x14, 0x7f, 0xfc, 0x06, 0x79, 0xe7, 0x3d, 0xc2,
- 0xcb, 0x61, 0x57, 0xf1, 0xec, 0xa3, 0x44, 0x92, 0x40, 0x6e, 0xd9, 0x66,
- 0x47, 0x97, 0x1a, 0xe5, 0x8f, 0xbb, 0xce, 0x68, 0x1a, 0xd7, 0x3c, 0x5c,
- 0xb5, 0x6e, 0x34, 0x82, 0xc3, 0xd8, 0x6a, 0x78, 0x77, 0x81, 0x08, 0x28,
- 0xe0, 0x00, 0x01, 0xa8, 0x41, 0x7d, 0x04, 0xc2, 0x3e, 0xf7, 0x61, 0x00,
- 0x03, 0x19, 0x80, 0x5f, 0xfc, 0x68, 0x80, 0x04, 0x2a, 0x50, 0x01, 0x09,
- 0x34, 0x88, 0x9f, 0xfc, 0x68, 0x40, 0xc2, 0x12, 0x9a, 0x90, 0x06, 0x30,
- 0x18, 0x81, 0x09, 0x47, 0x20, 0x42, 0x0e, 0xa8, 0xb0, 0x84, 0x23, 0x78,
- 0x21, 0x09, 0x59, 0x38, 0xc2, 0x12, 0xc2, 0xa0, 0x85, 0x34, 0xf0, 0x20,
- 0x15, 0x8a, 0x70, 0x43, 0x11, 0x96, 0xc0, 0x84, 0x22, 0x94, 0x21, 0x0d,
- 0xb7, 0x68, 0x18, 0xbf, 0x0d, 0x6c, 0x00, 0x03, 0x16, 0x78, 0xc0, 0x03,
- 0xd1, 0x67, 0x05, 0x83, 0x54, 0xd0, 0x01, 0x2c, 0xa9, 0x40, 0x05, 0x2e,
- 0x70, 0x81, 0x0c, 0x58, 0xf1, 0x8a, 0x58, 0xcc, 0xa2, 0x16, 0xb7, 0xc8,
- 0xc5, 0x2e, 0x7a, 0xf1, 0x8b, 0x60, 0x0c, 0xa3, 0x15, 0x31, 0x70, 0x81,
- 0x0a, 0x3c, 0xe0, 0x72, 0x07, 0x10, 0x40, 0x30, 0xd4, 0x77, 0x10, 0xf6,
- 0x0d, 0x23, 0x18, 0x0d, 0x70, 0xc0, 0x03, 0x1e, 0x10, 0x81, 0x3a, 0xda,
- 0xf1, 0x8e, 0x78, 0xcc, 0xa3, 0x1e, 0xf7, 0xc8, 0xc7, 0x3e, 0xfa, 0xf1,
- 0x8f, 0x80, 0xb4, 0xe3, 0x03, 0x16, 0xa0, 0x80, 0x04, 0x1c, 0x20, 0x8d,
- 0xc2, 0xc0, 0x81, 0x42, 0xd2, 0xe0, 0xc6, 0x60, 0x1c, 0xc0, 0x90, 0x09,
- 0x50, 0x80, 0x24, 0x27, 0x49, 0xc9, 0x4a, 0x5a, 0xf2, 0x92, 0x98, 0xcc,
- 0xa4, 0x26, 0x37, 0xc9, 0xc9, 0x4e, 0x4a, 0xd2, 0x90, 0x06, 0x20, 0x80,
- 0x30, 0x6a, 0x50, 0x85, 0x86, 0x30, 0xb2, 0x7d, 0x02, 0x48, 0xa5, 0x00,
- 0x02, 0x10, 0x80, 0x01, 0xb0, 0xf2, 0x95, 0xb0, 0x8c, 0xa5, 0x2c, 0x67,
- 0x49, 0xcb, 0x5a, 0xda, 0xf2, 0x96, 0xb8, 0xbc, 0x25, 0x01, 0x58, 0x39,
- 0x8c, 0x18, 0x58, 0x01, 0x26, 0x10, 0x09, 0xa6, 0x30, 0x87, 0x49, 0xcc,
- 0x62, 0x3a, 0x24, 0x20, 0x00, 0x3b
+unsigned char search_png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
+ 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1a,
+ 0x08, 0x03, 0x00, 0x00, 0x01, 0x3c, 0x81, 0x58, 0x27, 0x00, 0x00, 0x02,
+ 0x4c, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xcc, 0x4c, 0x00, 0x01, 0x4c,
+ 0x01, 0x01, 0x4c, 0x00, 0x02, 0x4c, 0x01, 0x02, 0x00, 0x00, 0x00, 0x63,
+ 0x01, 0x02, 0x63, 0x02, 0x02, 0x63, 0x01, 0x04, 0x63, 0x02, 0x04, 0x63,
+ 0x04, 0x04, 0x63, 0x04, 0x07, 0x72, 0x02, 0x04, 0x72, 0x04, 0x04, 0x72,
+ 0x04, 0x07, 0x72, 0x07, 0x07, 0x72, 0x04, 0x09, 0x72, 0x07, 0x09, 0x7d,
+ 0x07, 0x09, 0x7d, 0x09, 0x09, 0x7d, 0x09, 0x0d, 0x87, 0x09, 0x0d, 0x87,
+ 0x09, 0x11, 0x87, 0x0d, 0x11, 0x90, 0x0d, 0x11, 0x90, 0x0d, 0x15, 0x90,
+ 0x11, 0x15, 0x9a, 0x11, 0x15, 0x9a, 0x11, 0x1a, 0x9a, 0x15, 0x1a, 0xa2,
+ 0x15, 0x1a, 0xa2, 0x15, 0x20, 0xa2, 0x1a, 0x20, 0xa9, 0x1a, 0x20, 0xa9,
+ 0x1a, 0x26, 0xa0, 0x20, 0x28, 0xa0, 0x24, 0x28, 0xa7, 0x2f, 0x37, 0xa7,
+ 0x32, 0x37, 0xb0, 0x20, 0x26, 0xb0, 0x20, 0x2d, 0xb7, 0x26, 0x2d, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xb2, 0x29, 0x36, 0x00, 0x00, 0x00, 0xbd,
+ 0x2d, 0x34, 0xb5, 0x32, 0x3c, 0xad, 0x3e, 0x45, 0x8e, 0x43, 0x3b, 0xad,
+ 0x41, 0x45, 0xbf, 0x43, 0x4e, 0xb3, 0x4d, 0x53, 0xb3, 0x53, 0x4f, 0xb3,
+ 0x50, 0x53, 0xba, 0x5e, 0x62, 0xb8, 0x71, 0x5f, 0xc3, 0x34, 0x3b, 0xc9,
+ 0x3b, 0x44, 0xc9, 0x3b, 0x4d, 0xc9, 0x44, 0x4d, 0xcf, 0x44, 0x56, 0xcf,
+ 0x4d, 0x56, 0xd5, 0x4d, 0x5f, 0xd5, 0x56, 0x5f, 0xcc, 0x54, 0x61, 0xda,
+ 0x56, 0x6b, 0xda, 0x5f, 0x6b, 0xdf, 0x5f, 0x6b, 0xc0, 0x6b, 0x70, 0xc0,
+ 0x6d, 0x70, 0x00, 0x00, 0x00, 0xc6, 0x7a, 0x7f, 0xc6, 0x7c, 0x7f, 0x00,
+ 0x00, 0x00, 0xd6, 0x66, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6,
+ 0x71, 0x71, 0xe5, 0x6b, 0x75, 0x00, 0x00, 0x00, 0xe9, 0x75, 0x8c, 0x00,
+ 0x00, 0x00, 0xcd, 0x85, 0x72, 0xcd, 0x88, 0x8d, 0xcd, 0x8a, 0x8d, 0xd3,
+ 0x98, 0x9a, 0xd9, 0xa7, 0xa9, 0xdc, 0xaa, 0xa0, 0xdf, 0xb6, 0xb7, 0xee,
+ 0x80, 0x8c, 0xe5, 0x8b, 0x92, 0xee, 0x8c, 0x9a, 0xf2, 0x8c, 0x9a, 0xea,
+ 0x8c, 0xa0, 0xec, 0x99, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xea,
+ 0xae, 0xa0, 0xef, 0xae, 0xb1, 0xe6, 0xb5, 0xac, 0x00, 0x00, 0x00, 0xfc,
+ 0xa6, 0xc1, 0xfa, 0xaf, 0xc0, 0xf3, 0xc1, 0xb3, 0xf2, 0xd6, 0xac, 0x00,
+ 0x00, 0x00, 0xe6, 0xc4, 0xc6, 0xec, 0xd2, 0xd0, 0xec, 0xd3, 0xd4, 0xf6,
+ 0xcd, 0xc9, 0xfb, 0xc5, 0xd1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0xdc, 0xdc, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xfa, 0xd6, 0xda, 0xf9, 0xda, 0xd5, 0xf9, 0xdf, 0xe1, 0x00,
+ 0x00, 0x00, 0xff, 0xff, 0xcb, 0x00, 0x00, 0x00, 0xf2, 0xe2, 0xe2, 0xfa,
+ 0xe5, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf9, 0xf0, 0xf1, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x11, 0x00, 0x66,
+ 0x22, 0x00, 0x66, 0x33, 0x00, 0x9a, 0xa5, 0x67, 0x9f, 0x00, 0x00, 0x00,
+ 0x01, 0x74, 0x52, 0x4e, 0x53, 0x00, 0x40, 0xe6, 0xd8, 0x66, 0x00, 0x00,
+ 0x00, 0x16, 0x74, 0x45, 0x58, 0x74, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61,
+ 0x72, 0x65, 0x00, 0x67, 0x69, 0x66, 0x32, 0x70, 0x6e, 0x67, 0x20, 0x32,
+ 0x2e, 0x34, 0x2e, 0x32, 0xa3, 0x5e, 0x47, 0x0e, 0x00, 0x00, 0x00, 0x04,
+ 0x67, 0x49, 0x46, 0x67, 0x02, 0x00, 0x00, 0x01, 0x41, 0x82, 0xfc, 0x50,
+ 0x00, 0x00, 0x04, 0x71, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xc5, 0x55,
+ 0xff, 0x6f, 0xdb, 0x44, 0x14, 0xbf, 0x94, 0xa8, 0x69, 0x52, 0x92, 0x2c,
+ 0x6e, 0x83, 0x93, 0xd8, 0xd7, 0x86, 0xd5, 0x84, 0x55, 0xaa, 0x46, 0x92,
+ 0x25, 0x76, 0x37, 0xa0, 0x94, 0x01, 0xd1, 0xa2, 0x49, 0x9d, 0xd0, 0x6a,
+ 0xc7, 0x5e, 0x07, 0x95, 0x58, 0xc4, 0x12, 0x99, 0xc0, 0x2f, 0x93, 0x60,
+ 0x9a, 0x5c, 0xc9, 0xbf, 0xdf, 0x3f, 0xd5, 0xf5, 0x1f, 0xe3, 0xbd, 0x77,
+ 0x67, 0xc7, 0x65, 0xab, 0xa0, 0xa0, 0x8a, 0x27, 0xd9, 0xe7, 0x3b, 0xbf,
+ 0x77, 0x9f, 0xcf, 0xfb, 0x72, 0xef, 0x18, 0xfb, 0xab, 0x70, 0x2e, 0x84,
+ 0xa0, 0x97, 0x88, 0x04, 0x87, 0x39, 0x4e, 0x85, 0xcd, 0xa5, 0x30, 0x36,
+ 0xcf, 0x65, 0xc4, 0x7b, 0xc7, 0xfc, 0x77, 0x2e, 0x5c, 0xd0, 0xe7, 0x0b,
+ 0x2e, 0x3c, 0xce, 0x6f, 0xb1, 0x56, 0x9b, 0x5b, 0xb4, 0x19, 0x0a, 0x2f,
+ 0x31, 0xb6, 0x92, 0xb5, 0x07, 0x83, 0xd9, 0xab, 0xaf, 0xb7, 0xdf, 0x2f,
+ 0x6d, 0xdd, 0x67, 0xec, 0x3e, 0xe7, 0x0e, 0x12, 0xa0, 0x87, 0x4f, 0x84,
+ 0x18, 0x01, 0x39, 0x9c, 0x2e, 0x38, 0xaf, 0x30, 0xd6, 0x6b, 0x98, 0x83,
+ 0x47, 0xe6, 0x60, 0x30, 0xd8, 0x19, 0x98, 0xf4, 0x98, 0xe6, 0xb1, 0xf9,
+ 0x09, 0x8e, 0x46, 0xb5, 0xc7, 0xfe, 0x4e, 0xfe, 0x38, 0xbd, 0x02, 0x7a,
+ 0xdb, 0xf8, 0x90, 0xb1, 0xd3, 0x2e, 0x00, 0x39, 0x29, 0xb6, 0x08, 0xc1,
+ 0x33, 0x1c, 0xb9, 0xe8, 0x70, 0xdd, 0x62, 0x7b, 0xc4, 0x63, 0x12, 0xc0,
+ 0x52, 0x60, 0x2b, 0x2d, 0xae, 0xa2, 0x67, 0xac, 0xb2, 0x4d, 0x13, 0x8c,
+ 0x83, 0x49, 0xb2, 0x24, 0x62, 0x11, 0xc6, 0xe0, 0x49, 0x1f, 0x95, 0xf4,
+ 0x0b, 0xc6, 0xb4, 0x26, 0x30, 0x45, 0xe6, 0x03, 0x7c, 0xef, 0x00, 0xf7,
+ 0xe3, 0xae, 0x89, 0x4e, 0x98, 0x8d, 0x02, 0x72, 0xeb, 0xad, 0x7c, 0x90,
+ 0x7b, 0xaf, 0x5c, 0x48, 0xee, 0xf3, 0x59, 0xf8, 0xe2, 0xe7, 0x67, 0xcf,
+ 0xff, 0xb9, 0x7c, 0x7f, 0xf0, 0xa9, 0xa1, 0xf9, 0x64, 0xfa, 0x7a, 0xd6,
+ 0x6d, 0x63, 0x36, 0x17, 0x42, 0xc4, 0x1c, 0x83, 0x2a, 0x90, 0x18, 0x1f,
+ 0x23, 0x75, 0x39, 0x8d, 0xe0, 0xc3, 0x95, 0xab, 0xb8, 0x38, 0xc1, 0x70,
+ 0xb7, 0x36, 0xd6, 0xde, 0x30, 0x76, 0x78, 0x42, 0xa6, 0x81, 0x88, 0x1d,
+ 0xf8, 0x69, 0x91, 0x89, 0xf4, 0x51, 0xba, 0x4a, 0x4f, 0x2c, 0x26, 0x9c,
+ 0x87, 0x23, 0x9e, 0x6e, 0xc0, 0x79, 0xb3, 0xba, 0xca, 0x58, 0xeb, 0x63,
+ 0x55, 0x47, 0x63, 0x19, 0x54, 0x1b, 0x84, 0xf7, 0x61, 0xa4, 0xc0, 0x60,
+ 0x7c, 0x47, 0x00, 0x0b, 0x9c, 0x46, 0x9c, 0x7b, 0x22, 0x72, 0x61, 0xa1,
+ 0x83, 0xea, 0xad, 0x4a, 0x9e, 0xb1, 0xa1, 0xd6, 0x30, 0x39, 0x8f, 0x04,
+ 0x25, 0x3f, 0x20, 0xd2, 0xa3, 0x58, 0x8c, 0x11, 0xc0, 0x46, 0x82, 0xa0,
+ 0xcc, 0x3b, 0xb2, 0xce, 0x96, 0xa4, 0x21, 0x17, 0xd5, 0xdc, 0x53, 0x0a,
+ 0xe8, 0x79, 0xa5, 0x5a, 0xbb, 0x9e, 0xac, 0x17, 0x0b, 0x6f, 0xd9, 0x7f,
+ 0x97, 0x59, 0x18, 0x9e, 0xfe, 0x70, 0x9d, 0x54, 0x3d, 0xb9, 0xdb, 0xd6,
+ 0x1c, 0x69, 0x3b, 0x3d, 0x0b, 0x8f, 0xba, 0xdb, 0xd7, 0x93, 0xad, 0xa6,
+ 0x36, 0x24, 0xdc, 0xb3, 0x23, 0x0b, 0x23, 0x30, 0x82, 0x90, 0x78, 0x5c,
+ 0x9d, 0x42, 0x4a, 0x52, 0xa8, 0x32, 0x86, 0xd1, 0xb3, 0x22, 0x4a, 0x77,
+ 0x24, 0x55, 0x38, 0x37, 0xeb, 0x88, 0xfd, 0xd3, 0x6f, 0x3f, 0x52, 0x9e,
+ 0x43, 0x31, 0xf1, 0x60, 0xd5, 0x21, 0x6d, 0x8f, 0x4a, 0x46, 0xd0, 0x91,
+ 0x0c, 0xf1, 0x63, 0xa4, 0x36, 0x51, 0x6b, 0x18, 0x6d, 0xad, 0xcc, 0xd8,
+ 0xfe, 0xf3, 0x7b, 0xaa, 0x28, 0x3c, 0xab, 0x83, 0xc3, 0x98, 0xa6, 0x36,
+ 0x26, 0x98, 0x43, 0x71, 0x78, 0x98, 0x64, 0x2a, 0x1d, 0xcf, 0xeb, 0xf7,
+ 0xe5, 0x1a, 0xa9, 0x6c, 0x94, 0x7d, 0xd6, 0x7a, 0x70, 0x3b, 0xad, 0x28,
+ 0xd5, 0x88, 0xb0, 0x9a, 0xe4, 0x21, 0x4c, 0x9c, 0x88, 0x84, 0x4b, 0x4a,
+ 0x51, 0xea, 0x14, 0xe7, 0x75, 0x30, 0xde, 0x6c, 0x6f, 0xc1, 0x17, 0x30,
+ 0xef, 0x40, 0x81, 0xd8, 0x23, 0xaa, 0x30, 0xdc, 0xdd, 0xb1, 0xa5, 0x13,
+ 0x21, 0x16, 0x17, 0xe9, 0x3b, 0x38, 0xba, 0x6e, 0xa0, 0x8c, 0x37, 0xd6,
+ 0x7d, 0x36, 0xd4, 0xa1, 0xbe, 0xf8, 0x40, 0xd5, 0x0f, 0xd6, 0x22, 0xc7,
+ 0x32, 0x94, 0x08, 0x31, 0xb9, 0x69, 0x53, 0x49, 0xab, 0xfd, 0x12, 0xd6,
+ 0x46, 0x25, 0x3f, 0x67, 0xf3, 0x5a, 0x1d, 0xac, 0xbb, 0xea, 0x2c, 0x49,
+ 0x23, 0x72, 0xd1, 0x4e, 0x99, 0xbb, 0x60, 0x40, 0x51, 0x8c, 0x91, 0xbd,
+ 0x02, 0xd6, 0x8b, 0xd8, 0xa7, 0xfc, 0x5a, 0xbd, 0x61, 0x98, 0xe6, 0xa3,
+ 0x63, 0xe8, 0x06, 0x3b, 0xd8, 0x14, 0x06, 0x5d, 0x68, 0x0a, 0xf4, 0xbd,
+ 0x23, 0x3b, 0x44, 0x17, 0x5e, 0xc7, 0xdf, 0x99, 0xf8, 0x49, 0xcb, 0xf0,
+ 0x65, 0x7c, 0x54, 0x92, 0x1d, 0xd8, 0xbf, 0x28, 0x5f, 0xb7, 0xb4, 0xab,
+ 0xa5, 0xc2, 0xca, 0xbe, 0xaa, 0x4f, 0xbf, 0xb6, 0xb2, 0x92, 0xbb, 0x8e,
+ 0xe4, 0x73, 0xbd, 0x79, 0xb6, 0xc0, 0xe7, 0xb3, 0xe9, 0xf4, 0xf4, 0xf4,
+ 0xdb, 0x87, 0x87, 0x37, 0x24, 0x07, 0x9f, 0xdf, 0xbd, 0x63, 0x6a, 0xda,
+ 0xbe, 0x7f, 0x09, 0x75, 0x36, 0xfd, 0x25, 0x3a, 0x7b, 0xfd, 0xeb, 0x8b,
+ 0x67, 0x0f, 0xbf, 0x3a, 0xb8, 0x21, 0xf9, 0xf2, 0x8b, 0xfb, 0xbb, 0xb7,
+ 0xb7, 0x8c, 0x96, 0x56, 0x19, 0xfa, 0xec, 0x4d, 0x02, 0xfb, 0xea, 0x2c,
+ 0x3c, 0x79, 0x7c, 0x6f, 0x6f, 0xa7, 0xad, 0x9a, 0x99, 0x45, 0x6d, 0xec,
+ 0x5f, 0x4a, 0x07, 0x6c, 0x3b, 0x57, 0xfc, 0x33, 0x5b, 0x8d, 0xba, 0xa6,
+ 0x0d, 0xa7, 0x14, 0xe3, 0xe9, 0x0c, 0x5a, 0xc1, 0x67, 0x09, 0x26, 0xb7,
+ 0x16, 0xc9, 0xad, 0x4a, 0x75, 0x1a, 0xa7, 0x33, 0xea, 0xdd, 0x9c, 0xf7,
+ 0x63, 0xd9, 0x28, 0x49, 0x32, 0x7f, 0xe9, 0x2a, 0x77, 0xd2, 0x85, 0x18,
+ 0xb0, 0xfb, 0xaa, 0xff, 0x4b, 0x3d, 0x79, 0x56, 0xcd, 0xe6, 0xa6, 0x56,
+ 0x5e, 0x3b, 0x02, 0xe0, 0x93, 0x93, 0x97, 0x2f, 0x1f, 0xdf, 0x49, 0x39,
+ 0x8d, 0xd4, 0xae, 0x78, 0xfe, 0x5d, 0x79, 0x5b, 0x2c, 0xb2, 0x9c, 0x3d,
+ 0x91, 0x39, 0x92, 0x13, 0x45, 0x87, 0xda, 0x87, 0x23, 0x87, 0xa0, 0x2f,
+ 0xb9, 0x4d, 0xe4, 0xe9, 0xf5, 0x12, 0xbd, 0x64, 0x17, 0x53, 0xd7, 0xaa,
+ 0xe5, 0x35, 0xc8, 0x74, 0xff, 0xc1, 0x37, 0x87, 0x7b, 0xcb, 0x8d, 0x03,
+ 0xb5, 0x71, 0x60, 0x27, 0x34, 0xc4, 0x22, 0x44, 0x09, 0x28, 0x1c, 0xb0,
+ 0x65, 0x64, 0x25, 0xc0, 0x04, 0x34, 0xb6, 0x1d, 0x4f, 0xe2, 0xe2, 0x4d,
+ 0x16, 0x5b, 0xef, 0x72, 0x94, 0x92, 0x46, 0xdf, 0xd8, 0xac, 0x94, 0x57,
+ 0xe1, 0x86, 0xd4, 0xdb, 0xbb, 0xbb, 0xed, 0x8c, 0x4b, 0x76, 0xb8, 0x54,
+ 0xb5, 0x32, 0x86, 0x8e, 0xba, 0xc8, 0xbc, 0xf4, 0xfa, 0x5b, 0x06, 0x3a,
+ 0x9a, 0x74, 0xe8, 0xe8, 0xab, 0xc0, 0x4a, 0xe9, 0x5f, 0xc2, 0x1d, 0xa7,
+ 0xeb, 0x46, 0xbd, 0xb2, 0x8e, 0xc0, 0x35, 0xbd, 0xb5, 0xac, 0x0b, 0xe8,
+ 0x4d, 0x61, 0x3f, 0x21, 0x6b, 0x91, 0xfb, 0xc1, 0x72, 0xab, 0xc5, 0xe5,
+ 0x8c, 0xca, 0x00, 0xd2, 0xed, 0x17, 0xab, 0xe4, 0x84, 0xb2, 0xe5, 0x8a,
+ 0xd8, 0xbd, 0x22, 0xd0, 0x98, 0x64, 0xad, 0x94, 0xcf, 0xfb, 0xd8, 0x01,
+ 0x36, 0xf5, 0xa6, 0x89, 0xdd, 0x8f, 0xb7, 0x89, 0xf4, 0x62, 0xe4, 0x20,
+ 0x60, 0x64, 0xa9, 0x16, 0xaf, 0x42, 0x2f, 0x3d, 0xca, 0x00, 0x3b, 0x2a,
+ 0x80, 0xa1, 0xaa, 0x43, 0x97, 0xd6, 0xc3, 0x58, 0x35, 0xed, 0x24, 0xff,
+ 0xa9, 0x9e, 0xc2, 0x35, 0xea, 0xe5, 0x62, 0x7e, 0x1f, 0x4f, 0xb3, 0xdf,
+ 0xab, 0x69, 0xd4, 0xfa, 0xa0, 0xa9, 0xf5, 0x55, 0xf4, 0x62, 0xd7, 0xe2,
+ 0x97, 0x02, 0x2d, 0xac, 0x20, 0x71, 0x48, 0x32, 0xb0, 0xd3, 0x4a, 0xa5,
+ 0x69, 0x98, 0x29, 0xe9, 0x85, 0x9d, 0x85, 0xb3, 0xb2, 0x81, 0x36, 0x0d,
+ 0xbd, 0x56, 0x2a, 0xe4, 0x86, 0xea, 0x20, 0x03, 0x74, 0x45, 0xd3, 0xea,
+ 0x75, 0x5d, 0x6f, 0xde, 0xa4, 0x34, 0xf4, 0x7a, 0xb5, 0x02, 0xdd, 0xf6,
+ 0xfc, 0x69, 0xa6, 0x61, 0xfa, 0xbd, 0x8b, 0xf3, 0x42, 0xb1, 0x50, 0x2c,
+ 0xdd, 0xa4, 0x14, 0x0b, 0xab, 0xf9, 0xb7, 0x43, 0x97, 0xfd, 0xaf, 0xf2,
+ 0x27, 0x51, 0x22, 0xbd, 0xc0, 0xca, 0xc6, 0x8b, 0x9d, 0x00, 0x00, 0x00,
+ 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
};
-unsigned int search_len = 2010;
+unsigned int search_png_len = 1857;
unsigned char doxfont_data[] = {
0x00, 0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x80, 0x00, 0x03, 0x00, 0x70,
@@ -3139,25 +3114,12 @@ unsigned char doxfont_data[] = {
};
unsigned int doxfont_len = 32760;
-//void writeNullImage(const char *dir)
-//{
-// QCString fileName=(QCString)dir+"/null.gif";
-// QFile f(fileName);
-// if (f.open(IO_WriteOnly))
-// f.writeBlock((char *)null_data,null_len);
-// else
-// {
-// fprintf(stderr,"Warning: Cannot open file %s for writing\n",fileName.data());
-// }
-// f.close();
-//}
-
void writeLogo(const char *dir)
{
- QCString fileName=(QCString)dir+"/doxygen.gif";
+ QCString fileName=(QCString)dir+"/doxygen.png";
QFile f(fileName);
if (f.open(IO_WriteOnly))
- f.writeBlock((char *)logo_data,logo_len);
+ f.writeBlock((char *)doxygen_png_data,doxygen_png_len);
else
{
fprintf(stderr,"Warning: Cannot open file %s for writing\n",fileName.data());
@@ -3167,10 +3129,10 @@ void writeLogo(const char *dir)
void writeSearchButton(const char *dir)
{
- QCString fileName=(QCString)dir+"/search.gif";
+ QCString fileName=(QCString)dir+"/search.png";
QFile f(fileName);
if (f.open(IO_WriteOnly))
- f.writeBlock((char *)search_data,search_len);
+ f.writeBlock((char *)search_png,search_png_len);
else
{
fprintf(stderr,"Warning: Cannot open file %s for writing\n",fileName.data());
diff --git a/src/pngenc.cpp b/src/pngenc.cpp
new file mode 100644
index 0000000..438b4b5
--- /dev/null
+++ b/src/pngenc.cpp
@@ -0,0 +1,157 @@
+/******************************************************************************
+ *
+ *
+ *
+ *
+ * Copyright (C) 1997-2001 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.
+ *
+ * ---------------------------------------------------------------------------
+ *
+ * The Portable Network Graphic format is an ISO Standard.
+ * Most of the code below was donated by Bernhard Ristow.
+ */
+
+#ifndef png_jmpbuf
+# define png_jmpbuf(png_ptr) ((png_ptr)->jmpbuf)
+#endif
+
+#include <png.h>
+#include <stdio.h>
+#include <malloc.h>
+#include "pngenc.h"
+#include "message.h"
+
+static void user_error_fn(png_structp, png_const_charp error_msg)
+{
+ err("%s\n", error_msg);
+}
+
+static void user_warning_fn(png_structp, png_const_charp warning_msg)
+{
+ err("%s\n", warning_msg);
+}
+
+PngEncoder::PngEncoder(Byte *rawBytes, Color *p, int w, int h, Byte d, int t) :
+ data(rawBytes), palette(p), width(w), height(h), depth(d), transIndex(t)
+{
+ numPixels = w*h;
+ dataPtr = data;
+}
+
+PngEncoder::~PngEncoder()
+{
+}
+
+void PngEncoder::write(const char *name)
+{
+ FILE * file = NULL;
+ unsigned char ** rows = 0;
+ unsigned char * cmap = 0;
+ short numOfColors = (1<<depth);
+ short bit_depth = 4;
+ long i = 0;
+ long j = 0;
+ png_structp png_ptr;
+ png_infop info_ptr;
+ char user_error_ptr[] = "PngEncoder";
+ png_colorp png_palette;
+ png_byte ti[1];
+
+ png_ptr = png_create_write_struct
+ ( PNG_LIBPNG_VER_STRING, (png_voidp)user_error_ptr,
+ user_error_fn, user_warning_fn);
+ if (!png_ptr)
+ {
+ err("Can not allocate writing structure!\n");
+ return;
+ }
+
+ info_ptr = png_create_info_struct(png_ptr);
+ if (!info_ptr)
+ {
+ png_destroy_write_struct(&png_ptr, (png_infopp)NULL);
+ err("Can not allocate writing structure!\n");
+ return;
+ }
+
+ if (setjmp(png_jmpbuf(png_ptr)))
+ {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ return;
+ }
+ else
+ {
+ png_palette = (png_colorp) png_malloc(png_ptr,
+ PNG_MAX_PALETTE_LENGTH*sizeof(png_color));
+ memset(png_palette,0,PNG_MAX_PALETTE_LENGTH*sizeof(png_color));
+ for (i=0; i<numOfColors; i++)
+ {
+ png_palette[i].red = palette[i].red;
+ png_palette[i].green = palette[i].green;
+ png_palette[i].blue = palette[i].blue;
+ }
+ png_set_PLTE(png_ptr, info_ptr, png_palette, PNG_MAX_PALETTE_LENGTH);
+ png_set_IHDR( png_ptr, info_ptr, width, height, bit_depth,
+ PNG_COLOR_TYPE_PALETTE, PNG_INTERLACE_NONE,
+ PNG_COMPRESSION_TYPE_BASE, PNG_FILTER_TYPE_BASE
+ );
+ ti[0] = transIndex;
+ png_set_tRNS(png_ptr,info_ptr,ti,1,NULL);
+ rows = (unsigned char **) calloc(sizeof(unsigned char*),height);
+ rows[0] = (unsigned char *) calloc(sizeof(unsigned char),height*width);
+ for (i=1; i<height; i++)
+ {
+ rows[i] = rows[i-1] + width;
+ }
+ for (i=0, dataPtr=data; i<height; i++)
+ {
+ for (j=0; j<width; j++)
+ {
+ if (j%2)
+ {
+ rows[i][j/2] = ( rows[i][j/2] | *dataPtr );
+ }
+ else
+ {
+ rows[i][j/2] = (*dataPtr) << 4;
+ }
+ dataPtr++;
+ }
+ }
+ png_set_rows(png_ptr,info_ptr,rows);
+
+ file = fopen(name,"wb");
+ png_init_io(png_ptr,file);
+ png_write_png(png_ptr,info_ptr,PNG_TRANSFORM_IDENTITY,NULL);
+ }
+
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+
+ if (file)
+ {
+ fclose (file);
+ }
+ if (cmap)
+ {
+ free(cmap);
+ }
+ if (rows)
+ {
+ if (rows[0])
+ {
+ free(rows[0]);
+ }
+ free(rows);
+ }
+ return;
+}
+
diff --git a/src/pngenc.h b/src/pngenc.h
new file mode 100644
index 0000000..598cf80
--- /dev/null
+++ b/src/pngenc.h
@@ -0,0 +1,54 @@
+/******************************************************************************
+ *
+ *
+ *
+ *
+ * Copyright (C) 1997-2001 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.
+ *
+ */
+
+#ifndef _PNGENC_H
+#define _PNGENC_H
+#include <qfile.h>
+
+typedef unsigned char Byte;
+
+struct Color
+{
+ Byte red;
+ Byte green;
+ Byte blue;
+};
+
+class PngEncoder
+{
+ public:
+ PngEncoder(Byte *rawBytes,Color *p,int w,int h,Byte d,int t);
+ ~PngEncoder();
+ void write(const char *fileName);
+
+ protected:
+
+ private:
+ // image variables
+ Byte *data; // pointer to the image data (one byte per pixel)
+ Color *palette; // pointer to the color palette
+ int width; // image width
+ int height; // image height
+ Byte depth; // bits per CLUT entry
+ int transIndex; // index of the transparant color; -1 = none
+ int numPixels; // total number of pixel (i.e. width * height)
+ Byte *dataPtr; // pointer located at the current pixel.
+
+};
+
+#endif
diff --git a/src/pre.l b/src/pre.l
index 377863e..6b8b20d 100644
--- a/src/pre.l
+++ b/src/pre.l
@@ -1578,8 +1578,8 @@ BN [ \t\r\n]
g_defText+=yytext;
g_defLitText+=yytext;
}
-<DefineText>"/*" {
- outputChar('/');outputChar('*');
+<DefineText>"/*"|"/**<"|"/*!<" {
+ outputArray(yytext,yyleng);
g_defText+=' ';
g_defLitText+=' ';
g_lastCContext=YY_START;
diff --git a/src/rtfgen.cpp b/src/rtfgen.cpp
index d83711a..ac777d6 100644
--- a/src/rtfgen.cpp
+++ b/src/rtfgen.cpp
@@ -2152,14 +2152,14 @@ void RTFGenerator::endClassDiagram(ClassDiagram &d,
{
newParagraph();
- // create a gif file
+ // create a png file
d.writeImage(t,dir,fileName,FALSE);
// display the file
t << "{" << endl;
t << Rtf_Style_Reset << endl;
t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE ";
- t << fileName << ".gif";
+ t << fileName << ".png";
t << " \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par" << endl;
t << "}" << endl;
}
diff --git a/src/scanner.l b/src/scanner.l
index e3ca3da..e558eb1 100644
--- a/src/scanner.l
+++ b/src/scanner.l
@@ -434,7 +434,7 @@ static int yyread(char *buf,int max_size)
%}
CMD ("\\"|"@")
-SECTIONCMD {CMD}("image"|"author"|"internal"|"version"|"date"|"deprecated"|"param"|"exception"|"return"[s]?|"retval"|"bug"|"warning"|"par"|"sa"|"see"|"pre"|"post"|"invariant"|"note"|"remark"[s]?|"todo"|"test"|"ingroup"|"latexonly"|"htmlonly"|"{"|"verbatim")
+SECTIONCMD {CMD}("image"|"author"|"internal"|"version"|"date"|"deprecated"|"param"|"exception"|"return"[s]?|"retval"|"bug"|"warning"|"par"|"sa"|"see"|"pre"|"post"|"invariant"|"note"|"remark"[s]?|"todo"|"test"|"ingroup"|"latexonly"|"htmlonly"|"{"|"verbatim"|"dotfile")
BN [ \t\n\r]
BL [ \t\r]*"\n"
B [ \t]
diff --git a/src/translator_br.h b/src/translator_br.h
index 42d5d93..4959f89 100644
--- a/src/translator_br.h
+++ b/src/translator_br.h
@@ -1009,7 +1009,7 @@ class TranslatorBrazilian: public Translator
"Se a tag \\c MAX_DOT_GRAPH_HEIGHT no arquivo de configuração tem o valor"
"200, o seguinte gráfo será gerado:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"As caixas no grafo acima tem as seguintes interpretações:\n"
"<ul>\n"
diff --git a/src/translator_cn.h b/src/translator_cn.h
index eba9f12..e0131d8 100644
--- a/src/translator_cn.h
+++ b/src/translator_cn.h
@@ -951,7 +951,7 @@ class TranslatorChinese : public TranslatorAdapter_1_2_13
"\\endcode\n"
"Èç¹ûÔÚÅäÖÃÎļþÖÐÖ¸¶¨ÁË"CN_SPC"MAX_DOT_GRAPH_HEIGHT"CN_SPC"µÄֵΪ200£¬"
"ÔòDoxygen½«Éú³ÉÈçϵÄͼÐΣº"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"ÒÔÉÏͼÐÎÖеľØÐÎÓÐÈçϵĺ¬Ò壺\n"
"<ul>\n"
diff --git a/src/translator_cz.h b/src/translator_cz.h
index 76b6919..e785da4 100644
--- a/src/translator_cz.h
+++ b/src/translator_cz.h
@@ -1208,7 +1208,7 @@ class TranslatorCzech : public TranslatorAdapter_1_2_13
"\\endcode\n"
"Pokud je položka \\c MAX_DOT_GRAPH_HEIGHT konfiguraèního souboru "
"nastavena na hodnotu 200, bude vygenerován následující graf:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Bloky (tj. uzly) v uvedeném grafu mají následující význam:\n"
"<ul>\n"
diff --git a/src/translator_de.h b/src/translator_de.h
index 7eaf6c0..3426f46 100644
--- a/src/translator_de.h
+++ b/src/translator_de.h
@@ -1082,7 +1082,7 @@ class TranslatorGerman : public Translator
"\\endcode\n\n"
"Setzen des Tags \\c MAX_DOT_GRAPH_HEIGHT in der Konfigurationsdatei "
"auf 240 liefert den folgenden Graphen:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Die Rechtecke in obigem Graphen bedeuten:\n"
"<ul>\n"
diff --git a/src/translator_dk.h b/src/translator_dk.h
index 5f5b447..9e72516 100644
--- a/src/translator_dk.h
+++ b/src/translator_dk.h
@@ -1055,7 +1055,7 @@ class TranslatorDanish : public TranslatorAdapter_1_2_7
"\\endcode\n"
"If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 200 this will result in the following graph:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"The boxes in the above graph have the following meaning:\n"
"<ul>\n"
diff --git a/src/translator_en.h b/src/translator_en.h
index 7b986db..35ee638 100644
--- a/src/translator_en.h
+++ b/src/translator_en.h
@@ -1072,7 +1072,7 @@ class TranslatorEnglish : public Translator
"\\endcode\n"
"If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 240 this will result in the following graph:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"The boxes in the above graph have the following meaning:\n"
"<ul>\n"
diff --git a/src/translator_es.h b/src/translator_es.h
index f5cec24..fa35a76 100644
--- a/src/translator_es.h
+++ b/src/translator_es.h
@@ -947,7 +947,7 @@ class TranslatorSpanish : public TranslatorAdapter_1_2_7
"\\endcode\n"
"Si la etiqueta \\c MAX_DOT_GRAPH_HEIGHT en el archivo de configuración "
"tiene valor 200 resultará en el siguiente gráfico:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Las cajas en el gráfico arriba tienen el significado que sigue:\n"
"<ul>\n"
diff --git a/src/translator_fr.h b/src/translator_fr.h
index a85defd..3c6f5a3 100644
--- a/src/translator_fr.h
+++ b/src/translator_fr.h
@@ -939,7 +939,7 @@ class TranslatorFrench : public Translator
"\\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:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Les rectangles du graphe ci-dessus ont la signification suivante:\n"
"<ul>\n"
diff --git a/src/translator_gr.h b/src/translator_gr.h
index 11befec..ce71bfd 100644
--- a/src/translator_gr.h
+++ b/src/translator_gr.h
@@ -1043,7 +1043,7 @@ class TranslatorGreek : public TranslatorAdapter_1_2_11
"\\endcode\n"
"Áí ç åôéêÝôá \\c MAX_DOT_GRAPH_HEIGHT óôï áñ÷åßï ñõèìßóåùí "
"ôåèåß óôï 200 èá Ý÷ïõìå óáí áðïôÝëåóìá ôï áêüëïõèï äéÜãñáììá:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Ôá êïõôéÜ óôï ðáñáðÜíù äéÜãñáììá Ý÷ïõí ôçí áêüëïõèç óçìáóßá:\n"
"<ul>\n"
diff --git a/src/translator_hr.h b/src/translator_hr.h
index 0783a5d..dbf26a7 100644
--- a/src/translator_hr.h
+++ b/src/translator_hr.h
@@ -760,7 +760,7 @@ class TranslatorCroatian : public Translator
"\\endcode\n"
"Ako je \\c MAX_DOT_GRAPH_HEIGHT tag u konfiguracijskoj datoteci "
"postavljen na 200 gornje veze æe rezultirati grafikonom:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Pravokutnici imaju slijedeæe znaèenje:\n"
"<ul>\n"
diff --git a/src/translator_hu.h b/src/translator_hu.h
index 86895bd..d477b1e 100644
--- a/src/translator_hu.h
+++ b/src/translator_hu.h
@@ -936,7 +936,7 @@ class TranslatorHungarian : public TranslatorAdapter_1_2_1
"\\endcode\n"
"Ha a konfigurációs fájl \\c MAX_DOT_GRAPH_HEIGHT elemének értékét "
"200-ra állítjuk, az eredmény a következõ ábra lesz:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Az ábrán levõ dobozok jelentése:\n"
"<ul>\n"
diff --git a/src/translator_it.h b/src/translator_it.h
index 383b198..f3ed770 100644
--- a/src/translator_it.h
+++ b/src/translator_it.h
@@ -1060,7 +1060,7 @@ class TranslatorItalian : public Translator
"\\endcode\n"
"Se il tag \\c MAX_DOT_GRAPH_HEIGHT nel file di configurazione "
"è impostato a 200 verrà prodotto il grafo seguente:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"I riquadri nel grafo qui sopra hanno il seguente significato:\n"
"<ul>\n"
diff --git a/src/translator_jp.h b/src/translator_jp.h
index 1c17be8..f3f028b 100644
--- a/src/translator_jp.h
+++ b/src/translator_jp.h
@@ -1010,7 +1010,7 @@ class TranslatorJapanese : public Translator
"\\endcode\n"
"ÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Ç¡¢¥¿¥° \\c MAX_DOT_GRAPH_HEIGHT ¤¬ 200 ¤Ë¥»¥Ã¥È¤µ¤ì¤¿"
"¾ì¹ç¡¢¼¡¤Î¤è¤¦¤Ê¥°¥é¥Õ¤È¤Ê¤ê¤Þ¤¹¡£"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"¾å¤Î¥°¥é¥ÕÆâ¤Î¥Ü¥Ã¥¯¥¹¤Ë¤Ï¼¡¤Î¤è¤¦¤Ê°ÕÌ£¤¬¤¢¤ê¤Þ¤¹¡£\n"
"<ul>\n"
diff --git a/src/translator_kr.h b/src/translator_kr.h
index 67951f7..98317d7 100644
--- a/src/translator_kr.h
+++ b/src/translator_kr.h
@@ -1010,7 +1010,7 @@ class TranslatorKorean : public TranslatorAdapter_1_2_13
"\\endcode\n"
"If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 240 this will result in the following graph:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"The boxes in the above graph have the following meaning:\n"
"<ul>\n"
diff --git a/src/translator_nl.h b/src/translator_nl.h
index f2348cb..147664c 100644
--- a/src/translator_nl.h
+++ b/src/translator_nl.h
@@ -685,7 +685,7 @@ class TranslatorDutch : public Translator
"\\endcode\n"
"Als de \\c MAX_DOT_GRAPH_HEIGHT tag in the configuratie file "
"op 200 gezet is, zal het bestaande voorbeeld resulteren in de volgende graaf:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"De rechthoeken in the bovenstaande graaf hebben de volgende betekenis:\n"
"<ul>\n"
diff --git a/src/translator_no.h b/src/translator_no.h
index a3bfa71..f888517 100644
--- a/src/translator_no.h
+++ b/src/translator_no.h
@@ -742,7 +742,7 @@ class TranslatorNorwegian : public TranslatorAdapter_1_2_2
"\\endcode\n"
"If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 200 this will result in the following graph:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"The boxes in the above graph have the following meaning:\n"
"<ul>\n"
diff --git a/src/translator_pl.h b/src/translator_pl.h
index cda5cd7..ba2fa49 100644
--- a/src/translator_pl.h
+++ b/src/translator_pl.h
@@ -938,7 +938,7 @@ class TranslatorPolish : public TranslatorAdapter_1_2_1
"\\endcode\n"
"Je¶li znacznik \\c MAX_DOT_GRAPH_HEIGHT w pliku konfiguracji "
"jest ustawiony na 200, odniesie to rezultat w nastêpuj±cym wykresie:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Pude³ka w powy¿szym wykresie maj± nastêpuj±ce znaczenie:\n"
"<ul>\n"
diff --git a/src/translator_pt.h b/src/translator_pt.h
index 8680caf..232eecb 100644
--- a/src/translator_pt.h
+++ b/src/translator_pt.h
@@ -1048,7 +1048,7 @@ class TranslatorPortuguese : public TranslatorAdapter_1_2_13
"\\endcode\n"
"Se no ficheiro de configuração estiver a tag \\c MAX_DOT_GRAPH_HEIGHT "
"com o valor de 200 então o seguinte grafo será gerado:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"As caixas no grafo anterior têm as seguintes interpretações:\n"
"<ul>\n"
diff --git a/src/translator_ro.h b/src/translator_ro.h
index d53350b..818cda9 100644
--- a/src/translator_ro.h
+++ b/src/translator_ro.h
@@ -965,7 +965,7 @@ class TranslatorRomanian: public TranslatorAdapter_1_2_1
"\\endcode\n"
"Dacã tagul \\c MAX_DOT_GRAPH_HEIGHT din fiºierul de configuraþie "
"Este setat la 200 acesta este graful rezultat:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Cãsuþele din partea de sus au urmãtoarea semnificaþie:\n"
"<ul>\n"
diff --git a/src/translator_ru.h b/src/translator_ru.h
index 2e3e026..61b3fbc 100644
--- a/src/translator_ru.h
+++ b/src/translator_ru.h
@@ -1095,7 +1095,7 @@ class TranslatorRussian : public Translator
"\\endcode\n"
"åÓÌÉ \\c MAX_DOT_GRAPH_HEIGHT × ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÍ ÆÁÊÌÅ "
"ÕÓÔÁÎÏ×ÌÅÎ × 240, ÐÏÌÕÞÉÔÓÑ ÓÌÅÄÕÀÝÉÊ ÇÒÁÆ:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"ðÒÑÍÏÕÇÏÌØÎÉËÉ × ÜÔÏÍ ÇÒÁÆÅ ÉÍÅÀÔ ÓÌÅÄÕÀÝÅÅ ÚÎÁÞÅÎÉÅ:\n"
"<ul>\n"
@@ -1371,7 +1371,7 @@ class TranslatorRussian : public Translator
*/
virtual QCString trReferences()
{
- return "ðÅÒÅËÒÅÓÔÎÙÅ ÓÓÙÌËÉ";
+ return decode("ðÅÒÅËÒÅÓÔÎÙÅ ÓÓÙÌËÉ");
}
//////////////////////////////////////////////////////////////////////////
@@ -1383,7 +1383,7 @@ class TranslatorRussian : public Translator
*/
virtual QCString trImplementedFromList(int numEntries)
{
- return "úÁÍÅÝÁÅÔ "+trWriteList(numEntries)+".";
+ return decode("úÁÍÅÝÁÅÔ ")+trWriteList(numEntries)+".";
}
/*! used in member documentation blocks to produce a list of
@@ -1391,7 +1391,7 @@ class TranslatorRussian : public Translator
*/
virtual QCString trImplementedInList(int numEntries)
{
- return "úÁÍÅÝÁÅÔÓÑ × "+trWriteList(numEntries)+".";
+ return decode("úÁÍÅÝÁÅÔÓÑ × ")+trWriteList(numEntries)+".";
}
};
diff --git a/src/translator_si.h b/src/translator_si.h
index cbc273d..0193266 100644
--- a/src/translator_si.h
+++ b/src/translator_si.h
@@ -694,7 +694,7 @@ class TranslatorSlovene : public TranslatorAdapter_1_2_13
"\\endcode\n"
"If the \\c MAX_DOT_GRAPH_HEIGHT tag in the configuration file "
"is set to 200 this will result in the following graph:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"The boxes in the above graph have the following meaning:\n"
"<ul>\n"
diff --git a/src/translator_sk.h b/src/translator_sk.h
index 99f8ee2..6b5e949 100644
--- a/src/translator_sk.h
+++ b/src/translator_sk.h
@@ -1069,7 +1069,7 @@ class TranslatorSlovak : public TranslatorAdapter_1_2_13
"\\endcode\n"
"Pokia¾ je položka \\c MAX_DOT_GRAPH_HEIGHT konfiguraèného súboru "
"nastavená na hodnotu 200, bude vygenerovaný nasledujúci graf:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"Bloky (tj. uzly) v uvedenom grafe majú nasledujúci význam:\n"
"<ul>\n"
diff --git a/src/translator_ua.h b/src/translator_ua.h
index b3238c7..58009ae 100644
--- a/src/translator_ua.h
+++ b/src/translator_ua.h
@@ -1060,7 +1060,7 @@ class TranslatorUkrainian : public TranslatorAdapter_1_2_11
"\\endcode\n"
"ñËÝÏ \\c MAX_DOT_GRAPH_HEIGHT × ËÏÎƦÇÕÒÁæÊÎÏÍÕ ÆÁÊ̦ "
"ÕÓÔÁÎÏ×ÌÅÎÅ ÎÁ 200, ÏÔÒÉÍÁ¤ÍÏ ÎÁÓÔÕÐÎÉÊ ÇÒÁÆ:"
- "<p><center><img src=\"graph_legend.gif\"></center>\n"
+ "<p><center><img src=\"graph_legend.png\"></center>\n"
"<p>\n"
"ðÒÑÍÏËÕÔÎÉËÉ × ÃØÏÍÕ ÇÒÁƦ ÍÁÀÔØ ÎÁÓÔÕÐÎÉÊ ÚͦÓÔ:\n"
"<ul>\n"
diff --git a/src/treeview.h b/src/treeview.h
index 722da0d..9cbcccd 100644
--- a/src/treeview.h
+++ b/src/treeview.h
@@ -31,7 +31,7 @@
" \n"
" //dynamic data \n"
" this.isOpen = true \n"
-" this.iconSrc = \"ftv2folderopen.gif\" \n"
+" this.iconSrc = \"ftv2folderopen.png\" \n"
" this.children = new Array \n"
" this.nChildren = 0 \n"
" \n"
@@ -81,10 +81,10 @@
" { \n"
" if (folder.nodeImg) \n"
" if (folder.isLastNode) \n"
-" folder.nodeImg.src = \"ftv2mlastnode.gif\" \n"
+" folder.nodeImg.src = \"ftv2mlastnode.png\" \n"
" else \n"
-" folder.nodeImg.src = \"ftv2mnode.gif\" \n"
-" folder.iconImg.src = \"ftv2folderopen.gif\" \n"
+" folder.nodeImg.src = \"ftv2mnode.png\" \n"
+" folder.iconImg.src = \"ftv2folderopen.png\" \n"
" for (i=0; i<folder.nChildren; i++) \n"
" folder.children[i].display() \n"
" } \n"
@@ -92,10 +92,10 @@
" { \n"
" if (folder.nodeImg) \n"
" if (folder.isLastNode) \n"
-" folder.nodeImg.src = \"ftv2plastnode.gif\" \n"
+" folder.nodeImg.src = \"ftv2plastnode.png\" \n"
" else \n"
-" folder.nodeImg.src = \"ftv2pnode.gif\" \n"
-" folder.iconImg.src = \"ftv2folderclosed.gif\" \n"
+" folder.nodeImg.src = \"ftv2pnode.png\" \n"
+" folder.iconImg.src = \"ftv2folderclosed.png\" \n"
" for (i=0; i<folder.nChildren; i++) \n"
" folder.children[i].hide() \n"
" } \n"
@@ -138,14 +138,14 @@
" if (level>0) \n"
" if (lastNode) //the last 'brother' in the children array \n"
" { \n"
-" this.renderOb(leftSide + auxEv + \"<img name='nodeIcon\" + this.id + \"' src='ftv2mlastnode.gif' width=16 height=22 border=0></a>\") \n"
-" leftSide = leftSide + \"<img src='ftv2blank.gif' width=16 height=22>\" \n"
+" this.renderOb(leftSide + auxEv + \"<img name='nodeIcon\" + this.id + \"' src='ftv2mlastnode.png' width=16 height=22 border=0></a>\") \n"
+" leftSide = leftSide + \"<img src='ftv2blank.png' width=16 height=22>\" \n"
" this.isLastNode = 1 \n"
" } \n"
" else \n"
" { \n"
-" this.renderOb(leftSide + auxEv + \"<img name='nodeIcon\" + this.id + \"' src='ftv2mnode.gif' width=16 height=22 border=0></a>\") \n"
-" leftSide = leftSide + \"<img src='ftv2vertline.gif' width=16 height=22>\" \n"
+" this.renderOb(leftSide + auxEv + \"<img name='nodeIcon\" + this.id + \"' src='ftv2mnode.png' width=16 height=22 border=0></a>\") \n"
+" leftSide = leftSide + \"<img src='ftv2vertline.png' width=16 height=22>\" \n"
" this.isLastNode = 0 \n"
" } \n"
" else \n"
@@ -274,7 +274,7 @@
" this.id = -1 //initialized in initalize() \n"
" this.navObj = 0 //initialized in render() \n"
" this.iconImg = 0 //initialized in render() \n"
-" this.iconSrc = \"ftv2doc.gif\" \n"
+" this.iconSrc = \"ftv2doc.png\" \n"
" \n"
" // methods \n"
" this.initialize = initializeItem \n"
@@ -305,13 +305,13 @@
" if (level>0) \n"
" if (lastNode) //the last 'brother' in the children array \n"
" { \n"
-" this.renderOb(leftSide + \"<img src='ftv2lastnode.gif' width=16 height=22>\") \n"
-" leftSide = leftSide + \"<img src='ftv2blank.gif' width=16 height=22>\" \n"
+" this.renderOb(leftSide + \"<img src='ftv2lastnode.png' width=16 height=22>\") \n"
+" leftSide = leftSide + \"<img src='ftv2blank.png' width=16 height=22>\" \n"
" } \n"
" else \n"
" { \n"
-" this.renderOb(leftSide + \"<img src='ftv2node.gif' width=16 height=22>\") \n"
-" leftSide = leftSide + \"<img src='ftv2vertline.gif' width=16 height=22>\" \n"
+" this.renderOb(leftSide + \"<img src='ftv2node.png' width=16 height=22>\") \n"
+" leftSide = leftSide + \"<img src='ftv2vertline.png' width=16 height=22>\" \n"
" } \n"
" else \n"
" this.renderOb(\"\") \n"
diff --git a/src/treeview.js b/src/treeview.js
index 240d654..6b5ef51 100644
--- a/src/treeview.js
+++ b/src/treeview.js
@@ -31,7 +31,7 @@ function Folder(folderDescription, tagName, hreference) //constructor
//dynamic data
this.isOpen = true
- this.iconSrc = "ftv2folderopen.gif"
+ this.iconSrc = "ftv2folderopen.png"
this.children = new Array
this.nChildren = 0
@@ -81,10 +81,10 @@ function propagateChangesInState(folder)
{
if (folder.nodeImg)
if (folder.isLastNode)
- folder.nodeImg.src = "ftv2mlastnode.gif"
+ folder.nodeImg.src = "ftv2mlastnode.png"
else
- folder.nodeImg.src = "ftv2mnode.gif"
- folder.iconImg.src = "ftv2folderopen.gif"
+ folder.nodeImg.src = "ftv2mnode.png"
+ folder.iconImg.src = "ftv2folderopen.png"
for (i=0; i<folder.nChildren; i++)
folder.children[i].display()
}
@@ -92,10 +92,10 @@ function propagateChangesInState(folder)
{
if (folder.nodeImg)
if (folder.isLastNode)
- folder.nodeImg.src = "ftv2plastnode.gif"
+ folder.nodeImg.src = "ftv2plastnode.png"
else
- folder.nodeImg.src = "ftv2pnode.gif"
- folder.iconImg.src = "ftv2folderclosed.gif"
+ folder.nodeImg.src = "ftv2pnode.png"
+ folder.iconImg.src = "ftv2folderclosed.png"
for (i=0; i<folder.nChildren; i++)
folder.children[i].hide()
}
@@ -138,14 +138,14 @@ var nc
if (level>0)
if (lastNode) //the last 'brother' in the children array
{
- this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mlastnode.gif' width=16 height=22 border=0></a>")
- leftSide = leftSide + "<img src='ftv2blank.gif' width=16 height=22>"
+ this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mlastnode.png' width=16 height=22 border=0></a>")
+ leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"
this.isLastNode = 1
}
else
{
- this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mnode.gif' width=16 height=22 border=0></a>")
- leftSide = leftSide + "<img src='ftv2vertline.gif' width=16 height=22>"
+ this.renderOb(leftSide + auxEv + "<img name='nodeIcon" + this.id + "' src='ftv2mnode.png' width=16 height=22 border=0></a>")
+ leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>"
this.isLastNode = 0
}
else
@@ -274,7 +274,7 @@ function Item(itemDescription, tagName, itemLink) // Constructor
this.id = -1 //initialized in initalize()
this.navObj = 0 //initialized in render()
this.iconImg = 0 //initialized in render()
- this.iconSrc = "ftv2doc.gif"
+ this.iconSrc = "ftv2doc.png"
// methods
this.initialize = initializeItem
@@ -305,13 +305,13 @@ function initializeItem(level, lastNode, leftSide)
if (level>0)
if (lastNode) //the last 'brother' in the children array
{
- this.renderOb(leftSide + "<img src='ftv2lastnode.gif' width=16 height=22>")
- leftSide = leftSide + "<img src='ftv2blank.gif' width=16 height=22>"
+ this.renderOb(leftSide + "<img src='ftv2lastnode.png' width=16 height=22>")
+ leftSide = leftSide + "<img src='ftv2blank.png' width=16 height=22>"
}
else
{
- this.renderOb(leftSide + "<img src='ftv2node.gif' width=16 height=22>")
- leftSide = leftSide + "<img src='ftv2vertline.gif' width=16 height=22>"
+ this.renderOb(leftSide + "<img src='ftv2node.png' width=16 height=22>")
+ leftSide = leftSide + "<img src='ftv2vertline.png' width=16 height=22>"
}
else
this.renderOb("")