Macro MacroMenu: Difference between revisions
(Vertical {{Macro}}; fixed icon) |
(icon) |
||
Line 4: | Line 4: | ||
{{Macro |
{{Macro |
||
|Name=Macro MacroMenu |
|Name=Macro MacroMenu |
||
|Icon=Macro_MacroMenu.png |
|||
|Description=Adds the macros found in the macros folder to the FreeCAD Macros menu |
|Description=Adds the macros found in the macros folder to the FreeCAD Macros menu |
||
|Author=Yorik |
|Author=Yorik |
||
|Version=1.0 |
|Version=1.0 |
||
|Date=2014-08-07 |
|Date=2014-08-07 |
||
|FCVersion=All |
|||
|Download=[https://www.freecadweb.org/wiki/images/1/1e/Macro_MacroMenu.png ToolBar Icon] |
|||
}} |
}} |
||
Line 15: | Line 18: | ||
==Script== <!--T:3--> |
==Script== <!--T:3--> |
||
</translate> |
</translate> |
||
ToolBar Icon [[Image:Macro_MacroMenu.png]] |
|||
'''Macro_MacroMenu.FCMacro''' |
'''Macro_MacroMenu.FCMacro''' |
Revision as of 09:38, 8 July 2019
Description |
---|
Adds the macros found in the macros folder to the FreeCAD Macros menu Macro version: 1.0 Last modified: 2014-08-07 FreeCAD version: All Download: ToolBar Icon Author: Yorik |
Author |
Yorik |
Download |
ToolBar Icon |
Links |
Macros recipes How to install macros How to customize toolbars |
Macro Version |
1.0 |
Date last modified |
2014-08-07 |
FreeCAD Version(s) |
All |
Default shortcut |
None |
See also |
None |
Description
This code was part of the Draft Module and has been removed cf issue #490.
Script
Macro_MacroMenu.FCMacro
import os,FreeCAD,FreeCADGui
macrosList = []
macroPath = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Macro").GetString("MacroPath")
class MacroCommand():
"A template for macro commands"
def __init__(self,macroname):
self.macroname = macroname
def GetResources(self):
return {'Pixmap' : 'Draft_Macro',
'MenuText': self.macroname,
'ToolTip': 'Executes the '+self.macroname+' macro'}
def Activated(self):
target = macroPath+os.sep+self.macroname+'.FCMacro'
if os.path.exists(target): execfile(target)
if macroPath and os.path.isdir(macroPath):
macros = []
for f in os.listdir(macroPath):
if ".FCMacro" in f:
macros.append(f[:-8])
for m in macros:
cmd = 'Macro_'+m
FreeCADGui.addCommand(cmd,MacroCommand(m))
macrosList.append(cmd)