From 686d8699c91d615c63163d2b2055a785020169e1 Mon Sep 17 00:00:00 2001 From: forbes Date: Fri, 20 Feb 2026 12:13:23 -0600 Subject: [PATCH] fix(gui): complete toolbar whitelists in EditingContextResolver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The EditingContextResolver controls toolbar visibility via explicit whitelists per editing context. Several contexts had incomplete lists, causing workbench toolbars to be missing compared to base FreeCAD. Changes: partdesign.feature (priority 40): - Add 'Sketcher' toolbar so users can create new sketches from an active Body with features partdesign.body (priority 30): - Add Modeling, Dress-Up, and Transformation toolbars (previously only showed Helper + Sketcher) partdesign.workbench (priority 20): - Add Modeling, Dress-Up, and Transformation toolbars (same as body) sketcher.workbench (priority 20): - Add Geometries, Constraints, B-Spline Tools, Visual Helpers (previously only showed Sketcher + Sketcher Tools) assembly.idle (priority 30): - Add 'Assembly Joints' and 'Assembly Management' toolbars assembly.workbench (priority 20): - Add 'Assembly Joints' and 'Assembly Management' toolbars No changes to sketcher.edit or assembly.edit contexts — those were already correct. --- src/Gui/EditingContext.cpp | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/src/Gui/EditingContext.cpp b/src/Gui/EditingContext.cpp index 5794061892..15f1582df8 100644 --- a/src/Gui/EditingContext.cpp +++ b/src/Gui/EditingContext.cpp @@ -267,7 +267,8 @@ void EditingContextResolver::registerBuiltinContexts() {QStringLiteral("Part Design Helper Features"), QStringLiteral("Part Design Modeling Features"), QStringLiteral("Part Design Dress-Up Features"), - QStringLiteral("Part Design Transformation Features")}, + QStringLiteral("Part Design Transformation Features"), + QStringLiteral("Sketcher")}, /*.priority =*/40, /*.match =*/ []() { @@ -292,7 +293,11 @@ void EditingContextResolver::registerBuiltinContexts() /*.labelTemplate =*/QStringLiteral("Body: {name}"), /*.color =*/QLatin1String(CatppuccinMocha::Mauve), /*.toolbars =*/ - {QStringLiteral("Part Design Helper Features"), QStringLiteral("Sketcher")}, + {QStringLiteral("Part Design Helper Features"), + QStringLiteral("Part Design Modeling Features"), + QStringLiteral("Part Design Dress-Up Features"), + QStringLiteral("Part Design Transformation Features"), + QStringLiteral("Sketcher")}, /*.priority =*/30, /*.match =*/ []() { @@ -307,7 +312,9 @@ void EditingContextResolver::registerBuiltinContexts() /*.labelTemplate =*/QStringLiteral("Assembly: {name}"), /*.color =*/QLatin1String(CatppuccinMocha::Blue), /*.toolbars =*/ - {QStringLiteral("Assembly")}, + {QStringLiteral("Assembly"), + QStringLiteral("Assembly Joints"), + QStringLiteral("Assembly Management")}, /*.priority =*/30, /*.match =*/ []() { @@ -340,7 +347,11 @@ void EditingContextResolver::registerBuiltinContexts() /*.labelTemplate =*/QStringLiteral("Part Design"), /*.color =*/QLatin1String(CatppuccinMocha::Mauve), /*.toolbars =*/ - {QStringLiteral("Part Design Helper Features"), QStringLiteral("Sketcher")}, + {QStringLiteral("Part Design Helper Features"), + QStringLiteral("Part Design Modeling Features"), + QStringLiteral("Part Design Dress-Up Features"), + QStringLiteral("Part Design Transformation Features"), + QStringLiteral("Sketcher")}, /*.priority =*/20, /*.match =*/ []() { @@ -353,7 +364,12 @@ void EditingContextResolver::registerBuiltinContexts() /*.labelTemplate =*/QStringLiteral("Sketcher"), /*.color =*/QLatin1String(CatppuccinMocha::Green), /*.toolbars =*/ - {QStringLiteral("Sketcher"), QStringLiteral("Sketcher Tools")}, + {QStringLiteral("Sketcher"), + QStringLiteral("Sketcher Tools"), + QStringLiteral("Geometries"), + QStringLiteral("Constraints"), + QStringLiteral("B-Spline Tools"), + QStringLiteral("Visual Helpers")}, /*.priority =*/20, /*.match =*/ []() { @@ -366,7 +382,9 @@ void EditingContextResolver::registerBuiltinContexts() /*.labelTemplate =*/QStringLiteral("Assembly"), /*.color =*/QLatin1String(CatppuccinMocha::Blue), /*.toolbars =*/ - {QStringLiteral("Assembly")}, + {QStringLiteral("Assembly"), + QStringLiteral("Assembly Joints"), + QStringLiteral("Assembly Management")}, /*.priority =*/20, /*.match =*/ []() { -- 2.49.1