163 lines
3.5 KiB
Markdown
163 lines
3.5 KiB
Markdown
---
|
|
title: Aplicación
|
|
---
|
|
|
|
### **fonts**
|
|
|
|
Devolver todas las fuentes visibles en LibreOffice. Mire [FontDescriptor][1]
|
|
|
|
```py
|
|
fuentes = app.fonts()
|
|
for f in fuentes:
|
|
app.debug(f'Nombre: {f.Name} - Estilo: {f.StyleName}')
|
|
```
|
|
|
|
<br>
|
|
|
|
### **filters**
|
|
|
|
Devolver todos los filtros soportados en LibreOffice. Mire la [ayuda][2] y en [API FilterFactory][3] para más detalles.
|
|
|
|
```py
|
|
filtros = app.filters()
|
|
for f in filtros:
|
|
info = f"Nombre UI: {f['UIName']} - Nombre: {f['Name']} - Tipo: {f['Type']}"
|
|
app.debug(info)
|
|
```
|
|
|
|
<br>
|
|
|
|
### **dispatch**
|
|
|
|
Ejecutar cualquier comando `UNO` de LibreOffice, mire la [lista de comandos][4] y [API dispatch][5].
|
|
|
|
Este método automáticamente agrega el prefijo necesario: `.uno:`
|
|
|
|
```py
|
|
doc = app.active
|
|
comando = 'Gallery'
|
|
app.dispatch(doc, comando)
|
|
```
|
|
|
|
!!! tip "Recomendación"
|
|
|
|
Use este método solamente si no hay un método equivalente en `easymacro` o directamente en el API de LibreOffice.
|
|
|
|
<br>
|
|
|
|
### **clipboard**
|
|
|
|
#### **set**
|
|
|
|
Envíar contenido (solo texto) al portapapeles.
|
|
|
|
```py
|
|
app.clipboard.set('Los 7 samuráis')
|
|
```
|
|
|
|
#### **get**
|
|
|
|
Recuperar contenido del portapapeles.
|
|
|
|
```py
|
|
content = app.clipboard.get()
|
|
app.debug(content)
|
|
```
|
|
|
|
<br>
|
|
|
|
### **comandos**
|
|
|
|
!!! warning "Cuidado"
|
|
|
|
En este momento, en LibreOffice 7.4, este comando provoca el cierre de la aplicación.
|
|
|
|
#### **disable**
|
|
|
|
Deshabilitar un comando. Para una lista de comandos mire [DispatchCommands][4].
|
|
|
|
```py
|
|
comando = 'OpenFromCalc'
|
|
resultado = app.cmd.disable(comando)
|
|
app.debug(resultado)
|
|
```
|
|
|
|
`OpenFromCalc` es la opción para abrir documentos en Calc, deshabilita o habilita la entrada del menú y el icono en la barra de herramientas.
|
|
|
|
<br>
|
|
|
|
#### **enabled**
|
|
|
|
Habilitar un comando.
|
|
|
|
```py
|
|
comando = 'OpenFromCalc'
|
|
resultado = app.cmd.enabled(comando)
|
|
app.debug(resultado)
|
|
```
|
|
|
|
<br>
|
|
|
|
### **Configuración**
|
|
|
|
#### **get_config**
|
|
|
|
Obtener valores de la configuración de LibreOffice.
|
|
|
|
```py
|
|
nombre_node = '/org.openoffice.Office.Common/Help'
|
|
clave = 'System'
|
|
valor = app.get_config(nombre_node, clave)
|
|
app.debug(valor)
|
|
|
|
nombre_node = '/org.openoffice.Office.Common/Misc/'
|
|
clave = 'FirstRun'
|
|
valor = app.get_config(nombre_node, clave)
|
|
app.debug(valor)
|
|
|
|
clave = 'UseSystemFileDialog'
|
|
valor = app.get_config(nombre_node, clave)
|
|
app.debug(valor)
|
|
```
|
|
|
|
```
|
|
17/08/2022 14:14:12 - DEBUG - UNIX
|
|
17/08/2022 14:14:12 - DEBUG - False
|
|
17/08/2022 14:14:12 - DEBUG - True
|
|
```
|
|
|
|
<br>
|
|
|
|
#### **set_config**
|
|
|
|
Establece un nuevo valor en la configuración de LibreOffice.
|
|
|
|
```py
|
|
nombre_nodo = '/org.openoffice.Office.UI/ColorScheme'
|
|
clave = 'CurrentColorScheme'
|
|
nuevo_valor = 'LibreOffice Dark'
|
|
resultado = app.set_config(nombre_nodo, clave, nuevo_valor)
|
|
app.debug(resultado)
|
|
```
|
|
|
|
<br>
|
|
|
|
Algunos nodos y claves interesantes:
|
|
|
|
* `/org.openoffice.Office.Common/Save/Document`
|
|
* AutoSave
|
|
* AutoSaveTimeIntervall
|
|
|
|
|
|
!!! warning "Atención"
|
|
|
|
No todos los valores de los nodos se pueden cambiar, algunos valores son de solo lectura.
|
|
|
|
<br>
|
|
|
|
[1]: https://api.libreoffice.org/docs/idl/ref/structcom_1_1sun_1_1star_1_1awt_1_1FontDescriptor.html
|
|
[2]: https://help.libreoffice.org/latest/en-US/text/shared/guide/convertfilters.html
|
|
[3]: https://api.libreoffice.org/docs/idl/ref/servicecom_1_1sun_1_1star_1_1document_1_1FilterFactory.html
|
|
[4]: https://wiki.documentfoundation.org/Development/DispatchCommands
|
|
[5]: https://api.libreoffice.org/docs/idl/ref/interfacecom_1_1sun_1_1star_1_1frame_1_1XDispatch.html#a42beb1ea2ddae35c076b6e65867025ea
|