Add Button to FEM Toolbar Tutorial/fr: Difference between revisions
(Created page with "La tâche peut être divisée en quatre parties : * '''Créer un nouveau fichier d'icône'''. * '''Enregistrer le nouveau fichier d'icône'''. <small>Modification nécessaire...") |
(Created page with "== Créer un nouveau fichier d'icône ==") |
||
Line 20: | Line 20: | ||
* '''Ajout d'une nouvelle commande à l'atelier'''. <small>Modification nécessaire dans {{incode|src/Mod/Fem/Gui/Workbench.cpp}}</small>. |
* '''Ajout d'une nouvelle commande à l'atelier'''. <small>Modification nécessaire dans {{incode|src/Mod/Fem/Gui/Workbench.cpp}}</small>. |
||
== |
== Créer un nouveau fichier d'icône == |
||
For the button we need an icon file. You can use any of your favorite tools to create it, but it must be in the SVG format. Here we will use the {{FileName|FEM_testButton.svg}} file as an example. |
For the button we need an icon file. You can use any of your favorite tools to create it, but it must be in the SVG format. Here we will use the {{FileName|FEM_testButton.svg}} file as an example. |
Revision as of 10:15, 26 September 2021
Tutorial |
Topic |
---|
FEM |
Level |
Avancé |
Time to complete |
60 min |
Authors |
JohnWang |
FreeCAD version |
0.19 |
Example files |
None |
See also |
None |
Introduction
L'atelier FEM dispose de barres d'outils et de menus. Ce tutoriel montre comment ajouter un bouton de test à une barre d'outils. Il montre également comment ajouter un élément de menu à un menu.
La tâche peut être divisée en quatre parties :
- Créer un nouveau fichier d'icône.
- Enregistrer le nouveau fichier d'icône. Modification nécessaire dans
src/Mod/Fem//Gui/Resources/Fem.qrc
- Créer une nouvelle classe de commande. Modification nécessaire dans
src/Mod/Fem/femcommands/commands.py
- Ajout d'une nouvelle commande à l'atelier. Modification nécessaire dans
src/Mod/Fem/Gui/Workbench.cpp
.
Créer un nouveau fichier d'icône
For the button we need an icon file. You can use any of your favorite tools to create it, but it must be in the SVG format. Here we will use the FEM_testButton.svg file as an example.
It must be placed in: src/Mod/Fem/Gui/Resources/icons/
.
Register the new icon file
The new SVG icon file has to be registered for the GUI-button by inserting it in src/Mod/Fem/Gui/Resources/Fem.qrc
:
<file>icons/FEM_testButton.svg</file>
Create a new command class
A new command class has to be added to the src/Mod/Fem/femcommands/commands.py
module.
Just copy/paste an existing command, then adjust the icon, menu text and tool-tip in __init__(self)
:
class _testButton(CommandManager):
"The FEM_testButton command definition"
def __init__(self):
super(_testButton, self).__init__()
self.menuetext = "test Button"
self.tooltip = "This is a test button"
self.is_active = "always"
#self.do_activated = "add_obj_on_gui_selobj_noset_edit"
Don't forget to register the command at the bottom of the module file with the addCommand(...)
method:
FreeCADGui.addCommand(
"FEM_testButton",
_testButton()
)
Note: Please see this discussion thread in the forum if icons are involved.
Add new command to workbench
We will add the new command to both the solve toolbar and the solve menu.
Search for the following code snippet in /Gui/Workbench.cpp
and add the new command:
Gui::ToolBarItem* solve = new Gui::ToolBarItem(root);
solve->setCommand("Solve");
*solve << "FEM_SolverCalculixCxxtools"
<< "FEM_SolverCalculiX"
<< "FEM_SolverElmer"
+ << "FEM_testButton"
<< "Separator"
To add the command to the solve menu of the FEM workbench, search for the following code snippet in Workbench.cpp
:
Gui::MenuItem* solve = new Gui::MenuItem;
root->insertItem(item, solve);
solve->setCommand("&Solve");
*solve << "FEM_SolverCalculixCxxtools"
<< "FEM_SolverCalculiX"
<< "FEM_SolverElmer"
<< "FEM_SolverZ88"
+ << "FEM_testButton"
<< "Separator"
Result: You should have just successfully added a test button to a FEM workbench toolbar and menu. Now, you can compile FreeCAD and test your new button.