diff --git a/src/plugins/coreplugin/dialogs/settingsdialog.cpp b/src/plugins/coreplugin/dialogs/settingsdialog.cpp index ba20b2fa0c339276da7d820fdcda46f520724f26..3a655db9963728658b23a056b385fe7bfed5986b 100644 --- a/src/plugins/coreplugin/dialogs/settingsdialog.cpp +++ b/src/plugins/coreplugin/dialogs/settingsdialog.cpp @@ -33,6 +33,7 @@ #include #include +#include #include #include #include @@ -64,7 +65,6 @@ namespace Internal { static QPointer m_instance = 0; -// Helpers to sort by category. id bool optionsPageLessThan(const IOptionsPage *p1, const IOptionsPage *p2) { if (p1->category() != p2->category()) @@ -212,6 +212,9 @@ void CategoryModel::setPages(const QList &pages, category->providers.append(provider); } + Utils::sort(m_categories, [](const Category *c1, const Category *c2) { + return c1->id.alphabeticallyBefore(c2->id); + }); endResetModel(); }