diff -r d8fccb2cd802 -r 468f4c8d3d5b Orb/Doxygen/src/htmlhelp.cpp --- a/Orb/Doxygen/src/htmlhelp.cpp Fri Apr 23 20:47:58 2010 +0100 +++ b/Orb/Doxygen/src/htmlhelp.cpp Wed Aug 11 14:49:30 2010 +0100 @@ -2,7 +2,7 @@ * * * - * Copyright (C) 1997-2008 by Dimitri van Heesch. + * Copyright (C) 1997-2010 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 @@ -24,6 +24,7 @@ #include <qdict.h> #include <qregexp.h> #include "qtextcodec.h" +#include "sortdict.h" #include "htmlhelp.h" #include "config.h" @@ -43,28 +44,15 @@ bool reversed; }; -class IndexFieldList : public QList<IndexField> +class IndexFieldSDict : public SDict<IndexField> { public: + IndexFieldSDict() : SDict<IndexField>(17) {} + ~IndexFieldSDict() {} int compareItems(GCI item1, GCI item2) { return stricmp(((IndexField *)item1)->name,((IndexField *)item2)->name); } - ~IndexFieldList() {} -}; - -class IndexFieldListIterator : public QListIterator<IndexField> -{ - public: - IndexFieldListIterator( const IndexFieldList &list) : - QListIterator<IndexField>(list) {} -}; - -class IndexFieldDict : public QDict<IndexField> -{ - public: - IndexFieldDict(int size) : QDict<IndexField>(size) {} - ~IndexFieldDict() {} }; /*! A helper class for HtmlHelp that manages a two level index in @@ -80,22 +68,19 @@ bool hasLink,bool reversed); void writeFields(QTextStream &t); private: - IndexFieldList *list; - IndexFieldDict *dict; + IndexFieldSDict *dict; }; /*! Constructs a new HtmlHelp index */ HtmlHelpIndex::HtmlHelpIndex() { - list = new IndexFieldList; - dict = new IndexFieldDict(10007); - list->setAutoDelete(TRUE); + dict = new IndexFieldSDict; + dict->setAutoDelete(TRUE); } /*! Destroys the HtmlHelp index */ HtmlHelpIndex::~HtmlHelpIndex() { - delete list; delete dict; } @@ -132,8 +117,7 @@ f->anchor = anchor; f->link = hasLink; f->reversed = reversed; - list->inSort(f); - dict->insert(key,f); + dict->append(key,f); } } @@ -165,7 +149,8 @@ */ void HtmlHelpIndex::writeFields(QTextStream &t) { - IndexFieldListIterator ifli(*list); + dict->sort(); + IndexFieldSDict::Iterator ifli(*dict); IndexField *f; QCString lastLevel1; bool level2Started=FALSE; @@ -506,9 +491,11 @@ s = indexFiles.next(); } t << "tabs.css" << endl; - t << "tab_b.gif" << endl; - t << "tab_l.gif" << endl; - t << "tab_r.gif" << endl; + t << "tab_a.png" << endl; + t << "tab_b.png" << endl; + t << "tab_h.png" << endl; + t << "tab_s.png" << endl; + t << "nav_h.png" << endl; if (Config_getBool("HTML_DYNAMIC_SECTIONS")) { t << "open.gif" << endl;