From 6a2b3973bcc44e64184ead14208bbdd169bb9c11 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 15 Sep 2026 11:45:51 +1200 Subject: [PATCH] Put the drawing tools in a menu so they can be reached without a mouse MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The nine "Ajouter" actions -- text field, image, PDF, line, rectangle, ellipse, polyline, curve, terminal strip -- were only ever added to m_add_item_tool_bar, and the automatic conductor break only to diagram_tool_bar. None carried a shortcut. A toolbar button has no key, so someone working without a mouse could not add anything at all to a folio. They now appear in an "Ajouter" submenu under Édition, and the conductor break beside m_auto_conductor in Projet, the setting it pairs with. The actions themselves are untouched: a QAction can sit in a menu and a toolbar at once, which is what m_depth_action_group -- created a few lines away, and added to both its toolbar and menu_edition -- has always done. That contrast is why this reads as an oversight rather than a decision. Verified by driving the menus with the keyboard alone under Xvfb: Alt+F opens the File menu, Down then Right crosses to Édition, and Right again opens the Ajouter submenu with all eight actions this build compiles (add_pdf is behind QET_HAS_QTPDF and absent on Qt 5). Found with tools/keyboard-audit in the qelectrotech-docker harness, which reports these ten and now reports none. Co-Authored-By: Claude Opus 5 --- sources/qetdiagrameditor.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index cf6f7d8fd..48a34c515 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -934,6 +934,15 @@ void QETDiagramEditor::setUpMenu() menu_edition -> addAction(m_cut); menu_edition -> addAction(m_copy); menu_edition -> addAction(m_paste); + menu_edition -> addSeparator(); + //The same actions the "Ajouter" toolbar holds. They were toolbar-only, + //which left them unreachable for anyone working without a mouse: a + //toolbar button has no key, so text fields, images and every drawing + //shape simply could not be added. m_depth_action_group below has + //always been in both places; this brings these into line with it. + QMenu *menu_add_item = menu_edition -> addMenu(tr("A&jouter")); + menu_add_item -> setIcon(QET::Icons::Add); + menu_add_item -> addActions(m_add_item_actions_group.actions()); menu_edition -> addSeparator(); menu_edition -> addActions(m_select_actions_group.actions()); menu_edition -> addSeparator(); @@ -952,6 +961,9 @@ void QETDiagramEditor::setUpMenu() // menu Projet menu_project -> addAction(m_project_edit_properties); menu_project -> addAction(m_auto_conductor); + //Sits beside m_auto_conductor, the setting it pairs with. It was + //toolbar-only and so had no keyboard route at all. + menu_project -> addAction(m_auto_break_conductor); menu_project -> addSeparator(); menu_project -> addAction(m_project_add_diagram); menu_project -> addAction(m_remove_diagram_from_project);