From 250b2d42feb50bf94dde94291182775783ca146e Mon Sep 17 00:00:00 2001 From: blacksun Date: Sat, 31 Mar 2018 11:21:55 +0000 Subject: [PATCH] Element editor and diagram editor : context menu display only enabled actions git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@5283 bfdf4180-ca20-0410-9c96-a3a8aa849046 --- sources/diagramview.cpp | 11 +++++++++-- sources/editor/qetelementeditor.cpp | 11 ++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/sources/diagramview.cpp b/sources/diagramview.cpp index cee23ff9a..f493d1a91 100644 --- a/sources/diagramview.cpp +++ b/sources/diagramview.cpp @@ -1144,8 +1144,15 @@ void DiagramView::contextMenuEvent(QContextMenuEvent *e) { m_context_menu -> addSeparator(); m_context_menu -> addActions(qde -> m_selection_actions_group.actions()); } - - // affiche le menu contextuel + + //Remove from the context menu the actions which are disabled. + const QList actions = m_context_menu->actions(); + for(QAction *action : actions) + { + if(!action->isEnabled()) + m_context_menu->removeAction(action); + } + m_context_menu -> popup(e -> globalPos()); } e -> accept(); diff --git a/sources/editor/qetelementeditor.cpp b/sources/editor/qetelementeditor.cpp index 1bd15be34..dc03f342d 100644 --- a/sources/editor/qetelementeditor.cpp +++ b/sources/editor/qetelementeditor.cpp @@ -415,7 +415,8 @@ void QETElementEditor::setupMenus() { * @brief QETElementEditor::contextMenuEvent * @param event */ -void QETElementEditor::contextMenu(QPoint p) { +void QETElementEditor::contextMenu(QPoint p) +{ QMenu menu(this); menu.addAction(undo); menu.addAction(redo); @@ -432,6 +433,14 @@ void QETElementEditor::contextMenu(QPoint p) { menu.addMenu(paste_from_menu); menu.addSeparator(); menu.addActions(m_depth_ag -> actions()); + + //Remove from the context menu the actions which are disabled. + const QListactions = menu.actions(); + for(QAction *action : actions) + { + if(!action->isEnabled()) + menu.removeAction(action); + } menu.exec(p); }