Créer un traducteur

Créer une dérivation spécifique personnalisée

 

Introduction


La construction d'un traducteur dérivé présente un énorme avantage. Il utilisera le traducteur parent complet (de base) à la seule exception que du nouveau contenu sera ajouté ici et que des fonctions existantes redéfinies remplaceront les fonctions de base. Dans ce cas, le traducteur de base reste intact. Mais aussi que les changements (majeurs) apportés au traducteur de base sont appliqués automatiquement à tout traducteur dérivé.



Étapes


1

Traducteur dérivé

1.1

Dans Visual Studio Code, ouvrez le fichier CustomTranslator.py du plugin d'exemple, qui a été mis en œuvre pendant la préparation.

1.2

Au début se trouve à nouveau la définition de la classe du traducteur. Comme nous voulons dériver de HelloWorld, nous devons le spécifier à l'intérieur des crochets.

 

Translator_CreateDerived_1

 

Dans cet exemple, la structure hiérarchique est la suivante :

 

Translator_CreateDerived_2

1.3

De plus, il est important d'ajouter la ligne suivante au début de chaque traducteur.

 

Translator_CreateDerived_3

 

Ces lignes ajouteront le chemin actuel au chemin Python. Ceci est important pour l'utilisation de déviations ultérieures.

 

2

Remplacer les fonctions

2.1

Dans le contrôleur de la cellule de travail, remplacez le traducteur utilisé par CustomTranslator.py.

 

Translator_CreateDerived_4

2.2

Dans la classe parent HelloWorld.py, nous affichons tous les attributs avec la propriété PROCESS_ATTRIBUTE.

 

Translator_CreateDerived_5

 

Dans CustomTranslator.py, nous remplaçons la fonction par une implémentation personnalisée.

Ajoutez les lignes suivantes à la fonction OperationStart().

 

 

Translator_CreateDerived_6

 

Le fait de surcharger la fonction signifie que la sortie précédente des attributs d'opérations dans HelloWorld.py ne se produira plus.

 

Programme de sortie avec HelloWorld.py

Translator_CreateDerived_7

 

Programme de sortie avec CustomTranslator.py

Translator_CreateDerived_8

2.3

Cependant, il est également possible d'appeler la fonction OperationStart() de la classe parent à la fin.

Ajoutez la ligne suivante à la fonction.

 

    super().OperationStart(operator, operation)

 

Translator_CreateDerived_9

 

Programme de sortie :

Translator_CreateDerived_10

2.4

Cela vous permet également de décider si la fonction parent doit être appelée au début ou à la fin.

Appelez l'implémentation OperationStart() de la classe parent au début.

Supprimez la ligne précédemment ajoutée à la fin et placez-la au début, conformément à l'image ci-dessous.

 

 

Translator_CreateDerived_11

 

Programme de sortie :

Translator_CreateDerived_12


3

Sortie d'événement

3.1

Dans votre cellule de travail, ajoutez un événement Texte à un élément de parcours en ouvrant le panneau des événements.

 

Translator_CreateDerived_13

3.2

Implémentez la sortie de l'événement texte.

Ajoutez les lignes suivantes à la fonction HandleEvent().

 

 

Translator_CreateDerived_14

 

Programme de sortie :

Translator_CreateDerived_15


Previous
Page précédente
Chapter
Page principale du chapitre
Next
Page suivante