[Résolu][Math] Cacher le dock/toolbar "Éléments"

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 !
ithi
Fraîchement OOthentifié
Messages : 9
Inscription : 23 avr. 2020 02:42

[Résolu][Math] Cacher le dock/toolbar "Éléments"

Message par ithi »

Salut a tous !

J'essaie de verrouiller la configuration de l'interface graphique pour créer un module d'accessibilité.

Tout d'abord, pour cela, je cache le panneau latéral dans Writer. C'est bon ; dans manifest.xml, j'ai mis "vnd.sun.star.configuration-data" pour views.xcu, et dans ce fichier avec WindowType, j'ai défini visible sur false.

Je cherche à faire de même avec la fenêtre ancrée "éléments" dans LibreOffice Math.

J'essaie de faire ce code, mais ces paramètres ne fonctionnent pas :

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data oor:name="Views" oor:package="org.openoffice.Office"
    xmlns:install="http://openoffice.org/2004/installation"
    xmlns:oor="http://openoffice.org/2001/registry"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" >
    
    <node oor:name="WindowType">
         <!-- Show sidebar or not -->
        <node oor:name="10336" oor:op="replace">
            <prop oor:name="Visible" oor:type="xs:boolean">
                <value>false</value>
            </prop>
        </node>
        <node oor:name="swriter/10336" oor:op="replace">
            <prop oor:name="Visible" oor:type="xs:boolean">
                <value>false</value>
            </prop>
        </node>
         <!-- Show Math element bar or not -->
        <node oor:name="smath/30382" oor:op="replace">
            <prop oor:name="Visible" oor:type="xs:boolean" oor:finalized="true">
                <value>false</value>
            </prop>
            <node oor:name="UserData" oor:op="replace">
                <prop oor:name="Data" oor:type="xs:string" oor:finalized="true">
                    <value>V2,H,0,AL:(4,16,0/0/298/0,298;727)</value>
                </prop>
            </node>
        </node>
    </node>
    
    <node oor:name="Windows">
        <node oor:name="smath/30382" oor:op="replace">
            <prop oor:name="Visible" or:type="xs:boolean" oor:finalized="true">
                <value>false</value>
            </prop>
            <node oor:name="UserData" oor:op="replace">
                <prop oor:name="Data" oor:type="xs:string" oor:finalized="true">
                    <value>V2,H,0,AL:(4,16,0/0/298/0,298;727)</value>
                </prop>
            </node>
        </node>
    </node>
</oor:component-data>
Dernière modification par ithi le 27 avr. 2020 15:22, modifié 2 fois.
Libreoffice version : 6.3.5 (ou dernière stable)

Build ID: 1:6.2.8~rc2-0ubuntu0.18.04.1
Threads CPU : 6; OS : Linux 5.3 kde5;
Locale : fr-FR (fr_FR.UTF-8);

Utilisé aussi sur MAC OS 10 et Windows 10
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 10152
Inscription : 28 août 2010 08:45

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par micmac »

Bonjour et bienvenue,
Dans votre signature il y a écrit :Libreoffice version: 6.2.8.2 [...] aussi sur MAC
Cette version de LibO est obsolète.
Si c'est une obligation, mentionnez-le dans votre signature en ajoutant Obligation de version.

Afin de profiter des dernières améliorations, il est fortement recommandé d'être à jour de la dernière version stable.

Merci de renseigner la version exacte du Mac (macOS 10.15.3 par exemple).

Accès direct à votre signature pour la corriger.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
ithi
Fraîchement OOthentifié
Messages : 9
Inscription : 23 avr. 2020 02:42

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par ithi »

Aucune obligation de version en rien.
Il ne s'agit pas de moi, mais de proposer un plugin fonctionnel au plus grand nombre.

Je pense que c'est une limitation involontaire dans LibreOffice, si quelqu'un a des informations pour ce problème, cela m'intéresse grandement !
Libreoffice version : 6.3.5 (ou dernière stable)

Build ID: 1:6.2.8~rc2-0ubuntu0.18.04.1
Threads CPU : 6; OS : Linux 5.3 kde5;
Locale : fr-FR (fr_FR.UTF-8);

Utilisé aussi sur MAC OS 10 et Windows 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par Dude »

Salut,

Pas compris ta limitation ni ton histoire de plugin.

Pour afficher ou masquer une barre d'outils flottante, le dispatcher fait parfaitement l'affaire :

Code : Tout sélectionner

Sub Main
	VoletElement(1) '1 affiche et 0 masque
End Sub

Sub VoletElement(optional sStatut as boolean)
   ' Ce code s'inspire du travail de Alain de La Chaume
   ' depuis le forum OpenOffice https://forum.openoffice.org/fr
   ' Merci de respecter le travail de l'auteur en laissant cette info
   dim oDoc as object, oFrame as object, dsp as object
   dim args(0) as new com.sun.star.beans.PropertyValue
   sVolet = "ToolBox"
   
   if isMissing(sStatut) then sStatut = false
   
   oDoc = thisComponent
   oFrame = oDoc.currentController.Frame
   dsp = createUnoService("com.sun.star.frame.DispatchHelper")
   args(0).Name =  sVolet
   args(0).Value = sStatut
   dsp.executeDispatch(oFrame, ".uno:" & sVolet, "", 0, args())
End Sub
ithi
Fraîchement OOthentifié
Messages : 9
Inscription : 23 avr. 2020 02:42

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par ithi »

Le code ne semble pas fonctionner dans mon cas.

J'avais en tête que le dispatcher ne fonctionne que sous Calc ou Writer.

