summaryrefslogtreecommitdiffstats
path: root/src/filedef.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/filedef.cpp')
-rw-r--r--src/filedef.cpp20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/filedef.cpp b/src/filedef.cpp
index d81a5fb..7593834 100644
--- a/src/filedef.cpp
+++ b/src/filedef.cpp
@@ -1533,12 +1533,16 @@ void FileDef::addMemberToList(MemberList::ListType lt,MemberDef *md)
static bool sortBriefDocs = Config_getBool("SORT_BRIEF_DOCS");
static bool sortMemberDocs = Config_getBool("SORT_MEMBER_DOCS");
MemberList *ml = createMemberList(lt);
- if (((ml->listType()&MemberList::declarationLists) && sortBriefDocs) ||
- ((ml->listType()&MemberList::documentationLists) && sortMemberDocs)
- )
+ ml->setNeedsSorting(
+ ((ml->listType()&MemberList::declarationLists) && sortBriefDocs) ||
+ ((ml->listType()&MemberList::documentationLists) && sortMemberDocs));
+ ml->append(md);
+#if 0
+ if (ml->needsSorting())
ml->inSort(md);
else
ml->append(md);
+#endif
if (lt&MemberList::documentationLists)
{
ml->setInFile(TRUE);
@@ -1546,6 +1550,16 @@ void FileDef::addMemberToList(MemberList::ListType lt,MemberDef *md)
if (ml->listType()&MemberList::declarationLists) md->setSectionList(this,ml);
}
+void FileDef::sortMemberLists()
+{
+ MemberList *ml = m_memberLists.first();
+ while (ml)
+ {
+ if (ml->needsSorting()) { ml->sort(); ml->setNeedsSorting(FALSE); }
+ ml = m_memberLists.next();
+ }
+}
+
MemberList *FileDef::getMemberList(MemberList::ListType lt) const
{
FileDef *that = (FileDef*)this;