diff options
Diffstat (limited to 'src/reflist.h')
-rw-r--r-- | src/reflist.h | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/src/reflist.h b/src/reflist.h index f9ba9ea..8c71869 100644 --- a/src/reflist.h +++ b/src/reflist.h @@ -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; }; |