easymacro/docs/es/docs/app/index.md

163 lines
3.5 KiB
Markdown
Raw Normal View History

2023-04-23 11:31:58 -06:00
---
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