Commit 3e9b5fe7 authored by dimitri's avatar dimitri

Release-1.6.0

parent 9e6be9a8
DOXYGEN Version 1.5.9-20090814
DOXYGEN Version 1.6.0
Please read the installation section of the manual
(http://www.doxygen.org/install.html) for instructions.
--------
Dimitri van Heesch (14 August 2009)
Dimitri van Heesch (20 August 2009)
DOXYGEN Version 1.5.9_20090814
DOXYGEN Version 1.6.0
Please read INSTALL for compilation instructions.
......@@ -17,4 +17,4 @@ to subscribe to the lists or to visit the archives.
Enjoy,
Dimitri van Heesch (dimitri@stack.nl) (14 August 2009)
Dimitri van Heesch (dimitri@stack.nl) (20 August 2009)
......@@ -16,11 +16,11 @@
# shell script to configure doxygen
doxygen_version_major=1
doxygen_version_minor=5
doxygen_version_revision=9
doxygen_version_minor=6
doxygen_version_revision=0
#NOTE: Setting version_mmn to "NO" will omit mmn info from the package.
doxygen_version_mmn=20090814
doxygen_version_mmn=NO
bin_dirs=`echo $PATH | sed -e "s/:/ /g"`
......
......@@ -7,7 +7,7 @@
<type>void</type>
<name>example</name>
<anchorfile>class_test.html</anchorfile>
<anchor>47b775f65718978f1ffcd96376f8ecfa</anchor>
<anchor>a47b775f65718978f1ffcd96376f8ecfa</anchor>
<arglist>()</arglist>
</member>
</compound>
......
......@@ -3089,8 +3089,10 @@ void ClassDef::addListReferences()
{
LockingPtr< QList<ListItemInfo> > xrefItems = xrefListItems();
addRefItem(xrefItems.pointer(),
fortranOpt?theTranslator->trType(TRUE,TRUE):theTranslator->trClass(TRUE,TRUE),
getOutputFileBase(),displayName()
fortranOpt?theTranslator->trType(TRUE,TRUE):
theTranslator->trClass(TRUE,TRUE),
getOutputFileBase(),
displayName()
);
}
if (m_impl->memberGroupSDict)
......
This diff is collapsed.
......@@ -16,7 +16,9 @@
*
*/
#include <stdio.h>
#include "reflist.h"
#include "util.h"
/*! Create a list of items that are cross referenced with documentation blocks
* @param listName String representing the name of the list.
......@@ -27,7 +29,8 @@ RefList::RefList(const char *listName,
const char *pageTitle,
const char *secTitle
)
{
{
m_itemList = 0;
m_dict = 0;
m_dictIterator = 0;
m_id = 0;
......@@ -37,10 +40,10 @@ RefList::RefList(const char *listName,
}
/*! Destroy the todo list. Currently not called! */
RefList::~RefList()
{
delete m_dictIterator;
delete m_dict;
RefList::~RefList()
{
delete m_dictIterator;
delete m_dict;
}
/*! Adds a new item to the list.
......@@ -50,7 +53,7 @@ int RefList::addRefItem()
{
if (m_dict==0)
{
m_dict = new QIntDict<RefItem>(1009);
m_dict = new QIntDict<RefItem>(1009);
m_dict->setAutoDelete(TRUE);
m_dictIterator = new QIntDictIterator<RefItem>(*m_dict);
}
......@@ -69,7 +72,7 @@ RefItem *RefList::getRefItem(int itemId)
return m_dict ? m_dict->find(itemId) : 0;
}
/*! Returns the first item in the dictionary or 0 if
/*! Returns the first item in the dictionary or 0 if
* non is available.
* Items are not sorted.
*/
......@@ -103,3 +106,56 @@ QCString RefList::sectionTitle() const
return m_secTitle;
}
void RefList::insertIntoList(const char *key,RefItem *item)
{
if (m_itemList==0)
{
m_itemList = new SortedRefItems(1009);
}
RefItem *ri = m_itemList->find(key);
if (ri==0)
{
m_itemList->append(key,item);
}
else // item already added to the list (i.e. multiple item for the same
// entity)
{
if (ri!=item)
{
ri->extraItems.append(item);
}
}
}
void RefList::generatePage()
{
if (m_itemList==0) return;
m_itemList->sort();
SDict<RefItem>::Iterator it(*m_itemList);
RefItem *item;
for (it.toFirst();(item=it.current());++it)
{
QCString doc;
doc = "\\anchor ";
doc += item->listAnchor;
doc += " <dl><dt>";
doc += item->prefix;
doc += " \\_internalref ";
doc += item->name;
doc += " \"";
doc += item->title;
doc += "\"";
if (!item->args.isEmpty()) doc += item->args;
doc += "</dt>\n<dd>";
doc += item->text;
QListIterator<RefItem> li(item->extraItems);
RefItem *extraItem;
for (li.toFirst();(extraItem=li.current());++li)
{
doc += "<p>" + extraItem->text;
}
doc += "</dd></dl>\n";
addRelatedPage(m_listName,m_pageTitle,doc,0,m_listName,1,0,0,0);
}
}
......@@ -21,15 +21,36 @@
#include "qtbc.h"
#include <qintdict.h>
//#include "outputgen.h"
#include <qlist.h>
#include "sortdict.h"
/*! This struct represents an item in the list of references. */
struct RefItem
{
RefItem() : written(FALSE) {}
RefItem() /*: written(FALSE)*/ {}
QCString text; //!< text of the item.
QCString listAnchor; //!< anchor in the list
bool written;
QCString prefix; //!< type prefix for the name
QCString name; //!< name of the entity containing the reference
QCString title; //!< display name of the entity
QCString args; //!< optional arguments for the entity (if function)
//bool written;
QList<RefItem> extraItems; //!< more items belonging to the same entity
};
/*! List of items sorted by title */
class SortedRefItems : public SDict<RefItem>
{
public:
SortedRefItems(int size=17) : SDict<RefItem>(size) {}
virtual ~SortedRefItems() {}
int compareItems(GCI item1,GCI item2)
{
RefItem *r1 = (RefItem*)item1;
RefItem *r2 = (RefItem*)item2;
return stricmp(r1->title,r2->title);
}
};
/*! @brief List of cross-referenced items
......@@ -57,12 +78,15 @@ class RefList
const char *pageTitle,const char *secTitle
);
~RefList();
void insertIntoList(const char *key,RefItem *item);
void generatePage();
private:
int m_id;
QCString m_listName;
QCString m_pageTitle;
QCString m_secTitle;
SortedRefItems *m_itemList;
QIntDict<RefItem> *m_dict;
QIntDictIterator<RefItem> *m_dictIterator;
};
......
/*---------------- Search Box */
#MSearchBox {
#MSearchBox {
padding: 0px;
margin: 0px;
border: none;
......@@ -18,24 +18,14 @@
background-color: #FFFFFF;
font-style: normal;
cursor: text;
padding: 0px 1px;
padding: 1px 1px;
margin: 0px 6px 0px 0px;
border: none;
outline: none;
vertical-align: middle;
}
#MSearchBox.MSearchBoxInactive:hover #MSearchField {
background-color: #FFFFFF;
padding: 0px 1px;
margin: 0px 6px 0px 0px;
border: none;
}
.MSearchBoxActive #MSearchField {
background-color: #FFFFFF;
color: #000000;
padding: 0px 1px;
margin: 0px 6px 0px 0px;
border: none;
}
#MSearchSelect {
float : none;
......
"/*---------------- Search Box */\n"
"\n"
"#MSearchBox { \n"
"#MSearchBox {\n"
" padding: 0px;\n"
" margin: 0px;\n"
" border: none;\n"
......@@ -18,24 +18,14 @@
" background-color: #FFFFFF;\n"
" font-style: normal;\n"
" cursor: text;\n"
" padding: 0px 1px;\n"
" padding: 1px 1px;\n"
" margin: 0px 6px 0px 0px;\n"
" border: none;\n"
" outline: none;\n"
" vertical-align: middle;\n"
"}\n"
"#MSearchBox.MSearchBoxInactive:hover #MSearchField {\n"
" background-color: #FFFFFF;\n"
" padding: 0px 1px;\n"
" margin: 0px 6px 0px 0px;\n"
" border: none;\n"
"}\n"
".MSearchBoxActive #MSearchField {\n"
" background-color: #FFFFFF;\n"
" color: #000000;\n"
" padding: 0px 1px;\n"
" margin: 0px 6px 0px 0px;\n"
" border: none;\n"
"}\n"
"#MSearchSelect {\n"
" float : none;\n"
......
......@@ -50,7 +50,7 @@
Translator class (by the local maintainer) when the localized
translator is made up-to-date again.
*/
class TranslatorKorean : public TranslatorAdapter_1_6_0
class TranslatorKorean : public Translator
{
protected:
friend class TranslatorAdapterBase;
......@@ -1794,6 +1794,40 @@ class TranslatorKorean : public TranslatorAdapter_1_6_0
return "타입 한정자들";
}
//////////////////////////////////////////////////////////////////////////
// new since 1.6.0 (mainly for the new search engine)
//////////////////////////////////////////////////////////////////////////
/*! directory relation for \a name */
virtual QCString trDirRelation(const char *name)
{
return QCString(name)+" 관계";
}
/*! Loading message shown when loading search results */
virtual QCString trLoading()
{
return "로딩중...";
}
/*! Label used for search results in the global namespace */
virtual QCString trGlobalNamespace()
{
return "전역 이름공간";
}
/*! Message shown while searching */
virtual QCString trSearching()
{
return "검색중...";
}
/*! Text shown when no search results are found */
virtual QCString trNoMatches()
{
return "일치하는것 없음";
}
};
#endif
......@@ -5822,8 +5822,7 @@ PageDef *addRelatedPage(const char *name,const QCString &ptitle,
//----------------------------------------------------------------------------
void addRefItem(const QList<ListItemInfo> *sli,
const char *prefix,
const char *name,const char *title,const char *args)
const char *prefix, const char *name,const char *title,const char *args)
{
//printf("addRefItem(sli=%p,prefix=%s,name=%s,title=%s,args=%s)\n",sli,prefix,name,title,args);
if (sli)
......@@ -5833,22 +5832,35 @@ void addRefItem(const QList<ListItemInfo> *sli,
for (slii.toFirst();(lii=slii.current());++slii)
{
RefList *refList = Doxygen::xrefLists->find(lii->type);
if (refList &&
if (refList
#if 0
&&
(
// either not a built-in list or the list is enabled
(lii->type!="todo" || Config_getBool("GENERATE_TODOLIST")) &&
(lii->type!="test" || Config_getBool("GENERATE_TESTLIST")) &&
(lii->type!="bug" || Config_getBool("GENERATE_BUGLIST")) &&
(lii->type!="todo" || Config_getBool("GENERATE_TODOLIST")) &&
(lii->type!="test" || Config_getBool("GENERATE_TESTLIST")) &&
(lii->type!="bug" || Config_getBool("GENERATE_BUGLIST")) &&
(lii->type!="deprecated" || Config_getBool("GENERATE_DEPRECATEDLIST"))
)
)
#endif
)
{
RefItem *item = refList->getRefItem(lii->itemId);
ASSERT(item!=0);
printf("anchor=%s written=%d\n",item->listAnchor.data(),item->written);
item->prefix = prefix;
item->name = name;
item->title = title;
item->args = args;
refList->insertIntoList(title,item);
#if 0
//printf("anchor=%s written=%d\n",item->listAnchor.data(),item->written);
//if (item->written) return;
QCString doc(1000);
QCString doc;
doc = "\\anchor ";
doc += item->listAnchor;
doc += " <dl><dt>";
......@@ -5864,6 +5876,7 @@ void addRefItem(const QList<ListItemInfo> *sli,
doc += "</dd></dl>\n";
addRelatedPage(refList->listName(),refList->pageTitle(),doc,0,refList->listName(),1,0,0,0);
//item->written=TRUE;
#endif
}
}
}
......
......@@ -337,7 +337,7 @@ static void writeWord(const char *word,const char* curr_class=0,bool classLink=F
static void codifyLines(const char *text,const char *cl=0,bool classlink=FALSE)
{
if (text==0) return;
printf("codifyLines(%d,\"%s\")\n",g_yyLineNr,text);
//printf("codifyLines(%d,\"%s\")\n",g_yyLineNr,text);
const char *p=text,*sp=p;
char c;
bool done=FALSE;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment