L'outil Add-in Creator vous permet de créer et de modifier facilement des packages d'Add-in RoboDK. L'outil Add-in Creator fait partie du gestionnaire d'Add-in.
Vous pouvez ouvrir le créateur de Add-ins en sélectionnant Outils-Gestionnaire de Add-ins et en cliquant sur le bouton Créer un Add-in en bas du Gestionnaire de Add-ins.

Lorsque vous ouvrez l'assistant du créateur d'Add-in, vous pouvez choisir parmi les options suivantes :
●Créez un nouvel Add-in à partir de zéro : vous obtiendrez un nouveau package RoboDK (fichier RDKP).
●Créer un nouveau Add-in à partir d'un dossier ou d'une application existante : dans ce cas, vous pouvez indiquer le parcours du dossier où se trouvent les fichiers de votre Add-in. L'option Ne pas créer de package vous permet de modifier un Add-in directement dans le dossier où il réside sans créer de package RoboDK (fichier RDKP).
●Modifier un add-in existant : ouvre un paquetage RoboDK existant pour le modifier et en créer une nouvelle version.
Vous pouvez facilement créer un nouvel Add-in en saisissant des informations de base telles que le type, le nom, les informations sur l'auteur, etc.

Dans la fenêtre Add-in Creator, les champs obligatoires sont en gras. Il y en a cinq au total :
1.Type : Le type de votre Add-in, tel que App, Pilote de robot, etc.
2.Nom : Le nom de votre Add-in.
3.Identifiant unique : un identifiant unique qui appartient à ce module complémentaire spécifique. La case à cocher située à côté de ce champ vous permet d'activer le mode édition et de définir un identifiant arbitraire, qui peut contenir des lettres latines, des chiffres et des caractères supplémentaires tels que le signe moins, le point ou le trait de soulignement.
domaine.entreprise.type.nom. Bien qu'il soit possible d'utiliser une autre forme d'identifiant, nous vous recommandons de suivre le format suggéré.4.Version : La version doit être écrite en utilisant le format (major.minor.patch).
5.Révision : Le nombre de modifications de l'Add-in, il prend des valeurs numériques de 1 et plus.
Les champs restants sont facultatifs, mais vous permettent de donner une description plus précise de l'Add-in :
6.Auteur : Le prénom et le nom de l'auteur, ou le nom de votre entreprise ou de votre équipe (s'il y a plusieurs auteurs).
7.Entreprise : Le nom de l'entreprise.
8.Langue : La langue utilisée dans l'Add-in. Toutes les langues de la norme IETF BCP 47 sont répertoriées.
9.Statut du contenu : Statut du Add-in, par exemple : final, test interne, bêta, etc.
10.Description : Brève description de l'Add-in.
11.Modifié par : Ce champ peut être utilisé lorsque quelqu'un modifie l'Add-in d'un autre auteur et souhaite être mentionné comme l'auteur des modifications.
12.Créé : Date de création de la première version de l'add-in (à remplir automatiquement).
13.Modifié : Date de modification de l'Add-in (à remplir automatiquement).
14.Courriel : Adresse électronique à des fins de vente, d'assistance ou de retour d'information.
15.Site web : Le site web de votre entreprise (développeur de l'Add-in).
16.Lien de documentation : Lien vers la documentation de votre Add-in.
17.Lien vers le dépôt : Pour les Add-in open-source, un lien vers le dépôt GitHub ou un autre dépôt public où se trouve l'add-in.
18.Mots-clés : Une liste de mots-clés (tags) pour simplifier la recherche de Add-ins dans le Add-in Marketplace.
La page des dépendances de l'Add-in vous permet de définir des conditions qui doivent être remplies avant que l'Add-in (ou des fichiers spécifiques qu'il contient) ne soit installé. Si une condition échoue, la portée concernée (l'ensemble du paquet ou un seul fichier) est ignorée lors de l'installation.

Utilisez les boutons en haut de la page pour gérer les entrées :
1.Ajouter : crée une nouvelle ligne de dépendance avec des valeurs par défaut. Cliquez sur chaque cellule de la ligne pour la configurer.
2.Supprimer : supprime la ligne actuellement sélectionnée. Sélectionnez d'abord une ligne en cliquant dessus.
Chaque ligne de dépendance comporte cinq colonnes. Les champs affichés en gris italique indiquent une valeur non définie ou facultative.
Colonne | Objectif | Remarques |
Nom | Étiquette de cette dépendance ou de ce groupe de dépendances | Pour les dépendances à portée Actif, plusieurs lignes partageant le même nom forment un groupe évalué séquentiellement. Affiché comme Non spécifié si laissé vide. |
Type | Le type de vérification à effectuer | Détermine quels autres champs s'appliquent. Voir Types de dépendance ci-dessous.Dependency types |
Portée | Ce qui est ignoré si la vérification échoue | Paquet bloque l'ensemble de l'Add-in. Actif bloque uniquement un fichier spécifique qu'il contient. |
Identifiant / Nom de fichier | La cible de la vérification | Pour les vérifications de version et de système : identifie le logiciel à vérifier. Pour les vérifications de fichier : le chemin du fichier à inspecter. Affiché comme Aucun identifiant/Aucun nom de fichier si non applicable. |
Valeur | La valeur attendue à comparer | Le format varie selon le type. Affiché comme Aucune valeur si non applicable. Voir Spécifier les valeurs ci-dessous.Specifying values |
●Paquet : si la vérification échoue, l'Add-in entier n'est pas installé. Utilisez ceci lorsque l'Add-in ne peut pas fonctionner du tout sans que l'exigence soit remplie.
●Actif : si la vérification échoue, seul le fichier spécifique nommé dans la colonne Identifiant / Nom de fichier est ignoré. Le reste de l'Add-in s'installe normalement.
Pour les dépendances à portée Actif, la colonne Nom a un rôle particulier : elle définit un groupe de dépendances. Plusieurs lignes portant le même nom sont évaluées les unes après les autres pour le même fichier actif.
Ceci est utile lorsqu'un fichier peut être installé sous différentes conditions : par exemple, en fournissant une version d'un fichier pour Windows et une autre pour Linux. Chaque groupe est évalué dans son ensemble ; si une ligne du groupe réussit, l'actif est inclus.
La façon dont vous saisissez la Valeur dépend du type de dépendance :
Vérification de version : utilise la notation d'intervalle mathématique (voir Plages de version).
Fichier créé / Fichier modifié : choisissez parmi trois modes de date/heure (voir Valeurs de date et heure).
●Tous les autres types : le champ Valeur propose une liste déroulante lors de l'édition avec deux options :
●Valeur exacte : la vérification réussit si la valeur du système correspond à votre saisie (la comparaison ne tient pas compte de la casse).
●Expression régulière : la vérification réussit si la valeur du système correspond au modèle fourni.
Les valeurs de version utilisent la notation d'intervalle mathématique standard :
1.Un crochet [ ou ] signifie que la version limite est incluse.
2.Une parenthèse ( ou ) signifie que la version limite est exclue.
3.Une limite supérieure ou inférieure omise signifie qu'il n'y a pas de limite dans cette direction.
Exemple | Signification |
[5.9.0,6.0.1) | 5.9.0 ≤ version < 6.0.1 |
[6,) | version 6.0.0 ou toute version ultérieure |
(,5.9) | toute version strictement inférieure à 5.9 |
Les vérifications de date/heure de fichier n'utilisent pas la notation d'intervalle.
À la place, sélectionnez l'un des trois modes :
●Exact : l'horodatage du fichier doit correspondre exactement à la date/heure spécifiée.
●Avant : l'horodatage du fichier doit être antérieur à la date/heure spécifiée.
●Après : l'horodatage du fichier doit être postérieur à la date/heure spécifiée.
Type | Description |
Aucun | Aucune vérification n'est effectuée ; la dépendance est toujours considérée comme satisfaite. Utile comme espace réservé. |
Vérification de version | Vérifie que la version d'un composant logiciel sélectionné se situe dans la plage spécifiée. 1. |
Architecture CPU | Vérifie que l'architecture du processeur du système correspond à la valeur attendue. 1. |
Architecture de compilation | Vérifie la chaîne complète de l'interface binaire applicative (ABI) de la version en cours d'exécution. Ceci est plus détaillé que l'architecture CPU et inclut des informations sur le compilateur, le modèle de données et l'endianness. 2. |
Type de noyau | Vérifie l'identifiant du noyau du système d'exploitation sous-jacent. 3. |
Vérification système | Vérifie le nom du produit du système d'exploitation tel que rapporté par le système lui-même. 4. |
Version de fichier (Windows uniquement) | Lit la ressource de version intégrée dans un exécutable ou une bibliothèque Windows (.exe ou .dll) et la compare avec la valeur ou à l'aide d'une expression. 5. |
Fichier créé | Vérifie l'horodatage de création du fichier spécifié. 6. |
Fichier modifié | Vérifie l'horodatage de dernière modification du fichier spécifié. 8. |
L'Add-in doit contenir une ou plusieurs ressources. Les actifs peuvent être des scripts et des icônes qui définiront les actions de votre Add-in.

La page Add-in Assets est divisée en trois zones fonctionnelles :
1.Zone de sélection de l'icône du package.
2.Zone d'arborescence des fichiers.
3.Zone de prévisualisation du contenu du fichier.
L'objectif des boutons et de la case à cocher de cette page :
●Le bouton TargetPath : Le bouton Target Path ouvre la fenêtre des propriétés du fichier d'icône actuel et vous permet de définir la propriété de la cible (voir la section correspondante sur les éléments internes du package).
●Le bouton Changer l’icône… vous permet de remplacer l'icône actuelle du package par une nouvelle icone.
●Le bouton Supprimer l'icône supprime l'icône actuelle du package et définit l'icône par défaut correspondant au type du package en cours de création.
●Le bouton Nouveau dossier crée un nouveau sous-dossier dans la branche sélectionnée de l'arborescence des fichiers.
●Le bouton Add-in... permet d'ajouter de nouveaux fichiers à la branche sélectionnée de l'arborescence.
●Le bouton Supprimer supprime les éléments sélectionnés de l'arborescence des fichiers, à l'exception de ceux qui sont verrouillés.
●La case à cocher Make Python Package ajoute le fichier __init__.py au projet afin que l'interpréteur Python puisse utiliser les fichiers du projet comme un module chargeable en externe.
Les scripts Python peuvent être marqués pour être compilés ultérieurement dans des fichiers portant l'extension .pyc. Le processus de compilation sera affiché sur la page suivante de l'assistant.

Le champ Chemin cible vous permet de définir la propriété cible pour chaque fichier. Vous pouvez le faire soit manuellement, en tapant le parcours et les noms de variables souhaités, soit en invoquant la fenêtre des propriétés lorsque vous cliquez sur le bouton en forme d'engrenage dans le champ Chemin cible :

La boîte de dialogue des propriétés du fichier vous permet de définir les valeurs de la propriété cible et offre une liste pratique des variables disponibles. Elle vous permet également de définir les paramètres de la plateforme cible (type et version du système d'exploitation, modèle de CPU) sur laquelle le fichier sera déployé.

La page Compilation Python s'ouvre si au moins un script Python a été sélectionné lors de l'ajout des ressources de l'Add-in.

La compilation sera effectuée par tous les interprètes Python disponibles. La liste des interprètes disponibles et utilisés peut être modifiée dans la fenêtre Paramètres du gestionnaire d'Add-in. Le processus de compilation lui-même ne nécessite aucune intervention de la part de l'utilisateur, et la page affiche un journal de compilation détaillé afin de détecter les problèmes potentiels.
La page App Configuration vous permet de personnaliser la manière dont vos actions ou vos scripts sont liés à l'interface utilisateur de RoboDK (menu et barre d'outils). Vous verrez la fenêtre Configuration de l'App si vous créez un Add-in de type App.

Les paramètres de cette page définissent le contenu du fichier AppConfig.ini. Les clés et valeurs possibles sont listées sur cette page. Chaque application possède son propre menu et sa propre barre d'outils dans RoboDK. Les éléments de menu et les boutons de la barre d'outils sont appelés Actions en termes d'application. Vous pouvez définir les conditions d'affichage des actions, leur ordre dans le menu et leur attribuer des raccourcis clavier.
L'ensemble des paramètres de base comprend
●Menu Name (Nom du menu) : Nom de l'entrée dans le menu principal de RoboDK.
●Visible : Décochez cette case pour empêcher l'affichage du menu dans le menu principal de RoboDK.
●Menu principal : Sélectionnez l'élément de menu principal pour lequel le menu enfant de l’App sera créé ou sélectionnez Main pour créer un nouvel élément de menu principal.
●Priorité : Définissez la priorité qui détermine l'ordre d'affichage des menus de cette application par rapport aux menus des autres applications (le plus bas s'affiche en premier).
●Toolbar Area (Zone de la barre d'outils) : Position (côté) sur la fenêtre principale de RoboDK où la barre d'outils de l'application sera située.
●Toolbar Scale (Échelle de la barre d'outils) : Proportion des icônes de la barre d'outils par rapport à la taille actuelle des icônes de la barre d'outils de RoboDK.
●Commandes : Commandes de l'API RoboDK qui seront exécutées lorsque le Add-in sera activé.
Une action est créée pour chaque script Python qui se trouve dans le même dossier que le fichier AppConfig.ini. Si le script est de nature auxiliaire, cette action peut être supprimée à l'aide de la propriété Visible.
Les propriétés de l'action sont représentées par la liste suivante :
●Nom : le nom de l'action tel qu'il apparaît dans le menu et dans la barre d'outils.
●Description : texte d'une infobulle lorsque vous passez le pointeur de la souris sur un élément de menu ou un bouton de la barre d'outils.
●Priorité : l'ordre dans lequel l'action est affichée par rapport aux autres actions de cette application (la plus basse apparaît en premier).
●Raccourci
●Visible
●Développeur uniquement : cette action ne sera affichée que si RoboDK est passé en mode développeur (Ctrl+Alt+Shift+G).
●Afficher dans le menu
●Afficher dans la barre d'outils
●Contrôlable : créez une action contrôlable. Les actions contrôlables peuvent également être regroupées par numéros.
●Filtre du menu contextuel : définit les types d'éléments de l'arbre RoboDK pour lesquels cette action sera ajoutée au menu contextuel.
●Filtre double-clic : définit les types d'éléments de l'arbre RoboDK pour lesquels cette action sera appelée lors d'un double-clic.
La création de l'Add-in s'achève par la construction du package RoboDK sous la forme d'un fichier RDKP. C'est la dernière étape de la création de votre Add-in.

À l'étape finale, juste avant de créer le package, les options suivantes sont disponibles :
●Cryptage du package : cryptez le fichier afin qu'il puisse être facilement envoyé par courrier électronique, en contournant les systèmes de détection des menaces (les services de messagerie de Google interdisent directement le transfert de fichiers exécutables et de scripts Python dans les pièces jointes).
●Installer après la création : permet au gestionnaire d'Add-in d'installer le package nouvellement créé.
●Ouvrir le dossier contenant : ouvrir le dossier dans lequel le package a été créé.