diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2015-10-06 05:04:19 +0200 | 
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2015-10-06 05:10:06 +0200 | 
| commit | 0f7a4ba62369a42cf6b513ce0fa59d117551f0ed (patch) | |
| tree | f6263d9e607b9b0d531109e601de041e42e30e0d | |
| parent | 1df21461e663304fc6046a86ba5d2c6ea01042b7 (diff) | |
ui: sort combobox items according to their name, not filename
| -rw-r--r-- | facetracknoir/ui.cpp | 13 | 
1 files changed, 10 insertions, 3 deletions
| diff --git a/facetracknoir/ui.cpp b/facetracknoir/ui.cpp index 984901f6..0672d24a 100644 --- a/facetracknoir/ui.cpp +++ b/facetracknoir/ui.cpp @@ -19,6 +19,13 @@  #   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), @@ -40,13 +47,13 @@ MainWindow::MainWindow() :      modules.filters().push_front(std::make_shared<dylib>("", dylib::Filter)); -    for (auto x : modules.trackers()) +    for (auto x : sorted(modules.trackers()))          ui.iconcomboTrackerSource->addItem(x->icon, x->name); -    for (auto x : modules.protocols()) +    for (auto x : sorted(modules.protocols()))          ui.iconcomboProtocol->addItem(x->icon, x->name); -    for (auto x : modules.filters()) +    for (auto x : sorted(modules.filters()))          ui.iconcomboFilter->addItem(x->icon, x->name);      refresh_config_list(); | 
