Poradnik: Dodaj przycisk do paska narzędzi MES
| Temat |
|---|
| MES |
| Poziom trudności |
| Zaawansowany |
| Czas wykonania |
| 60 min |
| Autorzy |
| JohnWang |
| Wersja FreeCAD |
| 0.19 |
| Pliki z przykładami |
| Zobacz również |
| - |
Wprowadzenie
Środowisko pracy MES ma paski narzędzi i menu. Ten poradnik pokazuje jak dodać testowy przycisk do paska narzędzi. Przedstawia też dodawanie obiektu do menu.
Zadanie można podzielić na cztery części:
- Utwórz plik nowej ikony.
- Zarejestruj plik nowej ikony. Wymagana modyfikacja w
src/Mod/Fem/Gui/Resources/Fem.qrc - Utwórz klasę nowego polecenia. Wymagana modyfikacja w
src/Mod/Fem/femcommands/commands.py - Dodaj nowe polecenie do środowiska pracy MES. Wymagana modyfikacja w
src/Mod/Fem/Gui/Workbench.cpp
Utwórz plik nowej ikony
Potrzebujemy pliku ikony dla przycisku. Możesz skorzystać z dowolnego narzędzia aby go utworzyć, ale musi być zapisany w formacie SVG. W tym przykładzie skorzystamy z pliku FEM_testButton.svg.
Musi być umieszczony w: src/Mod/Fem/Gui/Resources/icons/.
Zarejestruj plik nowej ikony
Plik SVG nowej ikony musi być zarejestrowany dla przycisku GUI poprzez wstawienie go do src/Mod/Fem/Gui/Resources/Fem.qrc:
<file>icons/FEM_testButton.svg</file>
Utwórz klasę nowego polecenia
Nowa klasa polecenia musi być dodana do modułu src/Mod/Fem/femcommands/commands.py.
Po prostu skopiuj i wklej istniejące polecenie, następnie dostosuj ikonę, tekst menu i wskazówkę narzędzia w __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"
Nie zapomnij zarejestrować polecenia na dole pliku modułu poprzez metodę addCommand(...):
FreeCADGui.addCommand(
"FEM_testButton",
_testButton()
)
Uwaga: Zobacz ten wątek na forum w kwestii ikon.
Dodaj nowe polecenie do środowiska pracy MES
Dodamy nowe polecenie do paska solve (Rozwiąż) i menu solve (Rozwiąż).
Poszukaj następującego fragmentu kodu w /Gui/Workbench.cpp i dodaj nowe polecenie:
Gui::ToolBarItem* solve = new Gui::ToolBarItem(root);
solve->setCommand("Solve");
*solve << "FEM_SolverCalculixCxxtools"
<< "FEM_SolverCalculiX"
<< "FEM_SolverElmer"
+ << "FEM_testButton"
<< "Separator"
Aby dodać polecenie do menu solve (Rozwiąż) środowiska pracy MES, poszukaj następującego fragmentu kodu w 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"
Efekt: Powinieneś właśnie prawidłowo dodać testowy przycisk do paska narzędzi i menu środowiska pracy MES. Teraz możesz skompilować FreeCAD i przetestować swój nowy przycisk.