Skip to content
| Marketplace
Sign in
Visual Studio>Tools>AddinLabel
AddinLabel

AddinLabel

axvs

|
14 installs
| (0) | Free
Ajout d'une fonctionnalité dans le menu contextuel permettant de sychroniser les fichiers de labels.Ajout d'une fonctionnalité dans le menu contextuel permettant de sychroniser les fichiers de labels.
Download

Introduction

Ce projet a pour but d'automatiser l'édition des fichiers de labels. Sous la forme d'une extension Visual Studio, ce programme permet d'harmoniser tous les labels du référentiel sélectionné vers les autres fichiers.

Installation

Pour installer cette extension, il faut télécharger le dépôt. Vous trouverez AddinLabel.vsix, c'est l'exécutable qui lance l'installation de l'extension Visual Studio. Exécuter le puis lancer Visual Studio, allez dans Tools → Extensions and Updates. Rechercher AddinLabel et activer l'extension. Une fois installé et activé, il est nécessaire de redémarrer Visual studio. L'extension est prête à l'emploi.

Utilisation

Sur le fichier de label voulu, il suffit de faire clique-droit → Synchoniser les labels. Tous les labels du fichier référence sont alors distribués aux autres fichiers de label. Si un label n'est pas référencé dans le fichier maître, alors il est supprimé.

enter image description here

Code source

La solution est découpée en deux projets :

  • La librairie VerifyLabelFile
  • Un projet VSIX AddinLabel

Des commentaires ont été ajoutés dans le code pour facilité la relecture de code.

La librairie VerifyLabelFile :

Cette librairie est constituée de trois classes :

  • Label
  • LabelFile
  • FileMethod

Label est un objet composé de trois attributs :

  • LabelId
  • LabelText
  • LabelDescription

LabelFile est un objet composé de quatre attributs :

  • Path
  • Name
  • Content
  • ListeLabel

La classe FileMethod est composée de sept méthodes :

  • AddaptModel (string nomDuModel)
  • AddaptFileName(string nomDuFichierReference)
  • getlabelfiles(List(FileLabel) fileLabel, string modelAdapt, string fichierAdapt)
  • Content2ListLabel(List(FileLabel) fileLabel)
  • CompareCompleteSupplabelfile(List(FileLabel) fileLabel, string fichierAdapt)
  • SaveAllData(List(FileLabel) fileLabel, string nomDuModel)
  • VerifyLabel (string nomDuModel, string nomDuFichierReference)

AddaptModel

Cette méthode permet de d'adapter la donnée d'entrée qui est à l'origine le nom du projet. La valeur de retour est une string qui contient uniquement le modèle du projet.

AddaptFileName

Cette méthode permet de d'adapter la donnée d'entrée qui est à l'origine le nom du fichier avec son extension. La valeur de retour est une string qui contient uniquement le nom du fichier sans l'extension.

GetLabelFiles

La méthode reçoit une liste de fichiers de labels, le nom du modèle et le nom du fichier référence. Elle se place directement à l'endroit où sont stocké les fichiers de labels puis elle attribut un path, le nom et le contenu du fichier à un objet FileLabel qui est insérer dans la liste des fichiers de labels. Cette méthode retourne une liste qui contient la totalité des fichiers de labels.

Content2ListLabel

Cette méthode reçoit la liste de fichiers de labels. Chaque fichier de label est parcouru et découpé de trois manières différentes. Une pour le LabelID, une pour le LabelText et une pour le LabelDescription. Chaque élément est alors associé a un objet Label qui est lui-même ajouté à une liste de label associé a chaque fichier.

CompareCompleteSuppLabelFile

Cette méthode reçoit la liste des fichiers de label et le nom du fichier de référence. Elle récupère le fichier référence puis, pour chaque fichier de la liste, rajoute les labels manquant. Lorsqu'un label est manquant, il est alors ajouté à la fin du fichier. Si d'autres labels existent, mais ne sont pas référencés dans le fichier référence, ils sont alors supprimés.

SaveAllData

Cette méthode va créer un dossier 'LabelBAK' dans le répertoire 'Mes documents' de l'utilisateur. Dans ce dossier il y aura un autre dossier avec le nom du model utilisé. Un dossier avec la date du jour et l'heure contiendra tous les fichiers de labels. L'architecture se présente de la manière suivante :

Mes documents → LabelBAK → Nom du model → Date du jour → Fichiers de labels

VerifyLabel

Cette méthode est l'encapsulation des autres méthodes. Elle reçoit le modèle et le nom du fichier référence. Dans un premier temps, elle déclare une liste de fichiers de labels et adapte le modèle et le nom du fichier référence (AddaptModel et AddaptFilename). Ensuite, la méthode récupère les fichiers de labels et convertis les données brutes en liste de labels. A ce moment la méthode SaveAllData fait un Backup des fichiers de labels. La dernière étape est la comparaison des labels du fichier de référence aux autres fichiers de labels.

Le projet VSIX AddinLabel :

Ce projet est composé de plusieurs éléments :

  • AddinLabel.cs
  • AddinLabelPackage.vsct

AddinLabel.cs

Cette classe contient des attributs, un constructeur, une méthode InitializeAsync et une CheckLabel. La méthode CheckLabel récupère le nom du projet et le nom du fichier de référence. Pour chaque élément sélectionné, la méthode exécutera VerifyLabel et synchronisera les fichiers de labels.

AddinLabelPackage.vsct

Ce fichier est au format xml et agit sur la configuration des tables de commandes. On y définit une commande, un bouton, son placement et la corrélation entre son GUID et ID.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft