diff -r 9e18ec63eec3 -r aeb5f203b3eb src/uiutilities.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/uiutilities.cpp Fri Nov 08 19:05:07 2019 +0200 @@ -0,0 +1,26 @@ +#include "uiutilities.h" + +QVector uiutilities::collectActions(QObject* subject) +{ + QVector actions; + for (QAction* action : subject->findChildren()) + { + if (not action->text().isEmpty() + and action->data().isNull() + and not action->objectName().isEmpty()) + { + actions.push_back(action); + } + } + return actions; +} + +uiutilities::KeySequenceMap uiutilities::makeKeySequenceMap(const QVector& actions) +{ + KeySequenceMap result; + for (QAction* action : actions) + { + result[action->objectName()] = action->shortcut(); + } + return result; +}