From b3fc34d61b4a5c6b57222a73ae5c92481dffc2c7 Mon Sep 17 00:00:00 2001 From: Paddle Date: Thu, 23 Nov 2023 12:13:41 +0100 Subject: [PATCH] Sketcher : Replace toggle icons. --- src/Mod/Sketcher/Gui/CommandAlterGeometry.cpp | 20 +- src/Mod/Sketcher/Gui/CommandConstraints.cpp | 18 +- src/Mod/Sketcher/Gui/Resources/Sketcher.qrc | 2 + .../Sketcher_ToggleActiveConstraint.svg | 531 +++++++++--- .../constraints/Sketcher_ToggleConstraint.svg | 486 +++++++++-- .../Sketcher_ToggleConstraint_Driven.svg | 455 +++++++++++ .../geometry/Sketcher_ToggleConstruction.svg | 770 +++++++++++++++--- .../Sketcher_ToggleConstruction_Constr.svg | 684 ++++++++++++++++ 8 files changed, 2679 insertions(+), 287 deletions(-) create mode 100644 src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint_Driven.svg create mode 100644 src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction_Constr.svg diff --git a/src/Mod/Sketcher/Gui/CommandAlterGeometry.cpp b/src/Mod/Sketcher/Gui/CommandAlterGeometry.cpp index 84f4528920..d59d02b761 100644 --- a/src/Mod/Sketcher/Gui/CommandAlterGeometry.cpp +++ b/src/Mod/Sketcher/Gui/CommandAlterGeometry.cpp @@ -26,6 +26,7 @@ #include #include +#include #include #include #include @@ -62,7 +63,7 @@ namespace SketcherGui extern GeometryCreationMode geometryCreationMode; /* Constrain commands =======================================================*/ -DEF_STD_CMD_A(CmdSketcherToggleConstruction) +DEF_STD_CMD_AU(CmdSketcherToggleConstruction) CmdSketcherToggleConstruction::CmdSketcherToggleConstruction() : Command("Sketcher_ToggleConstruction") @@ -112,6 +113,23 @@ CmdSketcherToggleConstruction::CmdSketcherToggleConstruction() rcCmdMgr.addCommandMode("ToggleConstruction", "Sketcher_CreatePeriodicBSpline"); rcCmdMgr.addCommandMode("ToggleConstruction", "Sketcher_CompCreateBSpline"); rcCmdMgr.addCommandMode("ToggleConstruction", "Sketcher_CarbonCopy"); + rcCmdMgr.addCommandMode("ToggleConstruction", "Sketcher_ToggleConstruction"); +} + +void CmdSketcherToggleConstruction::updateAction(int mode) +{ + auto act = getAction(); + if (act) { + switch (static_cast(mode)) { + case GeometryCreationMode::Normal: + act->setIcon(Gui::BitmapFactory().iconFromTheme("Sketcher_ToggleConstruction")); + break; + case GeometryCreationMode::Construction: + act->setIcon( + Gui::BitmapFactory().iconFromTheme("Sketcher_ToggleConstruction_Constr")); + break; + } + } } void CmdSketcherToggleConstruction::activated(int iMsg) diff --git a/src/Mod/Sketcher/Gui/CommandConstraints.cpp b/src/Mod/Sketcher/Gui/CommandConstraints.cpp index a181e3e38c..4114986497 100644 --- a/src/Mod/Sketcher/Gui/CommandConstraints.cpp +++ b/src/Mod/Sketcher/Gui/CommandConstraints.cpp @@ -9688,7 +9688,7 @@ bool CmdSketcherConstrainSnellsLaw::isActive() // ====================================================================================== /*** Creation Mode / Toggle to or from Reference ***/ -DEF_STD_CMD_A(CmdSketcherToggleDrivingConstraint) +DEF_STD_CMD_AU(CmdSketcherToggleDrivingConstraint) CmdSketcherToggleDrivingConstraint::CmdSketcherToggleDrivingConstraint() : Command("Sketcher_ToggleDrivingConstraint") @@ -9718,9 +9718,25 @@ CmdSketcherToggleDrivingConstraint::CmdSketcherToggleDrivingConstraint() rcCmdMgr.addCommandMode("ToggleDrivingConstraint", "Sketcher_CompConstrainRadDia"); rcCmdMgr.addCommandMode("ToggleDrivingConstraint", "Sketcher_Dimension"); rcCmdMgr.addCommandMode("ToggleDrivingConstraint", "Sketcher_CompDimensionTools"); + rcCmdMgr.addCommandMode("ToggleDrivingConstraint", "Sketcher_ToggleDrivingConstraint"); // rcCmdMgr.addCommandMode("ToggleDrivingConstraint", "Sketcher_ConstrainSnellsLaw"); } +void CmdSketcherToggleDrivingConstraint::updateAction(int mode) +{ + auto act = getAction(); + if (act) { + switch (static_cast(mode)) { + case ConstraintCreationMode::Driving: + act->setIcon(Gui::BitmapFactory().iconFromTheme("Sketcher_ToggleConstraint")); + break; + case ConstraintCreationMode::Reference: + act->setIcon(Gui::BitmapFactory().iconFromTheme("Sketcher_ToggleConstraint_Driven")); + break; + } + } +} + void CmdSketcherToggleDrivingConstraint::activated(int iMsg) { Q_UNUSED(iMsg); diff --git a/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc b/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc index fdae83de0c..9372e53bd9 100644 --- a/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc +++ b/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc @@ -56,6 +56,7 @@ icons/constraints/Sketcher_Crosshair.svg icons/constraints/Sketcher_ToggleActiveConstraint.svg icons/constraints/Sketcher_ToggleConstraint.svg + icons/constraints/Sketcher_ToggleConstraint_Driven.svg icons/constraints/Sketcher_Toggle_Constraint_Driven.svg icons/constraints/Sketcher_Toggle_Constraint_Driving.svg @@ -197,6 +198,7 @@ icons/geometry/Sketcher_External.svg icons/geometry/Sketcher_Split.svg icons/geometry/Sketcher_ToggleConstruction.svg + icons/geometry/Sketcher_ToggleConstruction_Constr.svg icons/geometry/Sketcher_Trimming.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleActiveConstraint.svg b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleActiveConstraint.svg index 953b750659..5aceee4393 100644 --- a/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleActiveConstraint.svg +++ b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleActiveConstraint.svg @@ -1,103 +1,440 @@ - - - - Sketcher ToggleActiveConstraint - - - - + + + Sketcher ToggleActiveConstraint + + + + - - - + + + - - - + + + - - - - - + + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + - + - + image/svg+xml - + Sketcher ToggleActiveConstraint @@ -127,18 +464,28 @@ - - - - - - - - - - - - + + + + + + diff --git a/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint.svg b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint.svg index 8788a1028c..2a1629ad98 100644 --- a/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint.svg +++ b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint.svg @@ -1,92 +1,398 @@ - - - - - - - + + + + + + - - - - - + + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - + + + + + + + + + + - + - + image/svg+xml - + [Abdullah Tahiri] @@ -114,16 +420,36 @@ - - - - - + + + + - - - - + + + + + diff --git a/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint_Driven.svg b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint_Driven.svg new file mode 100644 index 0000000000..b1b41711a0 --- /dev/null +++ b/src/Mod/Sketcher/Gui/Resources/icons/constraints/Sketcher_ToggleConstraint_Driven.svg @@ -0,0 +1,455 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + [Abdullah Tahiri] + + + 2015-05-26 + https://www.freecad.org/wiki/index.php?title=Artwork + + + FreeCAD + + + FreeCAD/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_ToggleConstraint.svg + + + FreeCAD LGPL2+ + + + https://www.gnu.org/copyleft/lesser.html + + + [agryson] Alexander Gryson + + + + + + + + + + + + + + + + + + diff --git a/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction.svg b/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction.svg index aa08460757..6c2dc2c407 100644 --- a/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction.svg +++ b/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction.svg @@ -1,130 +1,661 @@ - - - - - - - + + + + + + - - - - - + + + + + - - - - + + + + - - - - - + + + + + - - - - + + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - - + + + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - + + + + + + + - + - + image/svg+xml - + [wmayer] @@ -153,15 +684,28 @@ - - - - - - - - - - + + + + + + + diff --git a/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction_Constr.svg b/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction_Constr.svg new file mode 100644 index 0000000000..123fbd44d5 --- /dev/null +++ b/src/Mod/Sketcher/Gui/Resources/icons/geometry/Sketcher_ToggleConstruction_Constr.svg @@ -0,0 +1,684 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + [wmayer] + + + 2011-10-10 + https://www.freecad.org/wiki/index.php?title=Artwork + + + FreeCAD + + + FreeCAD/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_ToggleConstruction.svg + + + FreeCAD LGPL2+ + + + https://www.gnu.org/copyleft/lesser.html + + + [agryson] Alexander Gryson +[JoshuaCall] + + + + + + + + + + + + + +