[Risolto] Shortcuts, Accelerators.xcu e script Python

Discussioni sull'uso di estensioni esterne con OpenOffice
Rispondi
Avatar utente
giuserpe
Messaggi: 127
Iscritto il: mercoledì 23 aprile 2014, 12:53

[Risolto] Shortcuts, Accelerators.xcu e script Python

Messaggio da giuserpe »

Buonasera,
tempo fa abbiamo discusso di come richiamare gli script di Python, da toolbars o menù in genere, editando il file Addons.xcu: viewtopic.php?f=26&t=6599
Adesso ho necessità di sfruttare le scorciatoie da tastiera allo stesso fine.

Con Basic tutto a posto. Il file Accelerators.xcu risulta essere questo:

Codice: Seleziona tutto

<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:install="http://openoffice.org/2004/installation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" oor:name="Accelerators" oor:package="org.openoffice.Office">
  <node oor:name="PrimaryKeys">
    <node oor:name="Modules">
      <node oor:name="com.sun.star.sheet.SpreadsheetDocument">
        <!--CTRL-0-->
        <node oor:name="0_MOD1" oor:op="replace">
          <prop oor:name="Command">
            <value xml:lang="en-US">vnd.sun.star.script:UltimusFree2.Focus.Sel_Altre_Opz?language=Basic&location=application</value>
          </prop>
        </node>
      </node>
    </node>
  </node>
</oor:component-data>
in cui avvio la macro Sel_Altre_Opz che si trova nel modulo Focus della libreria UltimusFree2

per avviare l'equivalente script Python dovrei sostituire

Codice: Seleziona tutto

<value xml:lang="en-US">vnd.sun.star.script:UltimusFree2.Focus.Sel_Altre_Opz?language=Basic&location=application</value>
con

Codice: Seleziona tutto

<value xml:lang="en-US">vnd.sun.star.script:LeenO.oxt|pyLeenO|pyleeno.py$Sel_Altre_Opz?language=Python&location=share:uno_packages</value>
in cui Sel_Altre_Opz è la funzione che si trova nella libreria pyleeno.py

Il condizionale è d'obbligo, e infatti non va...

Suggerimenti?
Ultima modifica di giuserpe il sabato 24 settembre 2016, 16:34, modificato 2 volte in totale.
LibreOffice fresh su Windows e Linux
Avatar utente
giuserpe
Messaggi: 127
Iscritto il: mercoledì 23 aprile 2014, 12:53

Re: Shortcuts, Accelerators.xcu e script Python

Messaggio da giuserpe »

Ciao,
è da un po' che ho la soluzione... si trova in giro nel web, ma ci ho messo un po' a capire.

In coda al file pyleeno.py ci ho messo

Codice: Seleziona tutto

g_ImplementationHelper = unohelper.ImplementationHelper()
g_ImplementationHelper.addImplementation(None, "org.giuseppe-vizziello.leeno", ("org.giuseppe-vizziello.leeno",),)
le stringhe "org.giuseppe-vizziello.leeno" le ho prese dal file description.xml nella mia estensione.
LibreOffice fresh su Windows e Linux
Rispondi