[Basic] Gestion des barres d'outils personnelles (BOP)
Publié : 25 févr. 2011 22:06
A la suite de nombreux fils, une mise au point m'est parue nécessaire sur les barres d'outils (BO) et barres d'outils personnelles (BOP). Comment les gérer par macro ?
Ce suprême de code n'aborde pas, la création, la suppression et la modification des barres d'outils personnelles par macro.
Qu'est ce qu'une barre d'outil personnelle ?
Une barre d'outils est un objet du document ou de l'application qui dispose d'un certain nombre de boutons. Ces boutons peuvent être activés par un clic. L'activation d'un bouton déclenche une action. Cette action peut dériver d'un menu, par exemple Fichier-enregistrer, ou exécuter une macro.
Une barre d'outils de l'application (barre standard, barre de formatage etc ...) et les barres d'outils personnelles peuvent être crées/modifiées par le menu Outils - personnaliser. Elles peuvent être enregistrées dans Open Office ou dans le document courant. Dans ce dernier cas elles ne seront accessibles que pour ce document.
Gérer automatiquement ou à la demande des barres d'outils personnalisées peut être utile au cours d'un programme, par exemple à l'ouverture ou à la fermeture d'un document. Il peut être également proposé des BOPs spécifiques pour un type d'utilisateur du document.
Les possibilités d'adaptation sont nombreuses.
De nombreux exemples de macros existent pour afficher ou effacer une barre d'outil. Je n'en ai pas trouvé pour les BOPs. Une difficulté supplémentaire est liée à la création des BOPs par le menu Outils – personnaliser. En effet, OOo attribue un nom interne à la barre d'outil qui est plutôt ésotérique.
Dans le fichier exemple téléchargeable, deux barres d'outils portant respectivement le label « BarreOutil1 » et « BarreOutil2 » ont été crées. Peu importe la macro qu'elle activent. Dans le fichier final il y a 3 BOPs.
Ces deux BOPs sont enregistrés dans le fichier .ods correspondant pour Calc (par exemple, ici : GestionBarreOutil_0-1.ods). Un fichier enregistré au format OpenDocument est un fichier compressé au format zip contenant des fichier .xml. Lorsque l'on ouvre le fichier .ods avec 7zip, par exemple, on voit qu'il contient, entre autres un répertoire Configuration2 qui contient lui même plusieurs sous répertoires dont un appelé Toolbar. C'est dans ce répertoire que sont enregistrés les fichiers .xml décrivant les BOPs du document.
La figure ci dessus vous montre le nom interne des deux premières sur les trois BOPs que j'ai utilisées dans le fichier exemple téléchargeable à la fin de ce tuto.
La connaissance de ce nom est largement suffisant pour créer le code nécessaire aux actions à entreprendre. Par contre, dès qu'il sera nécessaire d'interagir avec l'utilisateur dans le choix des BOPs il ne sera plus question d'utiliser les noms internes.
Les macro suivantes ont été écrites pour Calc.
Ce suprême de code n'aborde pas, la création, la suppression et la modification des barres d'outils personnelles par macro.
Qu'est ce qu'une barre d'outil personnelle ?
Une barre d'outils est un objet du document ou de l'application qui dispose d'un certain nombre de boutons. Ces boutons peuvent être activés par un clic. L'activation d'un bouton déclenche une action. Cette action peut dériver d'un menu, par exemple Fichier-enregistrer, ou exécuter une macro.
Une barre d'outils de l'application (barre standard, barre de formatage etc ...) et les barres d'outils personnelles peuvent être crées/modifiées par le menu Outils - personnaliser. Elles peuvent être enregistrées dans Open Office ou dans le document courant. Dans ce dernier cas elles ne seront accessibles que pour ce document.
Gérer automatiquement ou à la demande des barres d'outils personnalisées peut être utile au cours d'un programme, par exemple à l'ouverture ou à la fermeture d'un document. Il peut être également proposé des BOPs spécifiques pour un type d'utilisateur du document.
Les possibilités d'adaptation sont nombreuses.
De nombreux exemples de macros existent pour afficher ou effacer une barre d'outil. Je n'en ai pas trouvé pour les BOPs. Une difficulté supplémentaire est liée à la création des BOPs par le menu Outils – personnaliser. En effet, OOo attribue un nom interne à la barre d'outil qui est plutôt ésotérique.
Dans le fichier exemple téléchargeable, deux barres d'outils portant respectivement le label « BarreOutil1 » et « BarreOutil2 » ont été crées. Peu importe la macro qu'elle activent. Dans le fichier final il y a 3 BOPs.
Ces deux BOPs sont enregistrés dans le fichier .ods correspondant pour Calc (par exemple, ici : GestionBarreOutil_0-1.ods). Un fichier enregistré au format OpenDocument est un fichier compressé au format zip contenant des fichier .xml. Lorsque l'on ouvre le fichier .ods avec 7zip, par exemple, on voit qu'il contient, entre autres un répertoire Configuration2 qui contient lui même plusieurs sous répertoires dont un appelé Toolbar. C'est dans ce répertoire que sont enregistrés les fichiers .xml décrivant les BOPs du document.
La figure ci dessus vous montre le nom interne des deux premières sur les trois BOPs que j'ai utilisées dans le fichier exemple téléchargeable à la fin de ce tuto.
La connaissance de ce nom est largement suffisant pour créer le code nécessaire aux actions à entreprendre. Par contre, dès qu'il sera nécessaire d'interagir avec l'utilisateur dans le choix des BOPs il ne sera plus question d'utiliser les noms internes.
Les macro suivantes ont été écrites pour Calc.