Voici le volet "Éléments" en question, que j'aimerais bien fermer (le numéro 4) :
[img]h**ps://elearn.ellak.gr/pluginfile.php/3987/mod_page/content/12/math-main-window.png[/img]
La modération vous a écrit: Pas de fichier de moins de 500 ko hébergé en dehors du forum.
Veuillez corriger votre message en utilisant le bouton "EDITER" (situé à droite) et en mettant en ligne votre fichier correctement. : Comment joindre un fichier

j'ai essayé uno: Toolbox, Symbols, SymbolsCatalaog mais cela ne semble pas être ce que je cherche.
Libreoffice version : 6.3.5 (ou dernière stable)

Build ID: 1:6.2.8~rc2-0ubuntu0.18.04.1
Threads CPU : 6; OS : Linux 5.3 kde5;
Locale : fr-FR (fr_FR.UTF-8);

Utilisé aussi sur MAC OS 10 et Windows 10
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
Messages : 1214
Inscription : 06 avr. 2016 07:26

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par Hubert Lambert »

Bonjour,

Essaie comme ceci :

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data oor:name="Views" oor:package="org.openoffice.Office"
    xmlns:install="http://openoffice.org/2004/installation"
    xmlns:oor="http://openoffice.org/2001/registry"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xs="http://www.w3.org/2001/XMLSchema" >
   
    <node oor:name="Windows">
        <node oor:name="smath/30382" oor:op="replace">
            <prop oor:name="Visible" oor:op="fuse">
                <value xsi:nil="true"/>
            </prop>
            <node oor:name="UserData">
                <prop oor:name="Data" oor:op="fuse" oor:type="xs:string">
                    <value>V2,H,0,General</value>
                </prop>
            </node>
            <prop oor:name="WindowState" oor:op="fuse">
                <value></value>
            </prop>
        </node>
    </node>
</oor:component-data>
Et pour masquer l'item "Élements" dans le menu "Affichage" (à déclarer également dans le manifest.xml comme "vnd.sun.star.configuration-data") :

Code : Tout sélectionner

<?xml version="1.0" ?>
<oor:component-data oor:name="Addons" oor:package="org.openoffice.Office" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <node oor:name="AddonUI">
    <node oor:name="OfficeMenuBarMerging">
      <node oor:name="" oor:op="replace">
        <node oor:name="" oor:op="replace">
          <prop oor:name="MergeCommand">
            <value>Remove</value>
          </prop>
          <prop oor:name="MergeFallback">
            <value>Ignore</value>
          </prop>
          <prop oor:name="MergePoint">
            <value>.uno:ViewMenu\.uno:ElementsDockingWindow</value>
          </prop>
          <prop oor:name="MergeContext">
            <value>com.sun.star.formula.FormulaProperties</value>
          </prop>
        </node>
      </node>
    </node>
  </node>
</oor:component-data>
Cordialement.
 Ajout : Fichier et code corrigés 
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Hubert Lambert le 25 avr. 2020 17:21, modifié 2 fois.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par Dude »

ithi a écrit :J'avais en tête que le dispatcher ne fonctionne que sous Calc ou Writer.
Le service fonctionne partout, c'est l'enregistrement qui est restreint.
ithi a écrit :Le code ne semble pas fonctionner dans mon cas.
Ah bon ? L'exécution de la routine Main marche comme attendu :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
ithi
Fraîchement OOthentifié
Messages : 9
Inscription : 23 avr. 2020 02:42

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par ithi »

dude : Merci, en adaptant ton code cela fonctionne, sinon cela ne fonctionne pas.
(Il faut remplacer "Toolbox" par "ElementsDockingWindow".)

Il y a-t-il une façon de lister tous les uno: possible ? C'est un peu difficile d'en deviner le nom...

Merci aussi à Hubert Lambert, c'est exactement ce que je cherchais, ça fonctionne sur la dernière version stable de Lbo.
Libreoffice version : 6.3.5 (ou dernière stable)

Build ID: 1:6.2.8~rc2-0ubuntu0.18.04.1
Threads CPU : 6; OS : Linux 5.3 kde5;
Locale : fr-FR (fr_FR.UTF-8);

Utilisé aussi sur MAC OS 10 et Windows 10
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 26242
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par Dude »

ithi a écrit :(Il faut remplacer "Toolbox" par "ElementsDockingWindow".)
Encore une subtilité du dérivé d'OpenOffice pour se distinguer.
ithi a écrit :Il y a-t-il une façon de lister tous les uno: possible ? C'est un peu difficile d'en deviner le nom...
La plupart des commandes sont listés dans les XML gérant les menus : http://beaussier.com/sections/viewtopic.php?f=8&t=1558
ithi a écrit :Merci aussi à Hubert Lambert, c'est exactement ce que je cherchais, ça fonctionne sur la dernière version stable de Lbo.
Il te reste donc à ajouter le classique [Résolu]
ithi
Fraîchement OOthentifié
Messages : 9
Inscription : 23 avr. 2020 02:42

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par ithi »

Parfait, merci pour toutes ces réponses !
J'ajoute le résolu :)
Libreoffice version : 6.3.5 (ou dernière stable)

Build ID: 1:6.2.8~rc2-0ubuntu0.18.04.1
Threads CPU : 6; OS : Linux 5.3 kde5;
Locale : fr-FR (fr_FR.UTF-8);

Utilisé aussi sur MAC OS 10 et Windows 10
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
Messages : 1214
Inscription : 06 avr. 2016 07:26

Re: [Math] Cacher le dock/toolbar "Éléments"

Message par Hubert Lambert »

ithi a écrit :Il y a-t-il une façon de lister tous les uno: possible ? C'est un peu difficile d'en deviner le nom...
Une liste est générée automatiquement sur cette page du wiki : https://wiki.documentfoundation.org/Development/DispatchCommands.
Cordialement.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
▼ | « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)