diff --git a/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp b/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp index 03aae5cfd5..eafeaf700b 100644 --- a/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp +++ b/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp @@ -410,7 +410,7 @@ bool CmdSketcherConvertToNURB::isActive(void) return isSketcherBSplineActive( getActiveGuiDocument(), true ); } -// Convert to NURB +// Increase degree of the spline DEF_STD_CMD_A(CmdSketcherIncreaseDegree) CmdSketcherIncreaseDegree::CmdSketcherIncreaseDegree() @@ -444,7 +444,7 @@ void CmdSketcherIncreaseDegree::activated(int iMsg) const std::vector &SubNames = selection[0].getSubNames(); Sketcher::SketchObject* Obj = static_cast(selection[0].getObject()); - openCommand("Increase degree"); + openCommand("Increase spline degree"); bool ignored=false; @@ -469,8 +469,10 @@ void CmdSketcherIncreaseDegree::activated(int iMsg) } if(ignored) { - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"), - QObject::tr("At least one of the selected objects was not a B-Spline and was ignored.")); + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("Wrong selection"), + QObject::tr("At least one of the selected " + "objects was not a B-Spline and was ignored.")); } commitCommand(); @@ -485,6 +487,18 @@ bool CmdSketcherIncreaseDegree::isActive(void) return isSketcherBSplineActive( getActiveGuiDocument(), true ); } + +// TODO: implement this function to complement Sketcher_BSplineIncreaseDegree + +// Decrease degree of the spline +// DEF_STD_CMD_A(CmdSketcherDecreaseDegree) +// CmdSketcherDecreaseDegree::CmdSketcherDecreaseDegree() +// :Command("Sketcher_BSplineDecreaseDegree") +// { +// ... +// } + + DEF_STD_CMD_A(CmdSketcherIncreaseKnotMultiplicity) CmdSketcherIncreaseKnotMultiplicity::CmdSketcherIncreaseKnotMultiplicity() @@ -505,11 +519,14 @@ void CmdSketcherIncreaseKnotMultiplicity::activated(int iMsg) { Q_UNUSED(iMsg); - #if OCC_VERSION_HEX < 0x060900 - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong OCE/OCC version"), - QObject::tr("This version of OCE/OCC does not support knot operation. You need 6.9.0 or higher")); +#if OCC_VERSION_HEX < 0x060900 + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("Wrong OCE/OCC version"), + QObject::tr("This version of OCE/OCC " + "does not support knot operation. " + "You need 6.9.0 or higher")); return; - #endif +#endif // get the selection std::vector selection; @@ -524,7 +541,8 @@ void CmdSketcherIncreaseKnotMultiplicity::activated(int iMsg) const std::vector &SubNames = selection[0].getSubNames(); if(SubNames.size()>1) { - // Check that only one object is selected, as we need only one object to get the new GeoId after multiplicity change + // Check that only one object is selected, + // as we need only one object to get the new GeoId after multiplicity change QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"), QObject::tr("The selection comprises more than one item. Please select just one knot.")); return; @@ -560,23 +578,26 @@ void CmdSketcherIncreaseKnotMultiplicity::activated(int iMsg) applied = true; - // Warning: GeoId list might have changed as the consequence of deleting pole circles and + // Warning: GeoId list might have changed + // as the consequence of deleting pole circles and // particularly B-spline GeoID might have changed. } catch (const Base::CADKernelError& e) { e.ReportException(); if(e.getTranslatable()) { - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("CAD Kernel Error"), - QObject::tr(e.getMessage().c_str())); + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("CAD Kernel Error"), + QObject::tr(e.getMessage().c_str())); } getSelection().clearSelection(); } catch (const Base::Exception& e) { e.ReportException(); if(e.getTranslatable()) { - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Input Error"), - QObject::tr(e.getMessage().c_str())); + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("Input Error"), + QObject::tr(e.getMessage().c_str())); } getSelection().clearSelection(); @@ -591,7 +612,8 @@ void CmdSketcherIncreaseKnotMultiplicity::activated(int iMsg) } if(notaknot){ - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"), + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("Wrong selection"), QObject::tr("None of the selected elements is a knot of a B-spline")); } @@ -662,11 +684,14 @@ void CmdSketcherDecreaseKnotMultiplicity::activated(int iMsg) { Q_UNUSED(iMsg); - #if OCC_VERSION_HEX < 0x060900 - QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong OCE/OCC version"), - QObject::tr("This version of OCE/OCC does not support knot operation. You need 6.9.0 or higher")); +#if OCC_VERSION_HEX < 0x060900 + QMessageBox::warning(Gui::getMainWindow(), + QObject::tr("Wrong OCE/OCC version"), + QObject::tr("This version of OCE/OCC " + "does not support knot operation. " + "You need 6.9.0 or higher")); return; - #endif +#endif // get the selection std::vector selection; @@ -681,7 +706,8 @@ void CmdSketcherDecreaseKnotMultiplicity::activated(int iMsg) const std::vector &SubNames = selection[0].getSubNames(); if(SubNames.size()>1) { - // Check that only one object is selected, as we need only one object to get the new GeoId after multiplicity change + // Check that only one object is selected, + // as we need only one object to get the new GeoId after multiplicity change QMessageBox::warning(Gui::getMainWindow(), QObject::tr("Wrong selection"), QObject::tr("The selection comprises more than one item. Please select just one knot.")); return; @@ -886,6 +912,8 @@ void CreateSketcherCommandsBSpline(void) rcCmdMgr.addCommand(new CmdSketcherCompBSplineShowHideGeometryInformation()); rcCmdMgr.addCommand(new CmdSketcherConvertToNURB()); rcCmdMgr.addCommand(new CmdSketcherIncreaseDegree()); + // TODO: implement this function to complement CmdSketcherIncreaseDegree + // rcCmdMgr.addCommand(new CmdSketcherDecreaseDegree()); rcCmdMgr.addCommand(new CmdSketcherIncreaseKnotMultiplicity()); rcCmdMgr.addCommand(new CmdSketcherDecreaseKnotMultiplicity()); rcCmdMgr.addCommand(new CmdSketcherCompModifyKnotMultiplicity()); diff --git a/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc b/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc index 8cbe1c0d02..98db684254 100644 --- a/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc +++ b/src/Mod/Sketcher/Gui/Resources/Sketcher.qrc @@ -46,15 +46,19 @@ icons/Sketcher_AlterFillet.svg - icons/Sketcher_BSplineApproximate.svg - icons/Sketcher_BSplineComb.svg - icons/Sketcher_BSplineDecreaseDegree.svg - icons/Sketcher_BSplineDecreaseKnotMultiplicity.svg - icons/Sketcher_BSplineDegree.svg - icons/Sketcher_BSplineIncreaseDegree.svg - icons/Sketcher_BSplineIncreaseKnotMultiplicity.svg - icons/Sketcher_BSplineKnotMultiplicity.svg - icons/Sketcher_BSplinePolygon.svg + + + icons/splines/Sketcher_BSplineApproximate.svg + icons/splines/Sketcher_BSplineComb.svg + icons/splines/Sketcher_BSplineDecreaseDegree.svg + icons/splines/Sketcher_BSplineDecreaseKnotMultiplicity.svg + icons/splines/Sketcher_BSplineDegree.svg + icons/splines/Sketcher_BSplineIncreaseDegree.svg + icons/splines/Sketcher_BSplineIncreaseKnotMultiplicity.svg + icons/splines/Sketcher_BSplineKnotMultiplicity.svg + icons/splines/Sketcher_BSplinePolygon.svg + + icons/Sketcher_CarbonCopy.svg icons/Sketcher_CarbonCopy_Constr.svg icons/Sketcher_Clone.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineApproximate.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineApproximate.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineApproximate.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineApproximate.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineComb.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineComb.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineComb.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineComb.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDecreaseDegree.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDecreaseDegree.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDecreaseDegree.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDecreaseDegree.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDecreaseKnotMultiplicity.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDecreaseKnotMultiplicity.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDecreaseKnotMultiplicity.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDecreaseKnotMultiplicity.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDegree.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDegree.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineDegree.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineDegree.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineIncreaseDegree.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineIncreaseDegree.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineIncreaseDegree.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineIncreaseDegree.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineIncreaseKnotMultiplicity.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineIncreaseKnotMultiplicity.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineIncreaseKnotMultiplicity.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineIncreaseKnotMultiplicity.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineKnotMultiplicity.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineKnotMultiplicity.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplineKnotMultiplicity.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplineKnotMultiplicity.svg diff --git a/src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplinePolygon.svg b/src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplinePolygon.svg similarity index 100% rename from src/Mod/Sketcher/Gui/Resources/icons/Sketcher_BSplinePolygon.svg rename to src/Mod/Sketcher/Gui/Resources/icons/splines/Sketcher_BSplinePolygon.svg diff --git a/src/Mod/Sketcher/InitGui.py b/src/Mod/Sketcher/InitGui.py index db2d5f69a3..9d8eb008a4 100644 --- a/src/Mod/Sketcher/InitGui.py +++ b/src/Mod/Sketcher/InitGui.py @@ -47,6 +47,7 @@ class SketcherWorkbench ( Workbench ): Gui.addIconPath(":/icons/geometry") # Gui.addIconPath(":/icons/obsolete") Gui.addIconPath(":/icons/pointers") + Gui.addIconPath(":/icons/splines") try: import Profiles except ImportError: