| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| #include <QAction> |
| #include "actionlist.h" |
|
|
| #include "lc_actiongroup.h" |
|
|
| ActionList::ActionList(QWidget* parent) |
| : QListWidget(parent) |
| {} |
|
|
| void ActionList::addActionItem(QAction *action) { |
| auto item = new QListWidgetItem; |
| item->setText(action->text().remove("&")); |
| item->setIcon(action->icon()); |
| item->setWhatsThis(action->objectName()); |
| auto actionGroup = action->actionGroup(); |
| if (actionGroup != nullptr) { |
| LC_ActionGroup* lc_actiongroup = dynamic_cast<LC_ActionGroup*>(actionGroup); |
| if (lc_actiongroup != nullptr) { |
| item->setData(Qt::UserRole, lc_actiongroup->getName()); |
| } |
| } |
| addItem(item); |
| } |
|
|
| void ActionList::fromActionList(const QList<QAction *> &a_list) { |
| m_actionList = a_list; |
| foreach(QAction *a, a_list) { |
| if (a != nullptr) { |
| addActionItem(a); |
| } |
| } |
| } |
|
|
| void ActionList::fromActionMap(QMap<QString, QAction *> &a_map) { |
| foreach(QAction *a, a_map) { |
| if (a != nullptr) { |
| addActionItem(a); |
| } |
| } |
| } |
|
|
| void ActionList::activateAction(QListWidgetItem *item) { |
| foreach(QAction *a, m_actionList) { |
| if (a->text() == item->text()) |
| a->activate(QAction::Trigger); |
| } |
| } |
|
|