Skip to main content

Commande : Créer un module d'extension

Symbole: ac_icon_create_extension.png

La commande crée un module d'extension pour un emplacement de sous-module. Il n'est disponible que si un emplacement de module vide ou un sous-module est sélectionné dans l'arborescence des modules.

La commande ouvre une boîte de dialogue dans laquelle vous définissez si l'extension doit être créée en tant que nouveau module ("Aucune variation") ou en tant que variation d'un module existant ou d'une instance de module. A cet effet, tous les modules adaptés à l'emplacement sont proposés dans une liste déroulante.

Il y a deux options :

Dériver la variation

Le module d'extension dérive du module ou de l'instance de module sélectionné dans Variante de. Le module choisi est importé via IMPORTS au module d'extension et le bloc fonction du nouveau module dérive du bloc fonction modèle de module.

Copier la source pour la variante

Un nouveau module d'extension est créé en copiant la déclaration complète du module, y compris le bloc fonction et les visualisations associées du module sélectionné dans Variante de (y compris le code source). Ceci n'est possible que si le module sélectionné dans Variante de est disponible dans le code source et pas seulement en tant que module d'une bibliothèque compilée.

Les modules d'extension servent à ajouter toute modification ou extension spécifique à l'utilisateur aux modules ou instances de module existants et prédéfinis.

Après avoir fermé la boîte de dialogue avec d'accord un nouveau dossier sera créé dans le POU pool avec le nom du module d'extension.

Dans ce dossier, les objets suivants seront créés (où <nom> est le nom du module d'extension) :

  • Cas standard : Un bloc fonction portant le nom <name>, étendant la classe "Modules" et implémentant l'interface requise du type de slot. Dans ce bloc fonctionnel, toutes les méthodes et propriétés seront créées, qui existent dans une interface implémentée mais qui ne sont implémentées dans aucune classe de base.

  • Cas de variante : Comme dans le cas standard, un bloc fonction correspondant sera créé. Ce bloc fonction dérive du bloc fonction modèle de module choisi (Dériver la variation) ou en est une copie (Copier la source pour la variante).

  • Un pool d'images et une liste de texte (nom IP_<name> ou TL_<name>). Le pool d'images contient deux icônes avec identifiant Icon_16 et Icon_32. La liste de textes contient l'entrée Desc, qui est rempli d'un <name>. Il n'y a pas de langues dans la liste de texte, seule la colonne Standard.

  • Une page de visualisation vide Visu_M_<name>, qui implémente l'interface requise. Si Copier la variation à partir de la source est sélectionné, les visualisations du module source sont copiées à la place.

  • Un module d'extension sera ajouté à l'arborescence des modules, qui n'a ni paramètres ni E/S. Pour les métadonnées, les images, textes et éléments de visualisation créés seront utilisés. La catégorie est "Extension". S'il s'agit d'une variante "dérivée", la déclaration de modèle de module est également importée via IMPORTS. S'il s'agit d'une variante "copiée", la déclaration du modèle de module est copiée et adaptée de manière à utiliser les listes de textes et les pools d'images correspondants du module d'extension.