Les définitions étendues de modèle peuvent être utilisées afin de créer de nouvelles cibles de génération.
La case Compléter la génération de langage ne doit pas être cochée dans la feuille de propriétés de la définition étendue de modèle
La définition étendue de modèle doit contenir des fichiers générés et templates. Lors de la génération, l'évaluation d'un template génère du texte qui est écrit dans un fichier
Ce type de génération est appelé génération étendue, et est accessible via la commande
.Si vous disposez de plusieurs définitions étendues de modèle conçues pour la génération étendue, elles apparaissent dans la page Cibles de la boîte de dialogue de génération.
Vous pouvez créer des commandes dans le menu Outils afin d'accéder directement à la génération étendue d'une cible sélectionnée. Pour ce faire, vous devez :
Créer un menu (voir Menus (Profile)) sous la métaclasse Model dans la catégorie Profile de la définition étendue de modèle, et sélectionner Menu Outils dans la liste Emplacement
Créer une méthode (voir Méthodes (Profile)) pour appeler la génération étendue comme suit :
Sub %Method%(obj) Dim selection ' as ObjectSelection ' Create a new selection set selection = obj.CreateSelection ' Add object of the active selection in the created selection selection.AddActiveSelectionObjects ' Generate scripts for specific target InteractiveMode = im_Dialog obj.GenerateFiles "", selection, "cible particulière"" End Sub
cible particulière est le code de la cible de génération étendue.
La nouvelle commande s'affiche sous le menu Outils.
L'onglet Cibles ne s'affiche pas car la méthode sous-jacente spécifie une cible de génération.