From 5be05c46d8905221aadf83026bad41f93b2eb36d Mon Sep 17 00:00:00 2001 From: Gres Date: Thu, 9 Apr 2020 20:37:19 +0300 Subject: [PATCH] Change action order in context menu --- src/service/updates.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/service/updates.cpp b/src/service/updates.cpp index 9a9a3c6..c991da5 100644 --- a/src/service/updates.cpp +++ b/src/service/updates.cpp @@ -339,9 +339,10 @@ void Model::initView(QTreeView *view) connect(view, &QAbstractItemView::customContextMenuRequested, // this, [this, view, proxy] { QMenu menu; - menu.addAction(toString(Action::NoAction)); - menu.addAction(toString(Action::Remove)); - menu.addAction(toString(Action::Install)); + using A = Action; + QMap actions; + for (auto i : QVector{A::Install, A::Remove, A::NoAction}) + actions[menu.addAction(toString(i))] = i; menu.addSeparator(); auto updateAll = menu.addAction(tr("Select all updates")); auto reset = menu.addAction(tr("Reset actions")); @@ -366,13 +367,13 @@ void Model::initView(QTreeView *view) if (indexes.isEmpty()) return; - const auto action = menu.actions().indexOf(menuItem); + const auto action = actions[menuItem]; for (const auto &proxyIndex : indexes) { auto modelIndex = proxy->mapToSource(proxyIndex); if (!modelIndex.isValid() || rowCount(modelIndex) > 0) continue; - setData(modelIndex, action, Qt::EditRole); + setData(modelIndex, int(action), Qt::EditRole); } }); }