[Résolu] [OXT] Extension_Compiler - nouvelle version A00 4.0

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
webber
Membre hOOnoraire
Membre hOOnoraire
Messages : 145
Inscription : 18 juin 2011 18:48

[Résolu] [OXT] Extension_Compiler - nouvelle version A00 4.0

Message par webber »

Bonjour,

L'amélioration d'Apache OpenOffice 4.0 pose des soucis avec les extensions contenant des barres d'outils.

Merci à bm92 pour l'extension qui facilite grandement la création des extensions. Merci aussi pour le livre Programmation OpenOffice.org et LibreOffice qui m'a permis d'apprendre le langage OOoBasic :super: .

J'ai lu cette réponse sur le forum au sujet de la nouvelle version d'AOO et les extensions, mais je ne vais pas y rajouter des questions car ce n'est pas le lieu.

Je poste un message dans ce sous-forum Macro mais je ne sais pas si c'est le plus approprié car je suis un peu perdu depuis la mise à jour d'AOO 4.0.

Vu que je suis dépendant de d'Extension Compiler, je ne sais plus trop quoi faire.

Extension compiler permet de mentionner une version minimale, mais est-ce possible de mentionner une version maximale (afin d'éviter le passage à la 4.0 d'AOO :aie: )

Code : Tout sélectionner

  beginDependencies
    setOOoDependency("3.2", "OpenOffice.org 3.2 minimal")
  endDependencies
Extension_Compiler a t-il prévu une mise à jour à court ou long terme ? Dans tous les cas, merci d'avance !

Si j'ai bien compris, de toute façon, on ne pourra plus avoir une extension compatible OpenOffice et LibreOffice :( ?

En attendant la mise à jour d'Extension_Compiler, comment je peux me dépatouiller manuellement pour créer une extension compatible avec AOO 4.0 ? J'ai compris que je devais dézipper l'oxt fournit pas Extension_compiler. Ensuite, je supprime le répertoire WindowState qui contient le fichier tbWriter.xcu. Ensuite, je mets à jour le manifest.xml qui est dans le répertoire META-INF. Par contre, pour le fichier AddonUI.xcu qui est à la racine de mon extension, je n'ai absolument pas compris ce que je dois modifier.

Et ensuite, comment recréer l'OXT, je rezippe le tout et modifie l'extension en oxt ?

Voilà toutes mes interrogations :( !

Message aux modérateurs du forum
Je sais que la règle est une question par post, mais dans mon cas, est-ce pertinent de séparer mes questions ?

Merci !
Dernière modification par webber le 30 juil. 2013 21:37, modifié 2 fois.
Apache OpenOffice OpenOffice.org 4.1.8 et LibreOffice 7.0.3.1 x64 (expérimentale)/6.4.7.2 (stable)
Windows 10, Debian et Mac OS X.
bm92
ManitOOu
ManitOOu
Messages : 2562
Inscription : 26 nov. 2005 13:42

Re: [Writer] Extension_Compiler - nouvelle version A00 4.0

Message par bm92 »

Bonjour,
Extension compiler permet de mentionner une version minimale, mais est-ce possible de mentionner une version maximale (afin d'éviter le passage à la 4.0 d'AOO :aie: )
Oui, avec l'argument 3 de setOOoDependency.
pour le fichier AddonUI.xcu je n'ai absolument pas compris ce que je dois modifier.
En y repensant, il y a plus simpl : partant du fichier oxt produit par Extension Compiler, ne modifier que AddonUI.xcu, et garder intact tous les autres.
Utiliser un éditeur de texte pour modifier AddonUI.xcu. On voit que les éléments respectent une structure en poupées russes, visualisée par l'indentation.

Exemple
Extrait de l'AddonUI.xcu créé actuellement par Extension Compiler :

Code : Tout sélectionner

      <node oor:name="OfficeToolBar">
         <node oor:name="nom.unique.extension" oor:op="replace">

           descriptifs du bouton 1
           descriptifs du bouton 2
           descriptifs du bouton 3

         </node>
      </node>
Modifier pour obtenir ceci :

Code : Tout sélectionner

      <node oor:name="OfficeToolBar">
         <node oor:name="nom.unique.extension" oor:op="replace">
            <prop oor:name="Title" oor:type="xs:string" oor:localized="true">
                <value/>
            </prop>
            <node oor:name="ToolBarItems">

              descriptifs du bouton 1
              descriptifs du bouton 2
              descriptifs du bouton 3

            </node>
         </node>
      </node>
On a inséré un bloc prop vide, ce qui amène Apache OpenOffice à lire les fichiers tbCalc.xcu, tbWriter.xcu etc générés par Extension Compiler.
On a inséré un nouveau bloc ToolBarItems, qui englobe les descriptifs de boutons.
Pour faciliter la lecture j'ai mis des lignes blanches et augmenté l'indentation de ces descriptifs, mais ce n'est pas nécessaire pour le fonctionnement.
Par contre, respecter la casse des caractères (majuscules, minuscules) pour tous les termes syntaxiques.
Rezipper l'ensemble des fichiers (avec leurs répertoires) et le renommer en oxt.
Extension_Compiler a t-il prévu une mise à jour à court ou long terme ?
Si j'ai bien compris, de toute façon, on ne pourra plus avoir une extension compatible OpenOffice et LibreOffice :( ?
Relis ma déclaration, j'ai essayé d'être clair. J'ai précisé le premier paragraphe.
Bernard

OpenOffice.org 1.1.5 fr / Apache OpenOffice 4.1.1 / LibreOffice 5.0.5.2 (X64)
MS-Windows 7 SP1 64bits Familial
webber
Membre hOOnoraire
Membre hOOnoraire
Messages : 145
Inscription : 18 juin 2011 18:48

Re: [OXT] Extension_Compiler - nouvelle version A00 4.0

Message par webber »

Bonsoir,

Merci pour ces explications claires :super: !
J'ai fait des tests et cela fonctionne bien.
Extension_Compiler me permet donc de créer des extensions compatibles AOO 3.4.1 max et LibreOffice.
Une retouche du fichier AddonUI.xcu et du fichier description.xml (pour mettre 4.0 minimal) pour créer une extension compatible uniquement A00 >= 4.0.

Pour la retouche, je me suis fait un programme à part qui analyse et modifie les deux fichiers puis rezippe l'oxt (dezippé).

Merci !

N.B. Pourrez-vous mettre un message quand une nouvelle version d'Extension_Compiler sera disponible dans le thread de l'extension ?
Apache OpenOffice OpenOffice.org 4.1.8 et LibreOffice 7.0.3.1 x64 (expérimentale)/6.4.7.2 (stable)
Windows 10, Debian et Mac OS X.