You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.3 KiB
64 lines
2.3 KiB
import FreeCAD as App |
|
import FreeCADGui as Gui |
|
from freecad.LaserCladdingWorkbench import lc_resource |
|
|
|
from freecad.LaserCladdingWorkbench import commands |
|
|
|
import os |
|
|
|
class LaserCladding (Gui.Workbench): |
|
MenuText = "Laser Cladding" |
|
ToolTip = "Create Simple Paths on workpieces for Laser Cladding" |
|
Icon = os.path.join(App.getUserAppDataDir(), |
|
"Mod", "fc_lasercladding_wb","freecad", "LaserCladdingWorkbench", |
|
"Resources", "icons", "LaserWorkbench.svg") |
|
|
|
def __init__(self): |
|
pass |
|
|
|
def Initialize(self): |
|
"""This function is executed when the workbench is first activated. |
|
It is executed once in a FreeCAD session followed by the Activated function. |
|
""" |
|
import freecad.LaserCladdingWorkbench |
|
self.appendMenu("LaserCladding", |
|
["LCCreateProgram", |
|
"LCSelectBaseReference", |
|
"LCCreatePad", |
|
"LCRecompute", |
|
"LCSaveProg" |
|
] |
|
) # creates a new menu |
|
|
|
self.appendToolbar("LaserCladding", |
|
["LCCreateProgram", |
|
"LCSelectBaseReference", |
|
"LCCreatePad", |
|
"LCRecompute", |
|
"LCSaveProg" |
|
] |
|
) # creates a new toolbar |
|
|
|
def Activated(self): |
|
"""This function is executed whenever the workbench is activated""" |
|
import freecad.LaserCladdingWorkbench |
|
from importlib import reload |
|
reload(freecad.LaserCladdingWorkbench) |
|
return |
|
|
|
def Deactivated(self): |
|
"""This function is executed whenever the workbench is deactivated""" |
|
return |
|
|
|
def ContextMenu(self, recipient): |
|
"""This function is executed whenever the user right-clicks on screen""" |
|
# "recipient" will be either "view" or "tree" |
|
self.appendContextMenu("Laser Cladding",[]) # add commands to the context menu |
|
|
|
def GetClassName(self): |
|
# This function is mandatory if this is a full Python workbench |
|
# This is not a template, the returned string should be exactly "Gui::PythonWorkbench" |
|
return "Gui::PythonWorkbench" |
|
|
|
|
|
Gui.addWorkbench(LaserCladding())
|
|
|