Download src/Mod/Part/Gui/CommandParametric.cpp from AbdulElahGwaith/FreeCAD: direct link, hf CLI and curl.
- Browser
- Download file 9.62 kB
-
https://huggingface.co/AbdulElahGwaith/FreeCAD/resolve/main/src/Mod/Part/Gui/CommandParametric.cpp
- Command line
-
hf download hf://AbdulElahGwaith/FreeCAD/src/Mod/Part/Gui/CommandParametric.cpp
-
curl -L -o CommandParametric.cpp https://huggingface.co/AbdulElahGwaith/FreeCAD/resolve/main/src/Mod/Part/Gui/CommandParametric.cpp
9.62 kB
| // SPDX-License-Identifier: LGPL-2.1-or-later | |
| /*************************************************************************** | |
| * Copyright (c) 2002 Jürgen Riegel <juergen.riegel@web.de> * | |
| * * | |
| * This file is part of the FreeCAD CAx development system. * | |
| * * | |
| * This library is free software; you can redistribute it and/or * | |
| * modify it under the terms of the GNU Library General Public * | |
| * License as published by the Free Software Foundation; either * | |
| * version 2 of the License, or (at your option) any later version. * | |
| * * | |
| * This library is distributed in the hope that it will be useful, * | |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of * | |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * | |
| * GNU Library General Public License for more details. * | |
| * * | |
| * You should have received a copy of the GNU Library General Public * | |
| * License along with this library; see the file COPYING.LIB. If not, * | |
| * write to the Free Software Foundation, Inc., 59 Temple Place, * | |
| * Suite 330, Boston, MA 02111-1307, USA * | |
| * * | |
| ***************************************************************************/ | |
| //=========================================================================== | |
| // Utils | |
| //=========================================================================== | |
| namespace | |
| { | |
| QString getAutoGroupCommandStr() | |
| // Helper function to get the python code to add the newly created object to the active Part object | |
| // if present | |
| { | |
| App::Part* activePart = Gui::Application::Instance->activeView()->getActiveObject<App::Part*>( | |
| "part" | |
| ); | |
| if (activePart) { | |
| QString activePartName = QString::fromLatin1(activePart->getNameInDocument()); | |
| return QStringLiteral( | |
| "App.ActiveDocument.getObject('%1\')." | |
| "addObject(App.ActiveDocument.ActiveObject)\n" | |
| ) | |
| .arg(activePartName); | |
| } | |
| return QStringLiteral("# Object created at document root."); | |
| } | |
| } // namespace | |
| //=========================================================================== | |
| // Part_Cylinder | |
| //=========================================================================== | |
| DEF_STD_CMD_A(CmdPartCylinder) | |
| CmdPartCylinder::CmdPartCylinder() | |
| : Command("Part_Cylinder") | |
| { | |
| sAppModule = "Part"; | |
| sGroup = QT_TR_NOOP("Part"); | |
| sMenuText = QT_TR_NOOP("Cylinder"); | |
| sToolTipText = QT_TR_NOOP("Creates a solid cylinder"); | |
| sWhatsThis = "Part_Cylinder"; | |
| sStatusTip = sToolTipText; | |
| sPixmap = "Part_Cylinder_Parametric"; | |
| } | |
| void CmdPartCylinder::activated(int iMsg) | |
| { | |
| Q_UNUSED(iMsg); | |
| QString cmd; | |
| cmd = qApp->translate("CmdPartCylinder", "Cylinder"); | |
| openCommand((const char*)cmd.toUtf8()); | |
| runCommand(Doc, "App.ActiveDocument.addObject(\"Part::Cylinder\",\"Cylinder\")"); | |
| cmd = QStringLiteral("App.ActiveDocument.ActiveObject.Label = \"%1\"") | |
| .arg(qApp->translate("CmdPartCylinder", "Cylinder")); | |
| runCommand(Doc, cmd.toUtf8()); | |
| runCommand(Doc, getAutoGroupCommandStr().toUtf8()); | |
| commitCommand(); | |
| updateActive(); | |
| runCommand(Gui, "Gui.SendMsgToActiveView(\"ViewFit\")"); | |
| } | |
| bool CmdPartCylinder::isActive() | |
| { | |
| if (getActiveGuiDocument()) { | |
| return true; | |
| } | |
| else { | |
| return false; | |
| } | |
| } | |
| //=========================================================================== | |
| // Part_Box | |
| //=========================================================================== | |
| DEF_STD_CMD_A(CmdPartBox) | |
| CmdPartBox::CmdPartBox() | |
| : Command("Part_Box") | |
| { | |
| sAppModule = "Part"; | |
| sGroup = QT_TR_NOOP("Part"); | |
| sMenuText = QT_TR_NOOP("Cube"); | |
| sToolTipText = QT_TR_NOOP("Creates a solid cube"); | |
| sWhatsThis = "Part_Box"; | |
| sStatusTip = sToolTipText; | |
| sPixmap = "Part_Box_Parametric"; | |
| } | |
| void CmdPartBox::activated(int iMsg) | |
| { | |
| Q_UNUSED(iMsg); | |
| QString cmd; | |
| cmd = qApp->translate("CmdPartBox", "Cube"); | |
| openCommand((const char*)cmd.toUtf8()); | |
| runCommand(Doc, "App.ActiveDocument.addObject(\"Part::Box\",\"Box\")"); | |
| cmd = QStringLiteral("App.ActiveDocument.ActiveObject.Label = \"%1\"") | |
| .arg(qApp->translate("CmdPartBox", "Cube")); | |
| runCommand(Doc, cmd.toUtf8()); | |
| runCommand(Doc, getAutoGroupCommandStr().toUtf8()); | |
| commitCommand(); | |
| updateActive(); | |
| runCommand(Gui, "Gui.SendMsgToActiveView(\"ViewFit\")"); | |
| } | |
| bool CmdPartBox::isActive() | |
| { | |
| if (getActiveGuiDocument()) { | |
| return true; | |
| } | |
| else { | |
| return false; | |
| } | |
| } | |
| //=========================================================================== | |
| // Part_Sphere | |
| //=========================================================================== | |
| DEF_STD_CMD_A(CmdPartSphere) | |
| CmdPartSphere::CmdPartSphere() | |
| : Command("Part_Sphere") | |
| { | |
| sAppModule = "Part"; | |
| sGroup = QT_TR_NOOP("Part"); | |
| sMenuText = QT_TR_NOOP("Sphere"); | |
| sToolTipText = QT_TR_NOOP("Creates a solid sphere"); | |
| sWhatsThis = "Part_Sphere"; | |
| sStatusTip = sToolTipText; | |
| sPixmap = "Part_Sphere_Parametric"; | |
| } | |
| void CmdPartSphere::activated(int iMsg) | |
| { | |
| Q_UNUSED(iMsg); | |
| QString cmd; | |
| cmd = qApp->translate("CmdPartSphere", "Sphere"); | |
| openCommand((const char*)cmd.toUtf8()); | |
| runCommand(Doc, "App.ActiveDocument.addObject(\"Part::Sphere\",\"Sphere\")"); | |
| cmd = QStringLiteral("App.ActiveDocument.ActiveObject.Label = \"%1\"") | |
| .arg(qApp->translate("CmdPartSphere", "Sphere")); | |
| runCommand(Doc, cmd.toUtf8()); | |
| runCommand(Doc, getAutoGroupCommandStr().toUtf8()); | |
| commitCommand(); | |
| updateActive(); | |
| runCommand(Gui, "Gui.SendMsgToActiveView(\"ViewFit\")"); | |
| } | |
| bool CmdPartSphere::isActive() | |
| { | |
| if (getActiveGuiDocument()) { | |
| return true; | |
| } | |
| else { | |
| return false; | |
| } | |
| } | |
| //=========================================================================== | |
| // Part_Cone | |
| //=========================================================================== | |
| DEF_STD_CMD_A(CmdPartCone) | |
| CmdPartCone::CmdPartCone() | |
| : Command("Part_Cone") | |
| { | |
| sAppModule = "Part"; | |
| sGroup = QT_TR_NOOP("Part"); | |
| sMenuText = QT_TR_NOOP("Cone"); | |
| sToolTipText = QT_TR_NOOP("Creates a solid cone"); | |
| sWhatsThis = "Part_Cone"; | |
| sStatusTip = sToolTipText; | |
| sPixmap = "Part_Cone_Parametric"; | |
| } | |
| void CmdPartCone::activated(int iMsg) | |
| { | |
| Q_UNUSED(iMsg); | |
| QString cmd; | |
| cmd = qApp->translate("CmdPartCone", "Cone"); | |
| openCommand((const char*)cmd.toUtf8()); | |
| runCommand(Doc, "App.ActiveDocument.addObject(\"Part::Cone\",\"Cone\")"); | |
| cmd = QStringLiteral("App.ActiveDocument.ActiveObject.Label = \"%1\"") | |
| .arg(qApp->translate("CmdPartCone", "Cone")); | |
| runCommand(Doc, cmd.toUtf8()); | |
| runCommand(Doc, getAutoGroupCommandStr().toUtf8()); | |
| commitCommand(); | |
| updateActive(); | |
| runCommand(Gui, "Gui.SendMsgToActiveView(\"ViewFit\")"); | |
| } | |
| bool CmdPartCone::isActive() | |
| { | |
| if (getActiveGuiDocument()) { | |
| return true; | |
| } | |
| else { | |
| return false; | |
| } | |
| } | |
| //=========================================================================== | |
| // Part_Torus | |
| //=========================================================================== | |
| DEF_STD_CMD_A(CmdPartTorus) | |
| CmdPartTorus::CmdPartTorus() | |
| : Command("Part_Torus") | |
| { | |
| sAppModule = "Part"; | |
| sGroup = QT_TR_NOOP("Part"); | |
| sMenuText = QT_TR_NOOP("Torus"); | |
| sToolTipText = QT_TR_NOOP("Creates a solid torus"); | |
| sWhatsThis = "Part_Torus"; | |
| sStatusTip = sToolTipText; | |
| sPixmap = "Part_Torus_Parametric"; | |
| } | |
| void CmdPartTorus::activated(int iMsg) | |
| { | |
| Q_UNUSED(iMsg); | |
| QString cmd; | |
| cmd = qApp->translate("CmdPartTorus", "Torus"); | |
| openCommand((const char*)cmd.toUtf8()); | |
| runCommand(Doc, "App.ActiveDocument.addObject(\"Part::Torus\",\"Torus\")"); | |
| cmd = QStringLiteral("App.ActiveDocument.ActiveObject.Label = \"%1\"") | |
| .arg(qApp->translate("CmdPartTorus", "Torus")); | |
| runCommand(Doc, cmd.toUtf8()); | |
| runCommand(Doc, getAutoGroupCommandStr().toUtf8()); | |
| commitCommand(); | |
| updateActive(); | |
| runCommand(Gui, "Gui.SendMsgToActiveView(\"ViewFit\")"); | |
| } | |
| bool CmdPartTorus::isActive() | |
| { | |
| if (getActiveGuiDocument()) { | |
| return true; | |
| } | |
| else { | |
| return false; | |
| } | |
| } | |
| //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | |
| void CreateParamPartCommands() | |
| { | |
| Gui::CommandManager& rcCmdMgr = Gui::Application::Instance->commandManager(); | |
| rcCmdMgr.addCommand(new CmdPartCylinder()); | |
| rcCmdMgr.addCommand(new CmdPartBox()); | |
| rcCmdMgr.addCommand(new CmdPartSphere()); | |
| rcCmdMgr.addCommand(new CmdPartCone()); | |
| rcCmdMgr.addCommand(new CmdPartTorus()); | |
| } | |