summaryrefslogtreecommitdiffstats
path: root/src/context.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2020-10-19 18:44:40 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2020-10-20 11:51:24 (GMT)
commitd03e8d9411ab3e983fc3413c147fba1a5e5c9dad (patch)
treed834ff826fdf72e526b3bac2772006583535766c /src/context.cpp
parent33b0f4d25dff25b0e50d62eff68155106e88d58d (diff)
downloadDoxygen-d03e8d9411ab3e983fc3413c147fba1a5e5c9dad.zip
Doxygen-d03e8d9411ab3e983fc3413c147fba1a5e5c9dad.tar.gz
Doxygen-d03e8d9411ab3e983fc3413c147fba1a5e5c9dad.tar.bz2
Refactoring: modernize TooltipManager class and source reference lists
- Tooltips are now collected per file instead of globally - Source reference lists now use STL containers
Diffstat (limited to 'src/context.cpp')
-rw-r--r--src/context.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/context.cpp b/src/context.cpp
index 5a9ab38..394e857 100644
--- a/src/context.cpp
+++ b/src/context.cpp
@@ -4943,7 +4943,7 @@ class MemberContext::Private : public DefinitionContext<MemberContext::Private>
Cachable &cache = getCache();
if (!cache.sourceRefs)
{
- cache.sourceRefs.reset(MemberListContext::alloc(m_memberDef->getReferencesMembers(),TRUE));
+ cache.sourceRefs.reset(MemberListContext::alloc(m_memberDef->getReferencesMembers()));
}
return cache.sourceRefs.get();
}
@@ -4952,7 +4952,7 @@ class MemberContext::Private : public DefinitionContext<MemberContext::Private>
Cachable &cache = getCache();
if (!cache.sourceRefBys)
{
- cache.sourceRefBys.reset(MemberListContext::alloc(m_memberDef->getReferencedByMembers(),TRUE));
+ cache.sourceRefBys.reset(MemberListContext::alloc(m_memberDef->getReferencedByMembers()));
}
return cache.sourceRefBys.get();
}
@@ -8581,7 +8581,7 @@ TemplateListIntf::ConstIterator *InheritanceListContext::createIterator() const
class MemberListContext::Private : public GenericNodeListContext
{
public:
- void addMember(MemberDef *md)
+ void addMember(const MemberDef *md)
{
append(MemberContext::alloc(md));
}
@@ -8630,6 +8630,16 @@ MemberListContext::MemberListContext(MemberSDict *list,bool doSort) : RefCounted
}
}
+MemberListContext::MemberListContext(std::vector<const MemberDef *> &&ml) : RefCountedContext("MemberListContext")
+{
+ p = new Private;
+ for (const auto &md : ml)
+ {
+ p->addMember(md);
+ }
+ ml.clear();
+}
+
MemberListContext::~MemberListContext()
{
delete p;