Macro MacroMenu

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Macro MacroMenu and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎français • ‎italiano • ‎čeština

Macro MacroMenu.png Macro MacroMenu

Description
Ajoute les macros trouvées dans le dossier macros au menu Macros FreeCAD

Version macro : 1.0
Date dernière modification : 2014-08-07
Version FreeCAD : Toutes
Téléchargement : ToolBar Icon
Auteur
Yorik
Téléchargement
ToolBar Icon
Liens
Version Macro
1.0
Dernière modification
2014-08-07
Version(s) FreeCAD
Toutes
Raccourci clavier
None
Voir aussi
None


Description

Ce code faisait partie intégrante du Module Draft et a été retiré voir issue #490.

Script

ToolBar Icon Macro MacroMenu.png

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)