From 91a99551081f01e61e73b2735d8721adc55c47d2 Mon Sep 17 00:00:00 2001 From: dish Date: Thu, 12 Sep 2024 05:26:19 +0000 Subject: [PATCH] [bos #42003][EDF] (2024) Shortcuts improvements Multiple changes: 1) Make action_assets.json compliant with current version of SUIT_ShortcutMgr; Place actions in folders; 2) Make undo/redo meta-actions; 3) Update default shortcut preference file; 3) Fix action names from "Primitives" folder; 4) Change name of shortcut section in preference files; 5) Remove useless entries from test.squish/shared/testdata/SalomeApp.xml. --- src/Config/Config_FeatureReader.cpp | 2 +- src/ModuleBase/ModuleBase_ActionInfo.cpp | 56 +- src/ModuleBase/ModuleBase_ActionInfo.h | 8 +- src/ModuleBase/ModuleBase_ListView.cpp | 2 +- .../PrimitivesPlugin_msg_fr.ts | 11 +- src/PrimitivesPlugin/plugin-Primitives.xml | 6 +- src/SHAPERGUI/SHAPERGUI.cpp | 125 +- src/SHAPERGUI/SHAPERGUI.h | 23 +- src/SHAPERGUI/resources/LightApp.xml.in | 248 +- src/SHAPERGUI/resources/action_assets.json | 3351 +++++++++-------- src/XGUI/XGUI_MenuMgr.cpp | 3 +- src/XGUI/XGUI_Workshop.cpp | 26 +- test.squish/shared/testdata/SalomeApp.xml | 13 - 13 files changed, 2030 insertions(+), 1844 deletions(-) diff --git a/src/Config/Config_FeatureReader.cpp b/src/Config/Config_FeatureReader.cpp index f4f773095..2ddbeaad7 100644 --- a/src/Config/Config_FeatureReader.cpp +++ b/src/Config/Config_FeatureReader.cpp @@ -211,7 +211,7 @@ void Config_FeatureReader::fillFeature(xmlNodePtr theFeatureNode, bool isGroupToolbar = false; if (isGroupToolbarId.length() > 0) isGroupToolbar = (isGroupToolbarId == "yes"); - outFeatureMessage->setGroupId(aGroupName); + outFeatureMessage->setGroupId(aGroupName); // Is it ID or name? ID must be language-independent. outFeatureMessage->setWorkbenchId(aWBNName); outFeatureMessage->setToolBarId(isGroupToolbar ? aGroupName : aWBNName); diff --git a/src/ModuleBase/ModuleBase_ActionInfo.cpp b/src/ModuleBase/ModuleBase_ActionInfo.cpp index 8cefcf0f9..59e24e300 100644 --- a/src/ModuleBase/ModuleBase_ActionInfo.cpp +++ b/src/ModuleBase/ModuleBase_ActionInfo.cpp @@ -21,6 +21,12 @@ #include #include + +// #define ModuleBase_ActionInfo_DBG +#ifdef ModuleBase_ActionInfo_DBG +#include +#endif //ModuleBase_ActionInfo_DBG + ModuleBase_ActionInfo::ModuleBase_ActionInfo() { initDefault(); @@ -39,10 +45,6 @@ ModuleBase_ActionInfo::ModuleBase_ActionInfo(const QIcon & theIcon, const QStrin text = theText; } -ModuleBase_ActionInfo::~ModuleBase_ActionInfo() -{ -} - void ModuleBase_ActionInfo::initFrom(QAction* theAction) { // By convenience, QAction for a feature keeps feature's id as data (QVariant); @@ -61,11 +63,17 @@ void ModuleBase_ActionInfo::initFrom(QAction* theAction) // whatsThis = theAction->whatsThis(); shortcut = theAction->shortcut(); font = theAction->font(); + + #ifdef ModuleBase_ActionInfo_DBG + std::wcout << "ModuleBase_ActionInfo::initFrom(QAction*). State after: " << toString().toStdWString() << std::endl; + #endif } void ModuleBase_ActionInfo::initFrom(std::shared_ptr theMessage) { id = QString::fromStdString(theMessage->id()); + workbenchID = QString::fromStdString(theMessage->workbenchId()); + iconFile = QString::fromStdString(theMessage->icon()); if (!iconFile.isEmpty()) { icon = ModuleBase_IconFactory::loadIcon(iconFile); @@ -81,6 +89,10 @@ void ModuleBase_ActionInfo::initFrom(std::shared_ptr theM checkable = theMessage->isUseInput(); // If Feature requires modal Dialog box for input modal = theMessage->isModal(); + + #ifdef ModuleBase_ActionInfo_DBG + std::wcout << "ModuleBase_ActionInfo::initFrom(std::shared_ptr). State after: " << toString().toStdWString() << std::endl; + #endif } void ModuleBase_ActionInfo::initDefault() @@ -100,3 +112,39 @@ void ModuleBase_ActionInfo::initDefault() shortcut = QKeySequence(); font = QFont(); } + +QString ModuleBase_ActionInfo::toString() const +{ + QString res = "ModuleBase_ActionInfo {\n"; + res += "\tid: \"" + id + "\";\n"; + + if (!workbenchID.isEmpty()) + res += "\tworkbenchID: \"" + workbenchID + "\";\n"; + + res += QString("\tcheckable: ") + (checkable ? "+" : "-") + + "; checked: " + (checked ? "+" : "-") + + "; enabled: " + (enabled ? "+" : "-") + + "; visible: " + (visible ? "+" : "-") + + "; modal: " + (modal ? "+" : "-") + ";\n"; + + if (!text.isEmpty()) + res += "\ttext: \"" + text + "\";\n"; + + if (!iconText.isEmpty()) + res += "\ticonText: \"" + iconText + "\";\n"; + + if (!iconFile.isEmpty()) + res += "\ticonFile: \"" + iconFile + "\";\n"; + + if (!toolTip.isEmpty()) + res += "\ttoolTip: \"" + toolTip + "\";\n"; + + if (!toolBar.isEmpty()) + res += "\ttoolBar: \"" + toolBar + "\";\n"; + + if (!shortcut.isEmpty()) + res += "\tshortcut: \"" + shortcut.toString() + "\";\n"; + + res += "};\n"; + return res; +} diff --git a/src/ModuleBase/ModuleBase_ActionInfo.h b/src/ModuleBase/ModuleBase_ActionInfo.h index db5c8ae79..2413ced86 100644 --- a/src/ModuleBase/ModuleBase_ActionInfo.h +++ b/src/ModuleBase/ModuleBase_ActionInfo.h @@ -36,6 +36,8 @@ struct MODULEBASE_EXPORT ModuleBase_ActionInfo { QString id; //!< action's (command) id + QString workbenchID; //!< Workbench's language-independent ID. + bool checkable; //!< action's checkable state bool checked; //!< action's checked state bool enabled; //!< action's enabled state @@ -61,7 +63,7 @@ struct MODULEBASE_EXPORT ModuleBase_ActionInfo ModuleBase_ActionInfo(const QString &text); //! Initializes structure with default values, except icon and text ModuleBase_ActionInfo(const QIcon &icon, const QString &text); - virtual ~ModuleBase_ActionInfo(); + virtual ~ModuleBase_ActionInfo() = default; //! Fills itself with info from given \param theAction void initFrom(QAction* theAction); @@ -71,6 +73,10 @@ struct MODULEBASE_EXPORT ModuleBase_ActionInfo protected: //! Initializes structure with default values, like QAction() void initDefault(); + +public: + //! For debug purposes. + QString toString() const; }; typedef ModuleBase_ActionInfo ActionInfo; diff --git a/src/ModuleBase/ModuleBase_ListView.cpp b/src/ModuleBase/ModuleBase_ListView.cpp index d0a5255d4..e35bc4a5e 100644 --- a/src/ModuleBase/ModuleBase_ListView.cpp +++ b/src/ModuleBase/ModuleBase_ListView.cpp @@ -48,7 +48,7 @@ ModuleBase_ListView::ModuleBase_ListView(QWidget* theParent, const QString& theO theParent, this, SLOT(onCopyItem())); myCopyAction->setEnabled(false); myListControl->addAction(myCopyAction); - SUIT_ShortcutMgr::get()->registerAction("SHAPER/#TOT_DESK_EDIT_COPY", myCopyAction); + SUIT_ShortcutMgr::get()->registerAction("SHAPER/Edit/#Clipboard_Copy", myCopyAction); myDeleteAction = ModuleBase_Tools::createAction(QIcon(":pictures/delete.png"), tr("Delete"), theParent, this, SIGNAL(deleteActionClicked())); diff --git a/src/PrimitivesPlugin/PrimitivesPlugin_msg_fr.ts b/src/PrimitivesPlugin/PrimitivesPlugin_msg_fr.ts index aee9f30b1..8a3fb8ba3 100644 --- a/src/PrimitivesPlugin/PrimitivesPlugin_msg_fr.ts +++ b/src/PrimitivesPlugin/PrimitivesPlugin_msg_fr.ts @@ -205,7 +205,7 @@ Cône - Create a Cone + Create a cone Créer un cône @@ -529,7 +529,7 @@ Torus - Create a Torus + Create a torus Créer un tore @@ -593,12 +593,7 @@ Tube - Create a Tube - - Créer un tube - - - Create a Tube + Create a tube Créer un tube diff --git a/src/PrimitivesPlugin/plugin-Primitives.xml b/src/PrimitivesPlugin/plugin-Primitives.xml index f743fef21..48d584cc3 100644 --- a/src/PrimitivesPlugin/plugin-Primitives.xml +++ b/src/PrimitivesPlugin/plugin-Primitives.xml @@ -19,19 +19,19 @@ - - - diff --git a/src/SHAPERGUI/SHAPERGUI.cpp b/src/SHAPERGUI/SHAPERGUI.cpp index b920afc42..17c8b0aa5 100644 --- a/src/SHAPERGUI/SHAPERGUI.cpp +++ b/src/SHAPERGUI/SHAPERGUI.cpp @@ -715,42 +715,33 @@ SHAPERGUI_OCCSelector* SHAPERGUI::createSelector(SUIT_ViewManager* theMgr) } return 0; } - //****************************************************** + CAM_DataModel* SHAPERGUI::createDataModel() { return new SHAPERGUI_DataModel(this); } - -QAction* SHAPERGUI::addFeature(const QString& theWBName, const ActionInfo& theInfo, - const bool isAddSeparator) -{ - return addFeature(theWBName, - theInfo.toolBar, - theInfo.id, - theInfo.text, - //Issue #650: in the SALOME mode the tooltip should be same as text - theInfo.text, - theInfo.icon, - theInfo.shortcut, - theInfo.checkable, - isAddSeparator, - theInfo.toolTip); -} - //****************************************************** -QAction* SHAPERGUI::addFeature(const QString& theWBName, const QString& theTBName, - const QString& theId, const QString& theTitle, const QString& theTip, - const QIcon& theIcon, const QKeySequence& theKeys, - bool isCheckable, const bool isAddSeparator, - const QString& theStatusTip) -{ + +QAction* SHAPERGUI::addFeature( + const QString& theWorkBenchID, + const QString& theWorkBenchName, + const QString& theToolBarName, + const QString& theActionIdLastToken, + const QString& theActionTitle, + const QString& theActionToolTip, + const QString& theActionStatusTip, + const QIcon& theActionIcon, + const QKeySequence& theKS = QKeySequence(), + const bool theIsCheckable = false, + const bool theAddSeparator = false +) { static QString aLastTool = ""; static int aNb = 0; if (aLastTool.isEmpty()) - aLastTool = theWBName; - else if (theWBName != aLastTool) { - aLastTool = theWBName; + aLastTool = theWorkBenchName; + else if (theWorkBenchName != aLastTool) { + aLastTool = theWorkBenchName; if (aNb > 20) { desktop()->addToolBarBreak(); aNb = 0; @@ -762,18 +753,20 @@ QAction* SHAPERGUI::addFeature(const QString& theWBName, const QString& theTBNam myActionsList.append(aId); SUIT_Desktop* aDesk = application()->desktop(); int aKeys = 0; - for (int i = 0; i < theKeys.count(); i++) - aKeys += theKeys[i]; + for (int i = 0; i < theKS.count(); i++) + aKeys += theKS[i]; - QAction* aAction = createAction(aId, theTip, theIcon, theTitle, theTip, aKeys, aDesk, - isCheckable, nullptr, nullptr, theId); - aAction->setStatusTip(theStatusTip); + const QString inModuleActionID = theWorkBenchID.isEmpty() ? theActionIdLastToken : theWorkBenchID + "/" + theActionIdLastToken ; + QAction* aAction = createAction(aId, theActionToolTip, theActionIcon, theActionTitle, theActionToolTip, theKS, + aDesk, theIsCheckable, nullptr, nullptr, inModuleActionID); - aAction->setData(theId); + aAction->setStatusTip(theActionStatusTip); + + aAction->setData(theActionIdLastToken); - int aWBMenu = createMenu(theWBName, -1, -1, 30/*10-Window, 1000 - Help*/); + const int aWBMenu = createMenu(theWorkBenchName, -1, -1, 30/*10-Window, 1000 - Help*/); - if( theId == "PointCoordinates" ) + if( theActionIdLastToken == "PointCoordinates" ) createMenu(separator(), aWBMenu); #ifdef _DEBUG @@ -781,22 +774,62 @@ QAction* SHAPERGUI::addFeature(const QString& theWBName, const QString& theTBNam #endif createMenu(aId, aWBMenu); - if (isAddSeparator) + if (theAddSeparator) createMenu(separator(), aWBMenu); - int aWBTool = createTool(theTBName, theTBName); + int aWBTool = createTool(theToolBarName, theToolBarName); #ifdef _DEBUG int aToolId = #endif createTool(aId, aWBTool); - registerCommandToolbar(theTBName, aId); - if (isAddSeparator) { + registerCommandToolbar(theToolBarName, aId); + if (theAddSeparator) { createTool(separator(), aWBTool); - registerCommandToolbar(theTBName, -1); + registerCommandToolbar(theToolBarName, -1); } connect(aAction, SIGNAL(triggered(bool)), this, SLOT(logShaperGUIEvent())); return aAction; } +//****************************************************** + +QAction* SHAPERGUI::addFeature(const QString& theWorkBenchName, const ActionInfo& theInfo, const bool theAddSeparator) +{ + return addFeature( + theInfo.workbenchID, + theWorkBenchName, + theInfo.toolBar, + theInfo.id, + theInfo.text, + theInfo.text, //Issue #650: in the SALOME mode the tooltip should be same as text. + theInfo.toolTip, + theInfo.icon, + theInfo.shortcut, + theInfo.checkable, + theAddSeparator + ); +} +//****************************************************** + +QAction* SHAPERGUI::addFeature(const QString& theWBName, const QString& theTBName, + const QString& theIdLastToken, const QString& theTitle, const QString& theTip, + const QIcon& theIcon, const QKeySequence& theKeySequence = QKeySequence(), + const bool theIsCheckable = false, const bool theAddSeparator = false, + const QString& theStatusTip = "") +{ + return addFeature( + "" /*theWorkBenchID*/, + theWBName, + theTBName, + theIdLastToken, + theTitle, + theTip, + theStatusTip, + theIcon, + theKeySequence, + theIsCheckable, + theAddSeparator + ); +} bool SHAPERGUI::isFeatureOfNested(const QAction* theAction) { @@ -842,12 +875,12 @@ QAction* SHAPERGUI::addFeatureOfNested(const QString& theWBName, //****************************************************** QAction* SHAPERGUI::addDesktopCommand(const QString& theId, const QString& theTitle, - const QString& theTip, const QIcon& theIcon, - const QKeySequence& theKeys, bool isCheckable, - const char* theMenuSourceText, - const QString& theSubMenu, - const int theMenuPosition, - const int theSubMenuPosition) + const QString& theTip, const QIcon& theIcon, + const QKeySequence& theKeys, bool isCheckable, + const char* theMenuSourceText, + const QString& theSubMenu, + const int theMenuPosition, + const int theSubMenuPosition) { int aMenu = createMenu(tr(theMenuSourceText), -1, -1); if (!theSubMenu.isNull()) diff --git a/src/SHAPERGUI/SHAPERGUI.h b/src/SHAPERGUI/SHAPERGUI.h index 631ac080e..c0f5b93e4 100644 --- a/src/SHAPERGUI/SHAPERGUI.h +++ b/src/SHAPERGUI/SHAPERGUI.h @@ -67,16 +67,29 @@ Q_OBJECT //--- XGUI connector interface ----- + virtual QAction* addFeature( + const QString& theWorkBenchID, + const QString& theWorkBenchName, + const QString& theToolBarName, + const QString& theActionIdLastToken, + const QString& theActionTitle, + const QString& theActionToolTip, + const QString& theActionStatusTip, + const QIcon& theActionIcon, + const QKeySequence& theKS, + const bool theIsCheckable, + const bool theAddSeparator + ); + virtual QAction* addFeature(const QString& theWBName, const QString& theTBName, - const QString& theId, const QString& theTitle, + const QString& theIdLastToken, const QString& theTitle, const QString& theTip, const QIcon& theIcon, const QKeySequence& theKeys/* = QKeySequence()*/, - bool isCheckable /*= false*/, const bool isAddSeparator/* = false*/, - const QString& theStatusTip); + const bool theIsCheckable /* = false*/, const bool theAddSeparator/* = false*/, + const QString& theStatusTip /* = ""*/); //! Add feature (QAction) in the \a theWBName toolbar with given \a theInfo about action - virtual QAction* addFeature(const QString& theWBName, - const ActionInfo& theInfo, const bool isAddSeparator); + virtual QAction* addFeature(const QString& theWBName, const ActionInfo& theInfo, const bool theAddSeparator); /// Add a nested feature /// \param theWBName a workbench name diff --git a/src/SHAPERGUI/resources/LightApp.xml.in b/src/SHAPERGUI/resources/LightApp.xml.in index 06636c0fb..ed2f9f047 100644 --- a/src/SHAPERGUI/resources/LightApp.xml.in +++ b/src/SHAPERGUI/resources/LightApp.xml.in @@ -66,131 +66,129 @@
-
- - - - - - - - - - - - - - - - - - - - - +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/src/SHAPERGUI/resources/action_assets.json b/src/SHAPERGUI/resources/action_assets.json index cd440418d..e2cd0c869 100644 --- a/src/SHAPERGUI/resources/action_assets.json +++ b/src/SHAPERGUI/resources/action_assets.json @@ -1,1626 +1,1733 @@ { - "SHAPER/AngularCopy": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/multirotation.svg", - "langDependentAssets": { - "en": { - "name": "Angular Copy", - "tooltip": "Perform copy and rotate" - }, - "fr": { - "name": "Copie angulaire", - "tooltip": "Effectuer une copie et une rotation" - } - } - }, - "SHAPER/Axis": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/axis.png", - "langDependentAssets": { - "en": { - "name": "Axis", - "tooltip": "Create axis" - }, - "fr": { - "name": "Axe", - "tooltip": "Créer un axe" - } - } - }, - "SHAPER/BoundingBoxMacro": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bounding.png", - "langDependentAssets": { - "en": { - "name": "Bounding box", - "tooltip": "Calculate the bounding box" - }, - "fr": { - "name": "Boîte englobante", - "tooltip": "Calculer la boîte englobante" - } - } - }, - "SHAPER/Box": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/box.png", - "langDependentAssets": { - "en": { - "name": "Box", - "tooltip": "Create a box" - }, - "fr": { - "name": "Boîte", - "tooltip": "Créer une boîte" - } - } - }, - "SHAPER/Chamfer": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/chamfer.png", - "langDependentAssets": { - "en": { - "name": "Chamfer", - "tooltip": "Perform chamfer on face or edge" - }, - "fr": { - "name": "Chanfrein", - "tooltip": "Effectuer un chanfrein sur la face ou l'arête" - } - } - }, - "SHAPER/Common": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_common.png", - "langDependentAssets": { - "en": { - "name": "Common", - "tooltip": "Perform boolean common operation with objects" - }, - "fr": { - "name": "Intersection", - "tooltip": "Effectuer l'opération booléenne intersection avec des objets" - } - } - }, - "SHAPER/CompSolid": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_compsolid.png", - "langDependentAssets": { - "en": { - "name": "CompSolid", - "tooltip": "Create a compsolid from solids or other compsolids" - }, - "fr": { - "name": "Solide Composite", - "tooltip": "Créer un solide composite à partir de solides ou d'autres solides composites" - } - } - }, - "SHAPER/Compound": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_compound.png", - "langDependentAssets": { - "en": { - "name": "Compound", - "tooltip": "Create a compound of objects" - }, - "fr": { - "name": "Ensemble", - "tooltip": "Créer un ensemble" - } - } - }, - "SHAPER/Cone": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/cone.png", - "langDependentAssets": { - "en": { - "name": "Cone", - "tooltip": "Create a Cone" - }, - "fr": { - "name": "Cône", - "tooltip": "Créer un cône" - } - } - }, - "SHAPER/Copy": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/copy.png", - "langDependentAssets": { - "en": { - "name": "Copy", - "tooltip": "Copies results or sub-results" - }, - "fr": { - "name": "Copie", - "tooltip": "Copie les résultats ou les sous-résultats" - } - } - }, - "SHAPER/Cut": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_cut.png", - "langDependentAssets": { - "en": { - "name": "Cut", - "tooltip": "Perform boolean cut operation with objects" - }, - "fr": { - "name": "Découpe", - "tooltip": "Effectuer l'opération booléenne découpe avec des objets" - } - } - }, - "SHAPER/Cylinder": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/cylinder.png", - "langDependentAssets": { - "en": { - "name": "Cylinder", - "tooltip": "Create a cylinder" - }, - "fr": { - "name": "Cylindre", - "tooltip": "Créer un cylindre" - } - } - }, - "SHAPER/Defeaturing": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/defeaturing.png", - "langDependentAssets": { - "en": { - "name": "Defeaturing", - "tooltip": "Perform removing faces from solid" - }, - "fr": { - "name": "Supprimer un détail", - "tooltip": "Effectuer la suppression de faces d'un solide" - } - } - }, - "SHAPER/Dump": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Dump", - "tooltip": "Dump Python script" - }, - "fr": { - "name": "Générer un script", - "tooltip": "Générer un script Python" - } - } - }, - "SHAPER/Duplicate": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/duplicate.png", - "langDependentAssets": { - "en": { - "name": "Duplicate part", - "tooltip": "Duplicate active part" - }, - "fr": { - "name": "Dupliquer pièce", - "tooltip": "Dupliquer la pièce active" - } - } - }, - "SHAPER/EXPORT_PART_CMD": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Part...", - "tooltip": "Export a part of the current document into a file" - }, - "fr": { - "name": "Pièce...", - "tooltip": "Exporter une pièce du document courant dans un fichier" - } - } - }, - "SHAPER/EXPORT_SHAPE_CMD": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Exchange/export.png", - "langDependentAssets": { - "en": { - "name": "To CAD format...", - "tooltip": "Export shape to a CAD format file" - }, - "fr": { - "name": "Au format CAO...", - "tooltip": "Exportation de la forme vers un fichier au format CAO" - } - } - }, - "SHAPER/Edge": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_edge.png", - "langDependentAssets": { - "en": { - "name": "Edge", - "tooltip": "Create edges from sketch edges or other edge objects" - }, - "fr": { - "name": "Arête", - "tooltip": "Créer des arêtes à partir d'arêtes d'esquisse ou d'objets arêtes" - } - } - }, - "SHAPER/ExportToGEOM": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Connector/geom_export.png", - "langDependentAssets": { - "en": { - "name": "Export to GEOM", - "tooltip": "Export all results and groups into GEOM module" - }, - "fr": { - "name": "Exporter vers GEOM", - "tooltip": "Exporter tous les résultats et groupes dans le module GEOM" - } - } - }, - "SHAPER/Extrusion": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion.png", - "langDependentAssets": { - "en": { - "name": "Extrusion", - "tooltip": "Create a solid by extrusion of a face" - }, - "fr": { - "name": "Extrusion", - "tooltip": "Créer un solide par extrusion d'une face" - } - } - }, - "SHAPER/ExtrusionCut": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion_cut.png", - "langDependentAssets": { - "en": { - "name": "ExtrusionCut", - "tooltip": "Cuts an extrusion from a solid" - }, - "fr": { - "name": "Enlèvement de matière extrudé", - "tooltip": "Coupe une extrusion d'un solide" - } - } - }, - "SHAPER/ExtrusionFuse": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion_fuse.png", - "langDependentAssets": { - "en": { - "name": "ExtrusionFuse", - "tooltip": "Fuses an extrusion with a solid" - }, - "fr": { - "name": "Bossage extrudé", - "tooltip": "Fusionne une extrusion avec un solide" - } - } - }, - "SHAPER/Face": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_face.png", - "langDependentAssets": { - "en": { - "name": "Face", - "tooltip": "Create a face from edges, wires and faces" - }, - "fr": { - "name": "Face", - "tooltip": "Créer une face à partir d'arêtes, de contours et de faces" - } - } - }, - "SHAPER/Field": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/field.png", - "langDependentAssets": { - "en": { - "name": "Field", - "tooltip": "Create fields for selected shapes" - }, - "fr": { - "name": "Champ", - "tooltip": "Créer des champs pour les formes sélectionnées" - } - } - }, - "SHAPER/Fillet": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fillet.png", - "langDependentAssets": { - "en": { - "name": "Fillet", - "tooltip": "Perform fillet on face or edge" - }, - "fr": { - "name": "Congé", - "tooltip": "Effectuer un congé sur la face ou l'arête" - } - } - }, - "SHAPER/Fillet1D": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fillet1d.png", - "langDependentAssets": { - "en": { - "name": "1D-fillet", - "tooltip": "Perform fillet on vertices of a wire" - }, - "fr": { - "name": "1D-congé", - "tooltip": "Effectuer un congé sur les sommets d'un contour" - } - } - }, - "SHAPER/Filling": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_filling.png", - "langDependentAssets": { - "en": { - "name": "Filling", - "tooltip": "Create face from list of edges" - }, - "fr": { - "name": "Remplissage", - "tooltip": "Créer une face à partir d'une liste d'arêtes" - } - } - }, - "SHAPER/Fuse": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_fuse.png", - "langDependentAssets": { - "en": { - "name": "Fuse", - "tooltip": "Perform boolean fuse operation with objects" - }, - "fr": { - "name": "Fusionner", - "tooltip": "Effectuer l'opération booléenne fusion avec des objets" - } - } - }, - "SHAPER/FusionFaces": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fusion_faces.png", - "langDependentAssets": { - "en": { - "name": "Fuse Faces", - "tooltip": "Performs fusion of connected faces" - }, - "fr": { - "name": "Fusionner des faces", - "tooltip": "Effectue la fusion de faces connectées" - } - } - }, - "SHAPER/GeometryCalculation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/geometryCalculation.png", - "langDependentAssets": { - "en": { - "name": "Geometry calculation", - "tooltip": "Calculate properties of objects" - }, - "fr": { - "name": "Calcul de la géometrie", - "tooltip": "Calculer les propriétés des objets" - } - } - }, - "SHAPER/GlueFaces": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/glue_faces.png", - "langDependentAssets": { - "en": { - "name": "Glue Faces", - "tooltip": "Perform gluing of connected faces" - }, - "fr": { - "name": "Recoller les faces", - "tooltip": "Effectuer le collage des faces connectées" - } - } - }, - "SHAPER/Group": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/shape_group.png", - "langDependentAssets": { - "en": { - "name": "Group", - "tooltip": "Create named collection of geometry entities" - }, - "fr": { - "name": "Groupe", - "tooltip": "Créer une collection nommée d'entités géométriques" - } - } - }, - "SHAPER/GroupAddition": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_addition.png", - "langDependentAssets": { - "en": { - "name": "Group Addition", - "tooltip": "Join several groups to single group" - }, - "fr": { - "name": "Addition de groupes", - "tooltip": "Joindre plusieurs groupes pour former un seul groupe" - } - } - }, - "SHAPER/GroupIntersection": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_intersection.png", - "langDependentAssets": { - "en": { - "name": "Group Intersection", - "tooltip": "Get elements existing in all groups" - }, - "fr": { - "name": "Intersection de groupes", - "tooltip": "Obtenir les éléments existants dans tous les groupes" - } - } - }, - "SHAPER/GroupShape": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/svg/group_shape.svg", - "langDependentAssets": { - "en": { - "name": "Group Shape", - "tooltip": "Join several groups to single shape" - }, - "fr": { - "name": "Forme à partir de groupes", - "tooltip": "Joindre plusieurs groupes dans une forme seule" - } - } - }, - "SHAPER/GroupSubstraction": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_substraction.png", - "langDependentAssets": { - "en": { - "name": "Group Substraction", - "tooltip": "Exclude elements existing tool groups" - }, - "fr": { - "name": "Soustraction de groupes", - "tooltip": "Exclure des éléments des groupes d'outils existants" - } - } - }, - "SHAPER/IMPORT_IMAGE_CMD": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Picture...", - "tooltip": "Import a picture from an image file" - }, - "fr": { - "name": "Une image...", - "tooltip": "Import a picture from an image file" - } - } - }, - "SHAPER/IMPORT_PART_CMD": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Part...", - "tooltip": "Import structure of a part" - }, - "fr": { - "name": "Pièce...", - "tooltip": "Structure d'importation d'une pièce" - } - } - }, - "SHAPER/IMPORT_SHAPE_CMD": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Exchange/import.png", - "langDependentAssets": { - "en": { - "name": "From CAD format...", - "tooltip": "Import shape from a CAD format file" - }, - "fr": { - "name": "À partir du format CAO...", - "tooltip": "Importer une forme à partir d'un fichier au format CAO" - } - } - }, - "SHAPER/ImportResult": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/import_result.png", - "langDependentAssets": { - "en": { - "name": "Import Result", - "tooltip": "Copies results from other parts" - }, - "fr": { - "name": "Importer le résultat", - "tooltip": "Copie les résultats d'autres pièces" - } - } - }, - "SHAPER/Interpolation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_interpolation.png", - "langDependentAssets": { - "en": { - "name": "Interpolation", - "tooltip": "Create an interpolation curve from points" - }, - "fr": { - "name": "Interpolation", - "tooltip": "Créer une courbe d'interpolation à partir de points" - } - } - }, - "SHAPER/Intersection": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/intersection.png", - "langDependentAssets": { - "en": { - "name": "Intersection", - "tooltip": "Intersect objects with tools" - }, - "fr": { - "name": "Section", - "tooltip": "Intersection d'objets avec des outils" - } - } - }, - "SHAPER/LimitTolerance": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/limit_tolerance.png", - "langDependentAssets": { - "en": { - "name": "Limit Tolerance", - "tooltip": "Limit the tolerance on a shape" - }, - "fr": { - "name": "Limiter la tolérance", - "tooltip": "Limiter la tolérance sur une forme" - } - } - }, - "SHAPER/LinearCopy": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/multitranslation.png", - "langDependentAssets": { - "en": { - "name": "Linear copy", - "tooltip": "Perform copy and translate" - }, - "fr": { - "name": "Copie linéaire", - "tooltip": "Effectuer la copie et la translation" - } - } - }, - "SHAPER/Loft": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/loft.png", - "langDependentAssets": { - "en": { - "name": "Loft", - "tooltip": "Generates a shape with two elements" - }, - "fr": { - "name": "Lissage", - "tooltip": "Génére une forme avec deux éléments" - } - } - }, - "SHAPER/Measurement": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/measurement.png", - "langDependentAssets": { - "en": { - "name": "Measurement", - "tooltip": "Calculate properties of objects" - }, - "fr": { - "name": "Mesure", - "tooltip": "Calculer les propriétés des objets" - } - } - }, - "SHAPER/NormalMacro": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/normale.png", - "langDependentAssets": { - "en": { - "name": "Normal to a face", - "tooltip": "Calculate the normal to a face" - }, - "fr": { - "name": "Normale d'une face", - "tooltip": "Calcule la normale d'une face" - } - } - }, - "SHAPER/OPEN_CMD": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Part set...", - "tooltip": "Import native file" - }, - "fr": { - "name": "Assemblage...", - "tooltip": "Importer un fichier natif" - } - } - }, - "SHAPER/Parameter": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/expression.png", - "langDependentAssets": { - "en": { - "name": "Parameter", - "tooltip": "Create a parameter" - }, - "fr": { - "name": "Paramètre", - "tooltip": "Créer un paramètre" - } - } - }, - "SHAPER/ParametersMgr": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/paper_roll.png", - "langDependentAssets": { - "en": { - "name": "Parameters", - "tooltip": "Manage parameters" - }, - "fr": { - "name": "Paramètres", - "tooltip": "Gérer les paramètres" - } - } - }, - "SHAPER/Part": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/part_ico.png", - "langDependentAssets": { - "en": { - "name": "New part", - "tooltip": "Create part" - }, - "fr": { - "name": "Nouvelle pièce", - "tooltip": "Créer une pièce" - } - } - }, - "SHAPER/Partition": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/partition.png", - "langDependentAssets": { - "en": { - "name": "Partition", - "tooltip": "Perform partition operations with solids" - }, - "fr": { - "name": "Partition", - "tooltip": "Effectuer des opérations de partition avec des solides" - } - } - }, - "SHAPER/Pipe": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/pipe.png", - "langDependentAssets": { - "en": { - "name": "Pipe", - "tooltip": "Generates extrusion along a path" - }, - "fr": { - "name": "Tuyau", - "tooltip": "Génère une extrusion le long d'un chemin" - } - } - }, - "SHAPER/Placement": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/placement.png", - "langDependentAssets": { - "en": { - "name": "Placement", - "tooltip": "Place objects relatively to another one" - }, - "fr": { - "name": "Placement", - "tooltip": "Placez les objets l'un par rapport à l'autre" - } - } - }, - "SHAPER/Plane": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/plane.png", - "langDependentAssets": { - "en": { - "name": "Plane", - "tooltip": "Create plane" - }, - "fr": { - "name": "Plan", - "tooltip": "Créer un plan" - } - } - }, - "SHAPER/Point": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/point.png", - "langDependentAssets": { - "en": { - "name": "Point", - "tooltip": "Create point" - }, - "fr": { - "name": "Point", - "tooltip": "Créer un point" - } - } - }, - "SHAPER/PointCoordinates": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/point_coord.png", - "langDependentAssets": { - "en": { - "name": "Point coordinates", - "tooltip": "View point coordinate" - }, - "fr": { - "name": "Coordonnées d'un point", - "tooltip": "Voir les coordonnées du point" - } - } - }, - "SHAPER/Polyline": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_polyline.png", - "langDependentAssets": { - "en": { - "name": "Polyline", - "tooltip": "Create a polyline from points" - }, - "fr": { - "name": "Polyligne", - "tooltip": "Créer une polyligne à partir de points" - } - } - }, - "SHAPER/REDO_CMD": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/redo.png", - "langDependentAssets": { - "en": { - "name": "Redo", - "tooltip": "Redo last command" - }, - "fr": { - "name": "Refaire", - "tooltip": "Refaire la dernière commande" - } - } - }, - "SHAPER/Recover": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/recover.png", - "langDependentAssets": { - "en": { - "name": "Recover", - "tooltip": "Visualize concealed objects" - }, - "fr": { - "name": "Récupérer", - "tooltip": "Visualiser les objets cachés" - } - } - }, - "SHAPER/Remove": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/remove.png", - "langDependentAssets": { - "en": { - "name": "Remove part", - "tooltip": "Remove active part" - }, - "fr": { - "name": "Supprimer pièce", - "tooltip": "Supprimer la pièce active" - } - } - }, - "SHAPER/Remove_SubShapes": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/remove_subshapes.png", - "langDependentAssets": { - "en": { - "name": "Remove Sub-Shapes", - "tooltip": "Allows to remove sub-shapes from wires, shells, compsolids and compounds" - }, - "fr": { - "name": "Supprimer les sous-formes", - "tooltip": "Permet de supprimer les sous formes de fils, coques, solides composites et ensembles" - } - } - }, - "SHAPER/Revolution": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol.png", - "langDependentAssets": { - "en": { - "name": "Revolution", - "tooltip": "Create a solid by revolution of a face" - }, - "fr": { - "name": "Révolution", - "tooltip": "Créer un solide par révolution d'une face" - } - } - }, - "SHAPER/RevolutionCut": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol_cut.png", - "langDependentAssets": { - "en": { - "name": "RevolutionCut", - "tooltip": "Cuts a revolution from a solid" - }, - "fr": { - "name": "Enlèvement de matière avec révolution", - "tooltip": "Coupe une révolution d'un solide" - } - } - }, - "SHAPER/RevolutionFuse": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol_fuse.png", - "langDependentAssets": { - "en": { - "name": "RevolutionFuse", - "tooltip": "Fuses a revolution with a solid" - }, - "fr": { - "name": "Bossage avec révolution", - "tooltip": "Fusionne une révolution avec un solide" - } - } - }, - "SHAPER/Rotation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/rotation.png", - "langDependentAssets": { - "en": { - "name": "Rotation", - "tooltip": "Perform rotation of objects around the axis to specified angle" - }, - "fr": { - "name": "Rotation", - "tooltip": "Effectuer une rotation des objets autour de l'axe avec l'angle spécifié" - } - } - }, - "SHAPER/SAVEAS_CMD": { - "iconPath": "", - "langDependentAssets": { - "en": { - "name": "Part set...", - "tooltip": "Export the current document into a native file" - }, - "fr": { - "name": "Assemblage...", - "tooltip": "Exporter le document actuel dans un fichier natif" - } - } - }, - "SHAPER/Scale": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/scale.svg", - "langDependentAssets": { - "en": { - "name": "Scale", - "tooltip": "Perform scale objects" - }, - "fr": { - "name": "Échelle", - "tooltip": "Effectuer un changement d'échelle des objets" - } - } - }, - "SHAPER/Sewing": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/sewing.png", - "langDependentAssets": { - "en": { - "name": "Sewing", - "tooltip": "Perform sewing operation on shapes" - }, - "fr": { - "name": "Coudre les faces", - "tooltip": "Effectuer une opération de couture sur des formes" - } - } - }, - "SHAPER/Shared_faces_macro": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/shared_shapes.png", - "langDependentAssets": { - "en": { - "name": "Check shared faces", - "tooltip": "Check the shared faces" - }, - "fr": { - "name": "Vérifier les faces partagées", - "tooltip": "Check the shared faces" - } - } - }, - "SHAPER/Shell": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_shell.png", - "langDependentAssets": { - "en": { - "name": "Shell", - "tooltip": "Create a shell from faces or shells objects" - }, - "fr": { - "name": "Coque", - "tooltip": "Créer une coque à partir d'objets faces ou d'autres coques" - } - } - }, - "SHAPER/Sketch": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/sketch.png", - "langDependentAssets": { - "en": { - "name": "Sketch", - "tooltip": "Create sketch" - }, - "fr": { - "name": "Esquisse", - "tooltip": "Créer une esquisse" - } - } - }, - "SHAPER/SketchConstraintAngle": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/angle_constr.png", - "langDependentAssets": { - "en": { - "name": "Angle", - "tooltip": "Set fixed angle between two line segments" - }, - "fr": { - "name": "Angle", - "tooltip": "Définir un angle fixe entre deux segments" - } - } - }, - "SHAPER/SketchConstraintCoincidence": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/coincedence.png", - "langDependentAssets": { - "en": { - "name": "Coincident", - "tooltip": "Create constraint for the coincidence of two points or point on line or circle" - }, - "fr": { - "name": "Coïncident", - "tooltip": "Créer une contrainte pour la coïncidence de deux points ou d'un point sur une ligne ou un cercle" - } - } - }, - "SHAPER/SketchConstraintCollinear": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/collinear.png", - "langDependentAssets": { - "en": { - "name": "Collinear", - "tooltip": "Create constraint defining collinearity of two lines" - }, - "fr": { - "name": "Colinéaire", - "tooltip": "Créer une contrainte définissant la colinéarité de deux lignes" - } - } - }, - "SHAPER/SketchConstraintDistance": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance.png", - "langDependentAssets": { - "en": { - "name": "Distance", - "tooltip": "Set fixed distance from a point to an object" - }, - "fr": { - "name": "Distance", - "tooltip": "Définir une distance fixe entre un point et un objet" - } - } - }, - "SHAPER/SketchConstraintDistanceHorizontal": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance_h.png", - "langDependentAssets": { - "en": { - "name": "Horizontal Distance", - "tooltip": "Set horizontal distance between two points" - }, - "fr": { - "name": "Distance horizontale", - "tooltip": "Définir la distance horizontale entre deux points" - } - } - }, - "SHAPER/SketchConstraintDistanceVertical": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance_v.png", - "langDependentAssets": { - "en": { - "name": "Vertical Distance", - "tooltip": "Set vertical distance between two points" - }, - "fr": { - "name": "Distance verticale", - "tooltip": "Définir la distance verticale entre deux points" - } - } - }, - "SHAPER/SketchConstraintEqual": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/equal.png", - "langDependentAssets": { - "en": { - "name": "Equal", - "tooltip": "Create constraint defining equal lengths of two lines or line and arc or equal radiuses of two arcs or two circles or arc and circle" - }, - "fr": { - "name": "Égal", - "tooltip": "Créer une contrainte définissant des longueurs égales de deux lignes, ou une ligne et un arc, ou des rayons égaux de deux arcs ou de deux cercles ou d'un arc et d'un cercle" - } - } - }, - "SHAPER/SketchConstraintHorizontal": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/horisontal.png", - "langDependentAssets": { - "en": { - "name": "Horizontal", - "tooltip": "Create constraint defining horizontal line" - }, - "fr": { - "name": "Horizontal", - "tooltip": "Créer une contrainte définissant une ligne horizontale" - } - } - }, - "SHAPER/SketchConstraintLength": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/length.png", - "langDependentAssets": { - "en": { - "name": "Length", - "tooltip": "Set fixed length of a line segment" - }, - "fr": { - "name": "Longueur", - "tooltip": "Définir la longueur fixe d'un segment" - } - } - }, - "SHAPER/SketchConstraintMiddle": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/middlepoint.png", - "langDependentAssets": { - "en": { - "name": "Middle point", - "tooltip": "Create constraint for setting middle point on a line" - }, - "fr": { - "name": "Point milieu", - "tooltip": "Créer une contrainte pour définir le milieu de la ligne" - } - } - }, - "SHAPER/SketchConstraintMirror": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/mirror.png", - "langDependentAssets": { - "en": { - "name": "Mirror copy", - "tooltip": "Create constraint, mirroring group of objects" - }, - "fr": { - "name": "Copie miroir", - "tooltip": "Créer une contrainte, mettre en miroir un groupe d'objets" - } - } - }, - "SHAPER/SketchConstraintParallel": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/parallel.png", - "langDependentAssets": { - "en": { - "name": "Parallel", - "tooltip": "Create constraint defining two parallel lines" - }, - "fr": { - "name": "Parallèle", - "tooltip": "Créer une contrainte définissant deux lignes parallèles" - } - } - }, - "SHAPER/SketchConstraintPerpendicular": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/perpendicular.png", - "langDependentAssets": { - "en": { - "name": "Perpendicular", - "tooltip": "Create constraint defining two orthogonal objects" - }, - "fr": { - "name": "Perpendiculaire", - "tooltip": "Créer une contrainte définissant deux objets orthogonaux" - } - } - }, - "SHAPER/SketchConstraintRadius": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/radius_constr.png", - "langDependentAssets": { - "en": { - "name": "Radius", - "tooltip": "Set fixed radius of a circle or an arc" - }, - "fr": { - "name": "Rayon", - "tooltip": "Définir le rayon fixe d'un cercle ou d'un arc" - } - } - }, - "SHAPER/SketchConstraintRigid": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/fixed.png", - "langDependentAssets": { - "en": { - "name": "Fixed", - "tooltip": "Fix an object" - }, - "fr": { - "name": "Fixé", - "tooltip": "Fixer un objet" - } - } - }, - "SHAPER/SketchConstraintTangent": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/tangent.png", - "langDependentAssets": { - "en": { - "name": "Tangent", - "tooltip": "Create constraint defining tangency of two segments with common coincident point" - }, - "fr": { - "name": "Tangente", - "tooltip": "Créer une contrainte définissant la tangence de deux segments avec un point de coïncidence commun" - } - } - }, - "SHAPER/SketchConstraintVertical": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/vertical.png", - "langDependentAssets": { - "en": { - "name": "Vertical", - "tooltip": "Create constraint defining vertical line" - }, - "fr": { - "name": "Vertical", - "tooltip": "Créer une contrainte définissant une ligne verticale" - } - } - }, - "SHAPER/SketchCopy": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/copy.png", - "langDependentAssets": { - "en": { - "name": "Sketch copy", - "tooltip": "Copy sketch and all its elements to the same plane" - }, - "fr": { - "name": "Copie d'esquisse", - "tooltip": "Copiez l'esquisse et tous ses éléments dans le même plan" - } - } - }, - "SHAPER/SketchCurveFitting": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/curvefitting.png", - "langDependentAssets": { - "en": { - "name": "Curve fitting", - "tooltip": "Create curve passing through the points" - }, - "fr": { - "name": "Courbe d'ajustement", - "tooltip": "Créer une courbe passant par les points" - } - } - }, - "SHAPER/SketchDrawer": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/drawer.png", - "langDependentAssets": { - "en": { - "name": "Sketch drawer", - "tooltip": "Creates sketch using elements of selected shape belonging to selected plane" - }, - "fr": { - "name": "Créer une esquisse à partir d'un contour", - "tooltip": "Crée une esquisse en utilisant des éléments de la forme sélectionnée appartenant au plan sélectionné" - } - } - }, - "SHAPER/SketchFillet": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/fillet.png", - "langDependentAssets": { - "en": { - "name": "Fillet", - "tooltip": "Create constraint defining fillet between two connected segments" - }, - "fr": { - "name": "Congé", - "tooltip": "Créer une contrainte définissant un congé entre deux segments connectés" - } - } - }, - "SHAPER/SketchIntersectionPoint": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/intersection_point.png", - "langDependentAssets": { - "en": { - "name": "Intersection", - "tooltip": "Intersect edge with sketch plane" - }, - "fr": { - "name": "Section", - "tooltip": "Intersecter une arête avec un plan d'esquisse" - } - } - }, - "SHAPER/SketchLine": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/line.png", - "langDependentAssets": { - "en": { - "name": "Line", - "tooltip": "Create line" - }, - "fr": { - "name": "Ligne", - "tooltip": "Créer une ligne" - } - } - }, - "SHAPER/SketchMacroArc": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/arc.png", - "langDependentAssets": { - "en": { - "name": "Arc", - "tooltip": "Create arc" - }, - "fr": { - "name": "Arc", - "tooltip": "Créer un arc" - } - } - }, - "SHAPER/SketchMacroBSpline": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/bspline.png", - "langDependentAssets": { - "en": { - "name": "B-spline", - "tooltip": "Create B-spline curve" - }, - "fr": { - "name": "B-spline", - "tooltip": "Créer une courbe B-spline" - } - } - }, - "SHAPER/SketchMacroBSplinePeriodic": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/bspline_p.png", - "langDependentAssets": { - "en": { - "name": "Periodic B-spline", - "tooltip": "Create periodic B-spline curve" - }, - "fr": { - "name": "Périodique B-spline", - "tooltip": "Créer une courbe périodique de type B-spline" - } - } - }, - "SHAPER/SketchMacroCircle": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/circle.png", - "langDependentAssets": { - "en": { - "name": "Circle", - "tooltip": "Create circle" - }, - "fr": { - "name": "Cercle", - "tooltip": "Créer un cercle" - } - } - }, - "SHAPER/SketchMacroEllipse": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/ellipse.png", - "langDependentAssets": { - "en": { - "name": "Ellipse", - "tooltip": "Create ellipse" - }, - "fr": { - "name": "Ellipse", - "tooltip": "Créer une ellipse" - } - } - }, - "SHAPER/SketchMacroEllipticArc": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/elliptic_arc.png", - "langDependentAssets": { - "en": { - "name": "Elliptic arc", - "tooltip": "Create elliptic arc" - }, - "fr": { - "name": "Arc d'ellipse", - "tooltip": "Créer un arc d'ellipse" - } - } - }, - "SHAPER/SketchMultiRotation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/rotate.png", - "langDependentAssets": { - "en": { - "name": "Angular copy", - "tooltip": "Copy objects and rotate" - }, - "fr": { - "name": "Copie angulaire", - "tooltip": "Copier des objets et faire pivoter" - } - } - }, - "SHAPER/SketchMultiTranslation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/translate.png", - "langDependentAssets": { - "en": { - "name": "Linear copy", - "tooltip": "Copy objects and move" - }, - "fr": { - "name": "Copie linéaire", - "tooltip": "Copier des objets et les déplacer" - } - } - }, - "SHAPER/SketchOffset": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/offset.png", - "langDependentAssets": { - "en": { - "name": "Offset", - "tooltip": "Offset a curve to a distance" - }, - "fr": { - "name": "Décalage", - "tooltip": "Décaler une courbe d'une distance" - } - } - }, - "SHAPER/SketchPoint": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/point.png", - "langDependentAssets": { - "en": { - "name": "Point", - "tooltip": "Create point" - }, - "fr": { - "name": "Point", - "tooltip": "Créer un point" - } - } - }, - "SHAPER/SketchProjection": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/projection.png", - "langDependentAssets": { - "en": { - "name": "Projection", - "tooltip": "Project feature onto sketch plane" - }, - "fr": { - "name": "Projection", - "tooltip": "Projeter une fonction sur un plan d'esquisse" - } - } - }, - "SHAPER/SketchRectangle": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/rectangle.png", - "langDependentAssets": { - "en": { - "name": "Rectangle", - "tooltip": "Create rectangle" - }, - "fr": { - "name": "Rectangle", - "tooltip": "Créer un rectangle" - } - } - }, - "SHAPER/SketchSplit": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/split.png", - "langDependentAssets": { - "en": { - "name": "Split", - "tooltip": "Cut selected segment arc or circle on existing coincident points" - }, - "fr": { - "name": "Diviser", - "tooltip": "Couper l'arc ou le cercle du segment sélectionné sur les points coïncidents existants" - } - } - }, - "SHAPER/SketchTrim": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/trim.png", - "langDependentAssets": { - "en": { - "name": "Trim", - "tooltip": "Trim selected segment arc or circle on intersection points nearest to the graphic selection" - }, - "fr": { - "name": "Réduire", - "tooltip": "Couper l'arc ou le cercle du segment sélectionné sur les points d'intersection les plus proches de la sélection graphique" - } - } - }, - "SHAPER/Smash": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_smash.png", - "langDependentAssets": { - "en": { - "name": "Smash", - "tooltip": "Perform boolean smash operation with objects" - }, - "fr": { - "name": "Smash", - "tooltip": "Effectuer l'opération booléenne smash avec des objets" - } - } - }, - "SHAPER/Solid": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_solid.png", - "langDependentAssets": { - "en": { - "name": "Solid", - "tooltip": "Create a solid from faces or shells" - }, - "fr": { - "name": "Solide", - "tooltip": "Créer un solide à partir de faces ou de coques" - } - } - }, - "SHAPER/Sphere": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/sphere.png", - "langDependentAssets": { - "en": { - "name": "Sphere", - "tooltip": "Create a sphere" - }, - "fr": { - "name": "Sphère", - "tooltip": "Créer une sphère" - } - } - }, - "SHAPER/Split": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_split.png", - "langDependentAssets": { - "en": { - "name": "Split", - "tooltip": "Perform boolean split operation with objects" - }, - "fr": { - "name": "Diviser", - "tooltip": "Effectuer l'opération booléenne division avec des objets" - } - } - }, - "SHAPER/SubShapes": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_subshapes.png", - "langDependentAssets": { - "en": { - "name": "Sub-Shapes", - "tooltip": "Allows to add or to remove sub-shapes of the selected shape" - }, - "fr": { - "name": "Sous-formes", - "tooltip": "Permet d'ajouter ou de supprimer des sous-formes de la forme sélectionnée" - } - } - }, - "SHAPER/Symmetry": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/symmetry.svg", - "langDependentAssets": { - "en": { - "name": "Symmetry", - "tooltip": "Perform symmetry with respect to a point, an axis or a plane" - }, - "fr": { - "name": "Symétrie", - "tooltip": "Effectuer une symétrie par rapport à un point, un axe ou un plan" - } - } - }, - "SHAPER/Torus": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/torus.png", - "langDependentAssets": { - "en": { - "name": "Torus", - "tooltip": "Create a Torus" - }, - "fr": { - "name": "Tore", - "tooltip": "Créer un tore" - } - } - }, - "SHAPER/Translation": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/movement.png", - "langDependentAssets": { - "en": { - "name": "Translation", - "tooltip": "Perform translation of objects along the axis to specified distance" - }, - "fr": { - "name": "Translation", - "tooltip": "Effectuer la translation des objets le long de l'axe à la distance spécifiée" - } - } - }, - "SHAPER/Tube": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/tube.png", - "langDependentAssets": { - "en": { - "name": "Tube", - "tooltip": "Create a Tube" - }, - "fr": { - "name": "Tube", - "tooltip": "Créer un tube" - } - } - }, - "SHAPER/UNDO_CMD": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/undo.png", - "langDependentAssets": { - "en": { - "name": "Undo", - "tooltip": "Undo last command" - }, - "fr": { - "name": "Annuler", - "tooltip": "Annuler la dernière commande" - } - } - }, - "SHAPER/Vertex": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_vertex.png", - "langDependentAssets": { - "en": { - "name": "Vertex", - "tooltip": "Create vertices from sketch point or other vertex objects" - }, - "fr": { - "name": "Sommet", - "tooltip": "Créer des sommets à partir d'un point d'esquisse ou d'autres objets de sommet" - } - } - }, - "SHAPER/Wire": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_wire.png", - "langDependentAssets": { - "en": { - "name": "Wire", - "tooltip": "Create a wire from sketch edges, edges and wires objects" - }, - "fr": { - "name": "Contour", - "tooltip": "Créer un contour à partir d'arêtes de l’esquisse, d'arêtes et de contours" - } - } - }, - "SHAPER/compoundVertices": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/compound.png", - "langDependentAssets": { - "en": { - "name": "Import points", - "tooltip": "Import a set of construction points" - }, - "fr": { - "name": "Importer des points", - "tooltip": "Importer un ensemble de points de construction" - } - } - }, - "SHAPER/importParameters": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/parameters.png", - "langDependentAssets": { - "en": { - "name": "Import parameters", - "tooltip": "Import a set of parameters" - }, - "fr": { - "name": "Importer des paramètres", - "tooltip": "Importer un ensemble de paramètres" - } - } - }, - "SHAPER/midSurface": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/midSurface.png", - "langDependentAssets": { - "en": { - "name": "Create midsurfaces", - "tooltip": "Create midsurfaces" - }, - "fr": { - "name": "Créer des fibres neutres", - "tooltip": "Créer des fibres neutres" - } - } - }, - "SHAPER/pipeNetwork": { - "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/pipeNetwork.png", - "langDependentAssets": { - "en": { - "name": "Pipe network", - "tooltip": "Create a network of pipes" - }, - "fr": { - "name": "Réseau de tuyaux", - "tooltip": "Créer un réseau de tuyaux" + "SHAPER": { + "children": { + "Build": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Build" + }, + "fr": { + "name": "Construire" + } + }, + "children": { + "CompSolid": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_compsolid.png", + "langDependentAssets": { + "en": { + "name": "CompSolid", + "tooltip": "Create a compsolid from solids or other compsolids" + }, + "fr": { + "name": "Solide Composite", + "tooltip": "Créer un solide composite à partir de solides ou d'autres solides composites" + } + } + }, + "Compound": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_compound.png", + "langDependentAssets": { + "en": { + "name": "Compound", + "tooltip": "Create a compound of objects" + }, + "fr": { + "name": "Ensemble", + "tooltip": "Créer un ensemble" + } + } + }, + "Edge": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_edge.png", + "langDependentAssets": { + "en": { + "name": "Edge", + "tooltip": "Create edges from sketch edges or other edge objects" + }, + "fr": { + "name": "Arête", + "tooltip": "Créer des arêtes à partir d'arêtes d'esquisse ou d'objets arêtes" + } + } + }, + "Face": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_face.png", + "langDependentAssets": { + "en": { + "name": "Face", + "tooltip": "Create a face from edges, wires and faces" + }, + "fr": { + "name": "Face", + "tooltip": "Créer une face à partir d'arêtes, de contours et de faces" + } + } + }, + "Filling": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_filling.png", + "langDependentAssets": { + "en": { + "name": "Filling", + "tooltip": "Create face from list of edges" + }, + "fr": { + "name": "Remplissage", + "tooltip": "Créer une face à partir d'une liste d'arêtes" + } + } + }, + "Interpolation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_interpolation.png", + "langDependentAssets": { + "en": { + "name": "Interpolation", + "tooltip": "Create an interpolation curve from points" + }, + "fr": { + "name": "Interpolation", + "tooltip": "Créer une courbe d'interpolation à partir de points" + } + } + }, + "Polyline": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_polyline.png", + "langDependentAssets": { + "en": { + "name": "Polyline", + "tooltip": "Create a polyline from points" + }, + "fr": { + "name": "Polyligne", + "tooltip": "Créer une polyligne à partir de points" + } + } + }, + "Shell": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_shell.png", + "langDependentAssets": { + "en": { + "name": "Shell", + "tooltip": "Create a shell from faces or shells objects" + }, + "fr": { + "name": "Coque", + "tooltip": "Créer une coque à partir d'objets faces ou d'autres coques" + } + } + }, + "Solid": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_solid.png", + "langDependentAssets": { + "en": { + "name": "Solid", + "tooltip": "Create a solid from faces or shells" + }, + "fr": { + "name": "Solide", + "tooltip": "Créer un solide à partir de faces ou de coques" + } + } + }, + "SubShapes": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_subshapes.png", + "langDependentAssets": { + "en": { + "name": "Sub-Shapes", + "tooltip": "Allows to add or to remove sub-shapes of the selected shape" + }, + "fr": { + "name": "Sous-formes", + "tooltip": "Permet d'ajouter ou de supprimer des sous-formes de la forme sélectionnée" + } + } + }, + "Vertex": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_vertex.png", + "langDependentAssets": { + "en": { + "name": "Vertex", + "tooltip": "Create vertices from sketch point or other vertex objects" + }, + "fr": { + "name": "Sommet", + "tooltip": "Créer des sommets à partir d'un point d'esquisse ou d'autres objets de sommet" + } + } + }, + "Wire": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Build/feature_wire.png", + "langDependentAssets": { + "en": { + "name": "Wire", + "tooltip": "Create a wire from sketch edges, edges and wires objects" + }, + "fr": { + "name": "Contour", + "tooltip": "Créer un contour à partir d'arêtes de l’esquisse, d'arêtes et de contours" + } + } + } + } + }, + "Construction": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Construction" + }, + "fr": { + "name": "Construction" + } + }, + "children": { + "Axis": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/axis.png", + "langDependentAssets": { + "en": { + "name": "Axis", + "tooltip": "Create axis" + }, + "fr": { + "name": "Axe", + "tooltip": "Créer un axe" + } + } + }, + "Plane": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/plane.png", + "langDependentAssets": { + "en": { + "name": "Plane", + "tooltip": "Create plane" + }, + "fr": { + "name": "Plan", + "tooltip": "Créer un plan" + } + } + }, + "Point": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/point.png", + "langDependentAssets": { + "en": { + "name": "Point", + "tooltip": "Create point" + }, + "fr": { + "name": "Point", + "tooltip": "Créer un point" + } + } + } + } + }, + "Features": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Features" + }, + "fr": { + "name": "Fonctions" + } + }, + "children": { + "Chamfer": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/chamfer.png", + "langDependentAssets": { + "en": { + "name": "Chamfer", + "tooltip": "Perform chamfer on face or edge" + }, + "fr": { + "name": "Chanfrein", + "tooltip": "Effectuer un chanfrein sur la face ou l'arête" + } + } + }, + "Common": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_common.png", + "langDependentAssets": { + "en": { + "name": "Common", + "tooltip": "Perform boolean common operation with objects" + }, + "fr": { + "name": "Intersection", + "tooltip": "Effectuer l'opération booléenne intersection avec des objets" + } + } + }, + "Copy": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/copy.png", + "langDependentAssets": { + "en": { + "name": "Copy", + "tooltip": "Copies results or sub-results" + }, + "fr": { + "name": "Copie", + "tooltip": "Copie les résultats ou les sous-résultats" + } + } + }, + "Cut": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_cut.png", + "langDependentAssets": { + "en": { + "name": "Cut", + "tooltip": "Perform boolean cut operation with objects" + }, + "fr": { + "name": "Découpe", + "tooltip": "Effectuer l'opération booléenne découpe avec des objets" + } + } + }, + "Defeaturing": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/defeaturing.png", + "langDependentAssets": { + "en": { + "name": "Defeaturing", + "tooltip": "Perform removing faces from solid" + }, + "fr": { + "name": "Supprimer un détail", + "tooltip": "Effectuer la suppression de faces d'un solide" + } + } + }, + "ExportToGEOM": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Connector/geom_export.png", + "langDependentAssets": { + "en": { + "name": "Export to GEOM", + "tooltip": "Export all results and groups into GEOM module" + }, + "fr": { + "name": "Exporter vers GEOM", + "tooltip": "Exporter tous les résultats et groupes dans le module GEOM" + } + } + }, + "Extrusion": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion.png", + "langDependentAssets": { + "en": { + "name": "Extrusion", + "tooltip": "Create a solid by extrusion of a face" + }, + "fr": { + "name": "Extrusion", + "tooltip": "Créer un solide par extrusion d'une face" + } + } + }, + "ExtrusionCut": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion_cut.png", + "langDependentAssets": { + "en": { + "name": "ExtrusionCut", + "tooltip": "Cuts an extrusion from a solid" + }, + "fr": { + "name": "Enlèvement de matière extrudé", + "tooltip": "Coupe une extrusion d'un solide" + } + } + }, + "ExtrusionFuse": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/extrusion_fuse.png", + "langDependentAssets": { + "en": { + "name": "ExtrusionFuse", + "tooltip": "Fuses an extrusion with a solid" + }, + "fr": { + "name": "Bossage extrudé", + "tooltip": "Fusionne une extrusion avec un solide" + } + } + }, + "Field": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/field.png", + "langDependentAssets": { + "en": { + "name": "Field", + "tooltip": "Create fields for selected shapes" + }, + "fr": { + "name": "Champ", + "tooltip": "Créer des champs pour les formes sélectionnées" + } + } + }, + "Fillet": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fillet.png", + "langDependentAssets": { + "en": { + "name": "Fillet", + "tooltip": "Perform fillet on face or edge" + }, + "fr": { + "name": "Congé", + "tooltip": "Effectuer un congé sur la face ou l'arête" + } + } + }, + "Fillet1D": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fillet1d.png", + "langDependentAssets": { + "en": { + "name": "1D-fillet", + "tooltip": "Perform fillet on vertices of a wire" + }, + "fr": { + "name": "1D-congé", + "tooltip": "Effectuer un congé sur les sommets d'un contour" + } + } + }, + "Fuse": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_fuse.png", + "langDependentAssets": { + "en": { + "name": "Fuse", + "tooltip": "Perform boolean fuse operation with objects" + }, + "fr": { + "name": "Fusionner", + "tooltip": "Effectuer l'opération booléenne fusion avec des objets" + } + } + }, + "FusionFaces": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/fusion_faces.png", + "langDependentAssets": { + "en": { + "name": "Fuse Faces", + "tooltip": "Performs fusion of connected faces" + }, + "fr": { + "name": "Fusionner des faces", + "tooltip": "Effectue la fusion de faces connectées" + } + } + }, + "GlueFaces": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/glue_faces.png", + "langDependentAssets": { + "en": { + "name": "Glue Faces", + "tooltip": "Perform gluing of connected faces" + }, + "fr": { + "name": "Recoller les faces", + "tooltip": "Effectuer le collage des faces connectées" + } + } + }, + "Group": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/shape_group.png", + "langDependentAssets": { + "en": { + "name": "Group", + "tooltip": "Create named collection of geometry entities" + }, + "fr": { + "name": "Groupe", + "tooltip": "Créer une collection nommée d'entités géométriques" + } + } + }, + "GroupAddition": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_addition.png", + "langDependentAssets": { + "en": { + "name": "Group Addition", + "tooltip": "Join several groups to single group" + }, + "fr": { + "name": "Addition de groupes", + "tooltip": "Joindre plusieurs groupes pour former un seul groupe" + } + } + }, + "GroupIntersection": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_intersection.png", + "langDependentAssets": { + "en": { + "name": "Group Intersection", + "tooltip": "Get elements existing in all groups" + }, + "fr": { + "name": "Intersection de groupes", + "tooltip": "Obtenir les éléments existants dans tous les groupes" + } + } + }, + "GroupShape": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/svg/group_shape.svg", + "langDependentAssets": { + "en": { + "name": "Group Shape", + "tooltip": "Join several groups to single shape" + }, + "fr": { + "name": "Forme à partir de groupes", + "tooltip": "Joindre plusieurs groupes dans une forme seule" + } + } + }, + "GroupSubstraction": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Collection/group_substraction.png", + "langDependentAssets": { + "en": { + "name": "Group Substraction", + "tooltip": "Exclude elements existing tool groups" + }, + "fr": { + "name": "Soustraction de groupes", + "tooltip": "Exclure des éléments des groupes d'outils existants" + } + } + }, + "ImportResult": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/import_result.png", + "langDependentAssets": { + "en": { + "name": "Import Result", + "tooltip": "Copies results from other parts" + }, + "fr": { + "name": "Importer le résultat", + "tooltip": "Copie les résultats d'autres pièces" + } + } + }, + "Intersection": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/intersection.png", + "langDependentAssets": { + "en": { + "name": "Intersection", + "tooltip": "Intersect objects with tools" + }, + "fr": { + "name": "Section", + "tooltip": "Intersection d'objets avec des outils" + } + } + }, + "LimitTolerance": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/limit_tolerance.png", + "langDependentAssets": { + "en": { + "name": "Limit Tolerance", + "tooltip": "Limit the tolerance on a shape" + }, + "fr": { + "name": "Limiter la tolérance", + "tooltip": "Limiter la tolérance sur une forme" + } + } + }, + "Loft": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/loft.png", + "langDependentAssets": { + "en": { + "name": "Loft", + "tooltip": "Generates a shape with two elements" + }, + "fr": { + "name": "Lissage", + "tooltip": "Génére une forme avec deux éléments" + } + } + }, + "Partition": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/partition.png", + "langDependentAssets": { + "en": { + "name": "Partition", + "tooltip": "Perform partition operations with solids" + }, + "fr": { + "name": "Partition", + "tooltip": "Effectuer des opérations de partition avec des solides" + } + } + }, + "Pipe": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/pipe.png", + "langDependentAssets": { + "en": { + "name": "Pipe", + "tooltip": "Generates extrusion along a path" + }, + "fr": { + "name": "Tuyau", + "tooltip": "Génère une extrusion le long d'un chemin" + } + } + }, + "Recover": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/recover.png", + "langDependentAssets": { + "en": { + "name": "Recover", + "tooltip": "Visualize concealed objects" + }, + "fr": { + "name": "Récupérer", + "tooltip": "Visualiser les objets cachés" + } + } + }, + "Remove_SubShapes": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/remove_subshapes.png", + "langDependentAssets": { + "en": { + "name": "Remove Sub-Shapes", + "tooltip": "Allows to remove sub-shapes from wires, shells, compsolids and compounds" + }, + "fr": { + "name": "Supprimer les sous-formes", + "tooltip": "Permet de supprimer les sous formes de fils, coques, solides composites et ensembles" + } + } + }, + "Revolution": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol.png", + "langDependentAssets": { + "en": { + "name": "Revolution", + "tooltip": "Create a solid by revolution of a face" + }, + "fr": { + "name": "Révolution", + "tooltip": "Créer un solide par révolution d'une face" + } + } + }, + "RevolutionCut": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol_cut.png", + "langDependentAssets": { + "en": { + "name": "RevolutionCut", + "tooltip": "Cuts a revolution from a solid" + }, + "fr": { + "name": "Enlèvement de matière avec révolution", + "tooltip": "Coupe une révolution d'un solide" + } + } + }, + "RevolutionFuse": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/revol_fuse.png", + "langDependentAssets": { + "en": { + "name": "RevolutionFuse", + "tooltip": "Fuses a revolution with a solid" + }, + "fr": { + "name": "Bossage avec révolution", + "tooltip": "Fusionne une révolution avec un solide" + } + } + }, + "Scale": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/scale.svg", + "langDependentAssets": { + "en": { + "name": "Scale", + "tooltip": "Perform scale objects" + }, + "fr": { + "name": "Échelle", + "tooltip": "Effectuer un changement d'échelle des objets" + } + } + }, + "Sewing": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/sewing.png", + "langDependentAssets": { + "en": { + "name": "Sewing", + "tooltip": "Perform sewing operation on shapes" + }, + "fr": { + "name": "Coudre les faces", + "tooltip": "Effectuer une opération de couture sur des formes" + } + } + }, + "SketchCopy": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/copy.png", + "langDependentAssets": { + "en": { + "name": "Sketch copy", + "tooltip": "Copy sketch and all its elements to the same plane" + }, + "fr": { + "name": "Copie d'esquisse", + "tooltip": "Copiez l'esquisse et tous ses éléments dans le même plan" + } + } + }, + "Smash": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_smash.png", + "langDependentAssets": { + "en": { + "name": "Smash", + "tooltip": "Perform boolean smash operation with objects" + }, + "fr": { + "name": "Smash", + "tooltip": "Effectuer l'opération booléenne smash avec des objets" + } + } + }, + "Split": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bool_split.png", + "langDependentAssets": { + "en": { + "name": "Split", + "tooltip": "Perform boolean split operation with objects" + }, + "fr": { + "name": "Diviser", + "tooltip": "Effectuer l'opération booléenne division avec des objets" + } + } + } + } + }, + "File": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "File" + }, + "fr": { + "name": "Fichier" + }, + "ja": { + "name": "ファイル" + } + }, + "children": { + "Export": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Export" + }, + "fr": { + "name": "Exporter" + } + }, + "children": { + "Part": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/part_ico.png", + "langDependentAssets": { + "en": { + "name": "Part...", + "tooltip": "Export a part of the current document into a file" + }, + "fr": { + "name": "Pièce...", + "tooltip": "Exporter une pièce du document courant dans un fichier" + } + } + }, + "PartSet": { + "langDependentAssets": { + "en": { + "name": "Part set...", + "tooltip": "Export the current document into a native file" + }, + "fr": { + "name": "Assemblage...", + "tooltip": "Exporter le document actuel dans un fichier natif" + } + } + }, + "Shape": { + "langDependentAssets": { + "en": { + "name": "To CAD format...", + "tooltip": "Export shape to a CAD format file" + }, + "fr": { + "name": "Au format CAO...", + "tooltip": "Exportation de la forme vers un fichier au format CAO" + } + } + } + } + }, + "Import": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Import" + }, + "fr": { + "name": "Importer" + } + }, + "children": { + "Image": { + "langDependentAssets": { + "en": { + "name": "Picture...", + "tooltip": "Import a picture from an image file" + }, + "fr": { + "name": "Une image...", + "tooltip": "Import a picture from an image file" + } + } + }, + "Part": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/part_ico.png", + "langDependentAssets": { + "en": { + "name": "Part...", + "tooltip": "Import structure of a part" + }, + "fr": { + "name": "Pièce...", + "tooltip": "Structure d'importation d'une pièce" + } + } + }, + "PartSet": { + "langDependentAssets": { + "en": { + "name": "Part set...", + "tooltip": "Import native file" + }, + "fr": { + "name": "Assemblage...", + "tooltip": "Importer un fichier natif" + } + } + }, + "Shape": { + "langDependentAssets": { + "en": { + "name": "From CAD format...", + "tooltip": "Import shape from a CAD format file" + }, + "fr": { + "name": "À partir du format CAO...", + "tooltip": "Importer une forme à partir d'un fichier au format CAO" + } + } + } + } + } + } + }, + "Inspection": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Inspection" + }, + "fr": { + "name": "Inspection" + } + }, + "children": { + "BoundingBoxMacro": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/bounding.png", + "langDependentAssets": { + "en": { + "name": "Bounding box", + "tooltip": "Calculate the bounding box" + }, + "fr": { + "name": "Boîte englobante", + "tooltip": "Calculer la boîte englobante" + } + } + }, + "GeometryCalculation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/geometryCalculation.png", + "langDependentAssets": { + "en": { + "name": "Geometry calculation", + "tooltip": "Calculate properties of objects" + }, + "fr": { + "name": "Calcul de la géometrie", + "tooltip": "Calculer les propriétés des objets" + } + } + }, + "Measurement": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/measurement.png", + "langDependentAssets": { + "en": { + "name": "Measurement", + "tooltip": "Calculate properties of objects" + }, + "fr": { + "name": "Mesure", + "tooltip": "Calculer les propriétés des objets" + } + } + }, + "NormalMacro": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/normale.png", + "langDependentAssets": { + "en": { + "name": "Normal to a face", + "tooltip": "Calculate the normal to a face" + }, + "fr": { + "name": "Normale d'une face", + "tooltip": "Calcule la normale d'une face" + } + } + }, + "PointCoordinates": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/point_coord.png", + "langDependentAssets": { + "en": { + "name": "Point coordinates", + "tooltip": "View point coordinate" + }, + "fr": { + "name": "Coordonnées d'un point", + "tooltip": "Voir les coordonnées du point" + } + } + }, + "Shared_faces_macro": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/shared_shapes.png", + "langDependentAssets": { + "en": { + "name": "Check shared faces", + "tooltip": "Check the shared faces" + }, + "fr": { + "name": "Vérifier les faces partagées", + "tooltip": "Check the shared faces" + } + } + } + } + }, + "Macros": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Macros" + }, + "fr": { + "name": "Macros" + } + }, + "children": { + "SketchDrawer": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/drawer.png", + "langDependentAssets": { + "en": { + "name": "Sketch drawer", + "tooltip": "Creates sketch using elements of selected shape belonging to selected plane" + }, + "fr": { + "name": "Créer une esquisse à partir d'un contour", + "tooltip": "Crée une esquisse en utilisant des éléments de la forme sélectionnée appartenant au plan sélectionné" + } + } + }, + "compoundVertices": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/compound.png", + "langDependentAssets": { + "en": { + "name": "Import points", + "tooltip": "Import a set of construction points" + }, + "fr": { + "name": "Importer des points", + "tooltip": "Importer un ensemble de points de construction" + } + } + }, + "importParameters": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/parameters.png", + "langDependentAssets": { + "en": { + "name": "Import parameters", + "tooltip": "Import a set of parameters" + }, + "fr": { + "name": "Importer des paramètres", + "tooltip": "Importer un ensemble de paramètres" + } + } + }, + "midSurface": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/midSurface.png", + "langDependentAssets": { + "en": { + "name": "Create midsurfaces", + "tooltip": "Create midsurfaces" + }, + "fr": { + "name": "Créer des fibres neutres", + "tooltip": "Créer des fibres neutres" + } + } + }, + "pipeNetwork": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/pipeNetwork.png", + "langDependentAssets": { + "en": { + "name": "Pipe network", + "tooltip": "Create a network of pipes" + }, + "fr": { + "name": "Réseau de tuyaux", + "tooltip": "Créer un réseau de tuyaux" + } + } + } + } + }, + "Part": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Part" + }, + "fr": { + "name": "Pièce" + } + }, + "children": { + "AngularCopy": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/multirotation.svg", + "langDependentAssets": { + "en": { + "name": "Angular Copy", + "tooltip": "Perform copy and rotate" + }, + "fr": { + "name": "Copie angulaire", + "tooltip": "Effectuer une copie et une rotation" + } + } + }, + "Dump": { + "langDependentAssets": { + "en": { + "name": "Dump", + "tooltip": "Dump Python script" + }, + "fr": { + "name": "Générer un script", + "tooltip": "Générer un script Python" + } + } + }, + "Duplicate": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/duplicate.png", + "langDependentAssets": { + "en": { + "name": "Duplicate part", + "tooltip": "Duplicate active part" + }, + "fr": { + "name": "Dupliquer pièce", + "tooltip": "Dupliquer la pièce active" + } + } + }, + "LinearCopy": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/multitranslation.png", + "langDependentAssets": { + "en": { + "name": "Linear copy", + "tooltip": "Perform copy and translate" + }, + "fr": { + "name": "Copie linéaire", + "tooltip": "Effectuer la copie et la translation" + } + } + }, + "Parameter": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/expression.png", + "langDependentAssets": { + "en": { + "name": "Parameter", + "tooltip": "Create a parameter" + }, + "fr": { + "name": "Paramètre", + "tooltip": "Créer un paramètre" + } + } + }, + "ParametersMgr": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/paper_roll.png", + "langDependentAssets": { + "en": { + "name": "Parameters", + "tooltip": "Manage parameters" + }, + "fr": { + "name": "Paramètres", + "tooltip": "Gérer les paramètres" + } + } + }, + "Part": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/XGUI/part_ico.png", + "langDependentAssets": { + "en": { + "name": "New part", + "tooltip": "Create part" + }, + "fr": { + "name": "Nouvelle pièce", + "tooltip": "Créer une pièce" + } + } + }, + "Placement": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/placement.png", + "langDependentAssets": { + "en": { + "name": "Placement", + "tooltip": "Place objects relatively to another one" + }, + "fr": { + "name": "Placement", + "tooltip": "Placez les objets l'un par rapport à l'autre" + } + } + }, + "Remove": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/PartSet/remove.png", + "langDependentAssets": { + "en": { + "name": "Remove part", + "tooltip": "Remove active part" + }, + "fr": { + "name": "Supprimer pièce", + "tooltip": "Supprimer la pièce active" + } + } + }, + "Rotation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/rotation.png", + "langDependentAssets": { + "en": { + "name": "Rotation", + "tooltip": "Perform rotation of objects around the axis to specified angle" + }, + "fr": { + "name": "Rotation", + "tooltip": "Effectuer une rotation des objets autour de l'axe avec l'angle spécifié" + } + } + }, + "Symmetry": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/SVG/symmetry.svg", + "langDependentAssets": { + "en": { + "name": "Symmetry", + "tooltip": "Perform symmetry with respect to a point, an axis or a plane" + }, + "fr": { + "name": "Symétrie", + "tooltip": "Effectuer une symétrie par rapport à un point, un axe ou un plan" + } + } + }, + "Translation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Features/movement.png", + "langDependentAssets": { + "en": { + "name": "Translation", + "tooltip": "Perform translation of objects along the axis to specified distance" + }, + "fr": { + "name": "Translation", + "tooltip": "Effectuer la translation des objets le long de l'axe à la distance spécifiée" + } + } + } + } + }, + "Primitives": { + "isAction": false, + "langDependentAssets": { + "en": { + "name": "Primitives" + }, + "fr": { + "name": "Primitives" + } + }, + "children": { + "Box": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/box.png", + "langDependentAssets": { + "en": { + "name": "Box", + "tooltip": "Create a box" + }, + "fr": { + "name": "Boîte", + "tooltip": "Créer une boîte" + } + } + }, + "Cone": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/cone.png", + "langDependentAssets": { + "en": { + "name": "Cone", + "tooltip": "Create a cone" + }, + "fr": { + "name": "Cône", + "tooltip": "Créer un cône" + } + } + }, + "Cylinder": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/cylinder.png", + "langDependentAssets": { + "en": { + "name": "Cylinder", + "tooltip": "Create a cylinder" + }, + "fr": { + "name": "Cylindre", + "tooltip": "Créer un cylindre" + } + } + }, + "Sphere": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/sphere.png", + "langDependentAssets": { + "en": { + "name": "Sphere", + "tooltip": "Create a sphere" + }, + "fr": { + "name": "Sphère", + "tooltip": "Créer une sphère" + } + } + }, + "Torus": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/torus.png", + "langDependentAssets": { + "en": { + "name": "Torus", + "tooltip": "Create a torus" + }, + "fr": { + "name": "Tore", + "tooltip": "Créer un tore" + } + } + }, + "Tube": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Primitives/tube.png", + "langDependentAssets": { + "en": { + "name": "Tube", + "tooltip": "Create a tube" + }, + "fr": { + "name": "Tube", + "tooltip": "Créer un tube" + } + } + } + } + }, + "Sketch": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/sketch.png", + "langDependentAssets": { + "en": { + "name": "Sketch", + "tooltip": "Create sketch" + }, + "fr": { + "name": "Esquisse", + "tooltip": "Créer une esquisse" + } + }, + "children": { + "SketchConstraintAngle": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/angle_constr.png", + "langDependentAssets": { + "en": { + "name": "Angle", + "tooltip": "Set fixed angle between two line segments" + }, + "fr": { + "name": "Angle", + "tooltip": "Définir un angle fixe entre deux segments" + } + } + }, + "SketchConstraintCoincidence": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/coincedence.png", + "langDependentAssets": { + "en": { + "name": "Coincident", + "tooltip": "Create constraint for the coincidence of two points or point on line or circle" + }, + "fr": { + "name": "Coïncident", + "tooltip": "Créer une contrainte pour la coïncidence de deux points ou d'un point sur une ligne ou un cercle" + } + } + }, + "SketchConstraintCollinear": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/collinear.png", + "langDependentAssets": { + "en": { + "name": "Collinear", + "tooltip": "Create constraint defining collinearity of two lines" + }, + "fr": { + "name": "Colinéaire", + "tooltip": "Créer une contrainte définissant la colinéarité de deux lignes" + } + } + }, + "SketchConstraintDistance": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance.png", + "langDependentAssets": { + "en": { + "name": "Distance", + "tooltip": "Set fixed distance from a point to an object" + }, + "fr": { + "name": "Distance", + "tooltip": "Définir une distance fixe entre un point et un objet" + } + } + }, + "SketchConstraintDistanceHorizontal": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance_h.png", + "langDependentAssets": { + "en": { + "name": "Horizontal Distance", + "tooltip": "Set horizontal distance between two points" + }, + "fr": { + "name": "Distance horizontale", + "tooltip": "Définir la distance horizontale entre deux points" + } + } + }, + "SketchConstraintDistanceVertical": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/distance_v.png", + "langDependentAssets": { + "en": { + "name": "Vertical Distance", + "tooltip": "Set vertical distance between two points" + }, + "fr": { + "name": "Distance verticale", + "tooltip": "Définir la distance verticale entre deux points" + } + } + }, + "SketchConstraintEqual": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/equal.png", + "langDependentAssets": { + "en": { + "name": "Equal", + "tooltip": "Create constraint defining equal lengths of two lines or line and arc or equal radiuses of two arcs or two circles or arc and circle" + }, + "fr": { + "name": "Égal", + "tooltip": "Créer une contrainte définissant des longueurs égales de deux lignes, ou une ligne et un arc, ou des rayons égaux de deux arcs ou de deux cercles ou d'un arc et d'un cercle" + } + } + }, + "SketchConstraintHorizontal": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/horisontal.png", + "langDependentAssets": { + "en": { + "name": "Horizontal", + "tooltip": "Create constraint defining horizontal line" + }, + "fr": { + "name": "Horizontal", + "tooltip": "Créer une contrainte définissant une ligne horizontale" + } + } + }, + "SketchConstraintLength": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/length.png", + "langDependentAssets": { + "en": { + "name": "Length", + "tooltip": "Set fixed length of a line segment" + }, + "fr": { + "name": "Longueur", + "tooltip": "Définir la longueur fixe d'un segment" + } + } + }, + "SketchConstraintMiddle": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/middlepoint.png", + "langDependentAssets": { + "en": { + "name": "Middle point", + "tooltip": "Create constraint for setting middle point on a line" + }, + "fr": { + "name": "Point milieu", + "tooltip": "Créer une contrainte pour définir le milieu de la ligne" + } + } + }, + "SketchConstraintMirror": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/mirror.png", + "langDependentAssets": { + "en": { + "name": "Mirror copy", + "tooltip": "Create constraint, mirroring group of objects" + }, + "fr": { + "name": "Copie miroir", + "tooltip": "Créer une contrainte, mettre en miroir un groupe d'objets" + } + } + }, + "SketchConstraintParallel": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/parallel.png", + "langDependentAssets": { + "en": { + "name": "Parallel", + "tooltip": "Create constraint defining two parallel lines" + }, + "fr": { + "name": "Parallèle", + "tooltip": "Créer une contrainte définissant deux lignes parallèles" + } + } + }, + "SketchConstraintPerpendicular": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/perpendicular.png", + "langDependentAssets": { + "en": { + "name": "Perpendicular", + "tooltip": "Create constraint defining two orthogonal objects" + }, + "fr": { + "name": "Perpendiculaire", + "tooltip": "Créer une contrainte définissant deux objets orthogonaux" + } + } + }, + "SketchConstraintRadius": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/radius_constr.png", + "langDependentAssets": { + "en": { + "name": "Radius", + "tooltip": "Set fixed radius of a circle or an arc" + }, + "fr": { + "name": "Rayon", + "tooltip": "Définir le rayon fixe d'un cercle ou d'un arc" + } + } + }, + "SketchConstraintRigid": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/fixed.png", + "langDependentAssets": { + "en": { + "name": "Fixed", + "tooltip": "Fix an object" + }, + "fr": { + "name": "Fixé", + "tooltip": "Fixer un objet" + } + } + }, + "SketchConstraintTangent": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/tangent.png", + "langDependentAssets": { + "en": { + "name": "Tangent", + "tooltip": "Create constraint defining tangency of two segments with common coincident point" + }, + "fr": { + "name": "Tangente", + "tooltip": "Créer une contrainte définissant la tangence de deux segments avec un point de coïncidence commun" + } + } + }, + "SketchConstraintVertical": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/vertical.png", + "langDependentAssets": { + "en": { + "name": "Vertical", + "tooltip": "Create constraint defining vertical line" + }, + "fr": { + "name": "Vertical", + "tooltip": "Créer une contrainte définissant une ligne verticale" + } + } + }, + "SketchCurveFitting": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/curvefitting.png", + "langDependentAssets": { + "en": { + "name": "Curve fitting", + "tooltip": "Create curve passing through the points" + }, + "fr": { + "name": "Courbe d'ajustement", + "tooltip": "Créer une courbe passant par les points" + } + } + }, + "SketchFillet": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/fillet.png", + "langDependentAssets": { + "en": { + "name": "Fillet", + "tooltip": "Create constraint defining fillet between two connected segments" + }, + "fr": { + "name": "Congé", + "tooltip": "Créer une contrainte définissant un congé entre deux segments connectés" + } + } + }, + "SketchIntersectionPoint": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/intersection_point.png", + "langDependentAssets": { + "en": { + "name": "Intersection", + "tooltip": "Intersect edge with sketch plane" + }, + "fr": { + "name": "Section", + "tooltip": "Intersecter une arête avec un plan d'esquisse" + } + } + }, + "SketchLine": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/line.png", + "langDependentAssets": { + "en": { + "name": "Line", + "tooltip": "Create line" + }, + "fr": { + "name": "Ligne", + "tooltip": "Créer une ligne" + } + } + }, + "SketchMacroArc": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/arc.png", + "langDependentAssets": { + "en": { + "name": "Arc", + "tooltip": "Create arc" + }, + "fr": { + "name": "Arc", + "tooltip": "Créer un arc" + } + } + }, + "SketchMacroBSpline": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/bspline.png", + "langDependentAssets": { + "en": { + "name": "B-spline", + "tooltip": "Create B-spline curve" + }, + "fr": { + "name": "B-spline", + "tooltip": "Créer une courbe B-spline" + } + } + }, + "SketchMacroBSplinePeriodic": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/bspline_p.png", + "langDependentAssets": { + "en": { + "name": "Periodic B-spline", + "tooltip": "Create periodic B-spline curve" + }, + "fr": { + "name": "Périodique B-spline", + "tooltip": "Créer une courbe périodique de type B-spline" + } + } + }, + "SketchMacroCircle": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/circle.png", + "langDependentAssets": { + "en": { + "name": "Circle", + "tooltip": "Create circle" + }, + "fr": { + "name": "Cercle", + "tooltip": "Créer un cercle" + } + } + }, + "SketchMacroEllipse": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/ellipse.png", + "langDependentAssets": { + "en": { + "name": "Ellipse", + "tooltip": "Create ellipse" + }, + "fr": { + "name": "Ellipse", + "tooltip": "Créer une ellipse" + } + } + }, + "SketchMacroEllipticArc": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/elliptic_arc.png", + "langDependentAssets": { + "en": { + "name": "Elliptic arc", + "tooltip": "Create elliptic arc" + }, + "fr": { + "name": "Arc d'ellipse", + "tooltip": "Créer un arc d'ellipse" + } + } + }, + "SketchMultiRotation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/rotate.png", + "langDependentAssets": { + "en": { + "name": "Angular copy", + "tooltip": "Copy objects and rotate" + }, + "fr": { + "name": "Copie angulaire", + "tooltip": "Copier des objets et faire pivoter" + } + } + }, + "SketchMultiTranslation": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/translate.png", + "langDependentAssets": { + "en": { + "name": "Linear copy", + "tooltip": "Copy objects and move" + }, + "fr": { + "name": "Copie linéaire", + "tooltip": "Copier des objets et les déplacer" + } + } + }, + "SketchOffset": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/offset.png", + "langDependentAssets": { + "en": { + "name": "Offset", + "tooltip": "Offset a curve to a distance" + }, + "fr": { + "name": "Décalage", + "tooltip": "Décaler une courbe d'une distance" + } + } + }, + "SketchPoint": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/point.png", + "langDependentAssets": { + "en": { + "name": "Point", + "tooltip": "Create point" + }, + "fr": { + "name": "Point", + "tooltip": "Créer un point" + } + } + }, + "SketchProjection": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/projection.png", + "langDependentAssets": { + "en": { + "name": "Projection", + "tooltip": "Project feature onto sketch plane" + }, + "fr": { + "name": "Projection", + "tooltip": "Projeter une fonction sur un plan d'esquisse" + } + } + }, + "SketchRectangle": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Addons/rectangle.png", + "langDependentAssets": { + "en": { + "name": "Rectangle", + "tooltip": "Create rectangle" + }, + "fr": { + "name": "Rectangle", + "tooltip": "Créer un rectangle" + } + } + }, + "SketchSplit": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/split.png", + "langDependentAssets": { + "en": { + "name": "Split", + "tooltip": "Cut selected segment arc or circle on existing coincident points" + }, + "fr": { + "name": "Diviser", + "tooltip": "Couper l'arc ou le cercle du segment sélectionné sur les points coïncidents existants" + } + } + }, + "SketchTrim": { + "iconPath": "%SHAPER_ROOT_DIR%/share/salome/resources/shaper/icons/Sketch/trim.png", + "langDependentAssets": { + "en": { + "name": "Trim", + "tooltip": "Trim selected segment arc or circle on intersection points nearest to the graphic selection" + }, + "fr": { + "name": "Réduire", + "tooltip": "Couper l'arc ou le cercle du segment sélectionné sur les points d'intersection les plus proches de la sélection graphique" + } + } + } + } } } } diff --git a/src/XGUI/XGUI_MenuMgr.cpp b/src/XGUI/XGUI_MenuMgr.cpp index d916a9267..c9c601d4c 100644 --- a/src/XGUI/XGUI_MenuMgr.cpp +++ b/src/XGUI/XGUI_MenuMgr.cpp @@ -76,8 +76,7 @@ void XGUI_MenuMgr::addFeature(const std::shared_ptr& theM return; } QString aWchName = ModuleBase_Tools::translate("workshop", theMessage->workbenchId()); - theMessage->setToolBarId(ModuleBase_Tools::translate("workshop", - theMessage->workbenchId()).toStdString()); + theMessage->setToolBarId(ModuleBase_Tools::translate("workshop", theMessage->workbenchId()).toStdString()); // Is toolBarId ID or name? ID must be language-independent. #ifdef HAVE_SALOME std::string aWchNameString = aWchName.toStdString(); std::shared_ptr aWorkbench = findWorkbench(aWchNameString); diff --git a/src/XGUI/XGUI_Workshop.cpp b/src/XGUI/XGUI_Workshop.cpp index 0df895c85..c40ea021c 100644 --- a/src/XGUI/XGUI_Workshop.cpp +++ b/src/XGUI/XGUI_Workshop.cpp @@ -444,7 +444,7 @@ void XGUI_Workshop::initMenu() #ifdef HAVE_SALOME // Create only Undo, Redo commands - QAction* aAction = salomeConnector()->addDesktopCommand("UNDO_CMD", tr("Undo"), + QAction* aAction = salomeConnector()->addDesktopCommand("Edit/#Undo", tr("Undo"), tr("Undo last command"), QIcon(":pictures/undo.png"), QKeySequence::Undo, false, @@ -455,7 +455,7 @@ void XGUI_Workshop::initMenu() connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onUndo())); addHistoryMenu(aAction, SIGNAL(updateUndoHistory(const QList&)), SLOT(onUndo(int))); - aAction = salomeConnector()->addDesktopCommand("REDO_CMD", tr("Redo"), tr("Redo last command"), + aAction = salomeConnector()->addDesktopCommand("Edit/#Redo", tr("Redo"), tr("Redo last command"), QIcon(":pictures/redo.png"), QKeySequence::Redo, false, "MEN_DESK_EDIT"); salomeConnector()->addActionInToolbar( aAction, aToolBarTitle ); @@ -478,44 +478,44 @@ void XGUI_Workshop::initMenu() // Add commands to a file menu // Import sub-menu - aAction = salomeConnector()->addDesktopCommand("OPEN_CMD", tr("Part set..."), + aAction = salomeConnector()->addDesktopCommand("File/Import/PartSet", tr("Part set..."), tr("Import native file"), QIcon(), QKeySequence(), false, "MEN_DESK_FILE", tr("Import"), 10, 10); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onOpen())); - aAction = salomeConnector()->addDesktopCommand("IMPORT_PART_CMD", tr("Part..."), + aAction = salomeConnector()->addDesktopCommand("File/Import/Part", tr("Part..."), tr("Import structure of a part"), QIcon(), QKeySequence(), false, "MEN_DESK_FILE", tr("Import"), 10, 10); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onImportPart())); - aAction = salomeConnector()->addDesktopCommand("IMPORT_SHAPE_CMD", tr("From CAD format..."), + aAction = salomeConnector()->addDesktopCommand("File/Import/Shape", tr("From CAD format..."), tr("Import shape from a CAD format file"), ModuleBase_IconFactory::loadIcon("icons/Exchange/import.png"), QKeySequence(), false, "MEN_DESK_FILE", tr("Import"), 10, 10); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onImportShape())); - aAction = salomeConnector()->addDesktopCommand("IMPORT_IMAGE_CMD", tr("Picture..."), + aAction = salomeConnector()->addDesktopCommand("File/Import/Image", tr("Picture..."), tr("Import a picture from an image file"), QIcon(), QKeySequence(), false, "MEN_DESK_FILE", tr("Import"), 10, 10); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onImportImage())); // Export sub-menu - aAction = salomeConnector()->addDesktopCommand("SAVEAS_CMD", tr("Part set..."), + aAction = salomeConnector()->addDesktopCommand("File/Export/PartSet", tr("Part set..."), tr("Export the current document into a native file"), QIcon(), QKeySequence(), false, "MEN_DESK_FILE", tr("Export"), 10, 11); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onSaveAs())); - aAction = salomeConnector()->addDesktopCommand("EXPORT_PART_CMD", tr("Part..."), + aAction = salomeConnector()->addDesktopCommand("File/Export/Part", tr("Part..."), tr("Export a part of the current document into a file"), QIcon(), QKeySequence(), false, "MEN_DESK_FILE", tr("Export"), 10, 11); connect(aAction, SIGNAL(triggered(bool)), this, SLOT(onExportPart())); - aAction = salomeConnector()->addDesktopCommand("EXPORT_SHAPE_CMD", tr("To CAD format..."), + aAction = salomeConnector()->addDesktopCommand("File/Export/Shape", tr("To CAD format..."), tr("Export shape to a CAD format file"), ModuleBase_IconFactory::loadIcon("icons/Exchange/export.png"), QKeySequence(), false, "MEN_DESK_FILE", tr("Export"), 10, 11); @@ -536,7 +536,7 @@ void XGUI_Workshop::initMenu() QIcon(":pictures/save.png"), QKeySequence()); aCommand->connectTo(this, SLOT(onSaveAs())); - QString aUndoId = "UNDO_CMD"; + QString aUndoId = "Edit/#Undo"; aCommand = aGroup->addFeature(aUndoId, tr("Undo"), tr("Undo last command"), QIcon(":pictures/undo.png"), QKeySequence::Undo); aCommand->connectTo(this, SLOT(onUndo())); @@ -545,7 +545,7 @@ void XGUI_Workshop::initMenu() SIGNAL(updateUndoHistory(const QList&)), SLOT(onUndo(int))); - QString aRedoId = "REDO_CMD"; + QString aRedoId = "Edit/#Redo"; aCommand = aGroup->addFeature(aRedoId, tr("Redo"), tr("Redo last command"), QIcon(":pictures/redo.png"), QKeySequence::Redo); aCommand->connectTo(this, SLOT(onRedo())); @@ -1539,7 +1539,7 @@ void XGUI_Workshop::updateCommandStatus() if (aMgr->hasModuleDocument()) { foreach(QAction* aCmd, aCommands) { QString aId = aCmd->data().toString(); - if (aId == "UNDO_CMD") { + if (aId == "Edit/#Undo") { bool isActionEnabled = false; // if ultimate is true -> using result of operation only, or using OR combination ModuleBase_ModelWidget* anActiveWidget = myOperationMgr->activeWidget(); @@ -1548,7 +1548,7 @@ void XGUI_Workshop::updateCommandStatus() else aCmd->setEnabled(myModule->canUndo()); } - else if (aId == "REDO_CMD") { + else if (aId == "Edit/#Redo") { bool isActionEnabled = false; // if ultimate is true -> using result of operation only, or using OR combination ModuleBase_ModelWidget* anActiveWidget = myOperationMgr->activeWidget(); diff --git a/test.squish/shared/testdata/SalomeApp.xml b/test.squish/shared/testdata/SalomeApp.xml index 9a36c2fe9..9825f5d0e 100644 --- a/test.squish/shared/testdata/SalomeApp.xml +++ b/test.squish/shared/testdata/SalomeApp.xml @@ -116,19 +116,6 @@ Changes made in this file can be lost!
-
- -
-
- - -
-
- -
-
- -
-- 2.39.2