summaryrefslogtreecommitdiffstats
path: root/src/reflist.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-05-01 18:34:38 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-05-01 18:34:38 (GMT)
commit1708261ebe54b03c45a4bfe3c1e78581779b2a80 (patch)
tree6dab4342e5ad2e3a894d3a0d542c9f73c20aeb51 /src/reflist.cpp
parent5456e9a65c2e7a29f61d17d19906aa9616678ca6 (diff)
downloadDoxygen-1708261ebe54b03c45a4bfe3c1e78581779b2a80.zip
Doxygen-1708261ebe54b03c45a4bfe3c1e78581779b2a80.tar.gz
Doxygen-1708261ebe54b03c45a4bfe3c1e78581779b2a80.tar.bz2
Refactoring: Introduce type names for commonly used container types
Diffstat (limited to 'src/reflist.cpp')
-rw-r--r--src/reflist.cpp25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/reflist.cpp b/src/reflist.cpp
index 26d20ae..feced5c 100644
--- a/src/reflist.cpp
+++ b/src/reflist.cpp
@@ -17,11 +17,34 @@
#include <stdio.h>
#include "reflist.h"
+#include "util.h"
#include "ftextstream.h"
#include "definition.h"
#include "sortdict.h"
#include "config.h"
+RefList::RefList(const char *listName, const char *pageTitle, const char *secTitle) :
+ m_listName(listName), m_fileName(convertNameToFile(listName,FALSE,TRUE)),
+ m_pageTitle(pageTitle), m_secTitle(secTitle)
+{
+}
+
+RefItem *RefList::add()
+{
+ m_id++;
+ std::unique_ptr<RefItem> item = std::make_unique<RefItem>(m_id,this);
+ RefItem *result = item.get();
+ m_entries.push_back(std::move(item));
+ m_lookup.insert({m_id,result});
+ return result;
+}
+
+RefItem *RefList::find(int itemId)
+{
+ auto it = m_lookup.find(itemId);
+ return it!=m_lookup.end() ? it->second : nullptr;
+}
+
bool RefList::isEnabled() const
{
if (m_listName=="todo" && !Config_getBool(GENERATE_TODOLIST)) return false;
@@ -96,6 +119,6 @@ void RefList::generatePage()
}
doc += "</dl>\n";
//printf("generatePage('%s')\n",doc.data());
- addRelatedPage(m_listName,m_pageTitle,doc,m_fileName,1,std::vector<RefItem*>(),0,0,TRUE);
+ addRelatedPage(m_listName,m_pageTitle,doc,m_fileName,1,RefItemVector(),0,0,TRUE);
}