Vous pouvez créer des compléments XML pour grouper plusieurs commandes afin d'appeler des programmes exécutables ou des scripts VB et les ajouter dans des menus PowerAMC.
L'illustration suivante vous permet de comprendre la structure du fichier XML :
Profile est l'élément racine dans le descripteur du complement fichier XML, et peut contenir :
Un élément Shared - définit les menus qui sont toujours disponibles et leurs méthodes associées, avec un attribut GlobalScript, qui peut contenir un script global pour les fonctions partagées.
Un ou plusieurs éléments Metaclass - qui définissent les commandes et menus pour une métaclasse spécifique, identifiée par son nom public préfixé par le nom public de sa bibliothèque de type.
<?xml version="1.0" encoding="UTF-8"?> <Profile> <Metaclass Name="PdOOM.Model"> <Menus> <Menu Location="Tools"> <Popup Caption="Perforce"> <Command Name="CheckIn" Caption="Check In"/> <Separator/> <Command Name="CheckOut" Caption="Check Out"/> </Popup> </Menu> </Menus> <Methods> <Method Name="CheckIn"> Sub %Method%(obj) execute_command( p4, submit %Filename%, cmd_PipeOutput) End Sub </Method> <Method Name="CheckOut"> Sub %Method%(obj) execute_command( p4, edit %Filename%, cmd_PipeOutput) End Sub </Method> </Methods> </Metaclass> </Profile>
<?xml version="1.0" encoding="UTF-8"?> <Profile> <Shared> <GlobalScript> Option Explicit Function Print (obj) Output obj.classname & " " & obj.name End Function </GlobalScript> </Shared> <Metaclass Name="PdOOM.Class"> <Menus> <Menu> <Popup Caption="Transformation"> <Command Name="ToInt" Caption="Convertir en interface"/> <Separator/> </Popup> </Menu> </Menus> <Methods> <Method Name="ToInt"> Sub %Method%(obj) Print obj ExecuteCommand("%MORPHEUS%\ToInt.vbs", "", cmd_InternalScript) End Sub </Method> </Methods> </Metaclass> </Profile>