diff options
| -rw-r--r-- | facetracknoir/ui.cpp | 13 | ||||
| -rw-r--r-- | opentrack/plugin-support.hpp | 10 | 
2 files changed, 13 insertions, 10 deletions
| diff --git a/facetracknoir/ui.cpp b/facetracknoir/ui.cpp index ad3c4886..d90fc762 100644 --- a/facetracknoir/ui.cpp +++ b/facetracknoir/ui.cpp @@ -19,13 +19,6 @@  #   include <windows.h>  #endif -template<typename t> -static QList<t> sorted(QList<t> xs) -{ -    std::sort(xs.begin(), xs.end(), [&](const t& a, const t& b) { return a->name.toLower() < b->name.toLower(); }); -    return xs; -} -  MainWindow::MainWindow() :      pose_update_timer(this),      kbd_quit(QKeySequence("Ctrl+Q"), this), @@ -47,13 +40,13 @@ MainWindow::MainWindow() :      modules.filters().push_front(std::make_shared<dylib>("", dylib::Filter)); -    for (auto x : sorted(modules.trackers())) +    for (auto x : modules.trackers())          ui.iconcomboTrackerSource->addItem(x->icon, x->name); -    for (auto x : sorted(modules.protocols())) +    for (auto x : modules.protocols())          ui.iconcomboProtocol->addItem(x->icon, x->name); -    for (auto x : sorted(modules.filters())) +    for (auto x : modules.filters())          ui.iconcomboFilter->addItem(x->icon, x->name);      refresh_config_list(); diff --git a/opentrack/plugin-support.hpp b/opentrack/plugin-support.hpp index 8efda800..102d11c4 100644 --- a/opentrack/plugin-support.hpp +++ b/opentrack/plugin-support.hpp @@ -20,6 +20,7 @@  #include <cstdio>  #include <cinttypes>  #include <iostream> +#include <algorithm>  #include <QCoreApplication>  #include <QFile> @@ -245,6 +246,12 @@ private:      QList<mem<dylib>> filter_modules;      QList<mem<dylib>> tracker_modules;      QList<mem<dylib>> protocol_modules; + +    template<typename t> +    static void sort(QList<t>& xs) +    { +        std::sort(xs.begin(), xs.end(), [&](const t& a, const t& b) { return a->name.toLower() < b->name.toLower(); }); +    }      QList<mem<dylib>> filter(dylib::Type t)      { @@ -252,6 +259,9 @@ private:          for (auto x : module_list)              if (x->type == t)                  ret.push_back(x); + +        sort(ret); +          return ret;      }  }; | 
