Veja como customizar e adicionar recursos ao seu Magic xpa Studio, utilizando o Tools Infrastructure.
Tools Infrastructure é um recurso do Studio do Magic xpa disponível já tem bastante tempo, mas talvez, ainda pouco explorado.
Com ele é possível customizarmos o menu “Tools” do Studio adicionando um sem número de novas opções, para as mais diferentes tarefas.
E isso tudo é feito de forma muito simples, apenas editando-se o arquivo MAGIC.INI e adicionando novos itens na seção [TOOLS_MENU]:
Veja como é fácil.
Cada linha dentro da seção [TOOLS_MENU] é formatada da seguinte maneira:
Menu Name = menu type, menu caption, parent menu name, ECF path\command, access key, pre-operation command file, post-operation command file, image for tool number and tool group
- Menu Name = Um valor qualquer (texto livre) identificando este item dentro da seção.
- Menu Type = Código que identifica o tipo de item de menu:
- A = Uma aplicação “Magic xpa” a ser executando pelo Runtime do Magic, quando o item for acionado
- O = Um arquivo .BAT ou .CMD como uma sequência qualquer de instruções dentro dele, a ser executada quando o item for acionado
- M = Um novo “Menu”, que conterá subitens (submenus)
- S = Uma simples linha separadora de itens
- A = Uma aplicação “Magic xpa” a ser executando pelo Runtime do Magic, quando o item for acionado
- Menu Caption = Texto a ser apresentado para este item
- ECF/Command = Aplicação Magic xpa ( .ECF ), quando MenuType=A ou arquivo de lote de comandos ( .BAT ou .CMD ), quando MenuType=O, e ser executado por este item
- Access Key = Tecla de atalho (shortcut) associada a este item
- PreOps Cmd File = Arquivo de sequência de instruções, a serem executadas pelo Studio “antes” de iniciar a execução deste item. Veja mais sobre “Automatic Sequence Processing” neste outro post do nosso blog
- PostOps Cmd File = Arquivo de sequência de instruções, a serem executadas pelo Studio “após” concluir a execução deste item. Veja mais sobre “Automatic Sequence Processing” neste outro post do nosso blog
- Image Tool = Imagem e tooltip a ser associada ao item do menu
Observe a riqueza de possibilidades que nos é permitida, usando-se entradas do tipo “A” (App) ou “O” (OS Cmd), para novos itens de menu.
Especificamente sobre a opção do tipo “A” (Aplicação), o sistema Magic xpa executado (pelo Runtime) tem acesso a diversas informações do projeto aberto (em desenvolvimento) através do que chamamos de “Global Parameters Information“, disponíveis através da função GetParam().
E importante: a variável de ambiente (nome lógico) %WorkingDir% não é alterada, permanecendo apontando para a pasta do projeto sendo desenvolvido. Exemplo:
- Translate( ‘%WorkingDir%Source\’ ) = Pasta onde estão todos os xmls (código-fonte) do atual projeto aberto no Studio
- Translate( ‘%WorkingDir%’ ) & GetParam( ‘MG_ApplicationName’ ) & ‘.EDP’ = Arquivo EDP do atual projeto aberto no Studio
Testando Tudo
Para matar sua curiosidade e ter a seu primeiro contato com este recurso, baixe deste endereço o pacote chamado “XRay.zip” e descompacte a pasta (de mesmo nome) dentro da pasta “Add_On” da sua instalação do Magic xpa:
Edite o arquivo MAGIC.INI e na seção [TOOLS_MENU], adicione estas 3 linhas:
MagicBRS = S,,,,,,, MagicBRM = M, MagicBR Utilities,,,,,, MagicBRA XRay = A, Project &X\-Ray, MagicBRM, Add_On\XRay\XRay.ecf, Ctrl+0,,, ImageFor = B ToolImage = "%EngineDir%Add_On\XRay\XRayLogSmall.bmp" ToolGroup = 2 ToolTip = "Show a summary of your current project" MenuShowWindow = 1
Considerando o que vimos anteriormente, estamos adicionando:
1. – um “separador“
2. – em seguida um “menu” (chamado MagicBRM)
3. – e uma “aplicação” (Magic xpa) como submenu deste menu anterior, que também pode ser ativada pela combinação de teclas CTRL+0.
“Add_On\XRay\XRay.ECF” é a aplicação a ser executada pelo Runtime do Magic e “Add_On\XRay\XRayLogSmall.BMP” é a imagem a ser usado como ícone deste item de menu.
Agora, basta abrir um projeto no Magic xpa Studio e já será visto uma nova opção no menu “Tools“:
Acionando-se este item, será aberto um programa (assistente simples) escrito totalmente em Magic xpa:
Que fazendo uso do “Global Parameters Information” vai mostrar todos os detalhes disponíveis sobre o projeto atual (em desenvolvimento):
Outro exemplo: você pode adicionar mais estas 6 linhas:
MagicBRM1 = M, Open Project's Folder...,,,,,, MagicBRM2 = M, Open Magic's Folder...,,,,,, MagicBRM1A = O, In Explorer, MagicBRM1, "%EngineDir%Add_On\XRay\XRayOpenInExplorer.CMD" "%WorkingDir%",,,, MagicBRM1B = O, In CMD, MagicBRM1, cmd.exe /k CD /d "%WorkingDir%",,,, MagicBRM2A = O, In Explorer, MagicBRM2, "%EngineDir%Add_On\XRay\XRayOpenInExplorer.CMD" "%EngineDir%",,,, MagicBRM2B = O, In CMD, MagicBRM2, cmd.exe /k CD /d "%EngineDir%",,,,
E ter uma forma eficiente de abrir diretamente a pasta do Magic xpa ou do seu projeto, no Windows Explorer ou Windows CMD:
*** como era no Magic 7 😉
Esta é a mesma infraestrutura utilizada para outras ferramentas disponíveis por padrão no Studio, como:
- DDF Maker
- String Extractor
- Upgrade Manager
- … e vários outros AddOns
E também, para todos nós.
Para receber os artigos do Blog Magic Brasil em primeira mão no seu email, registre-se aqui