easymacro/doc/docs/docs/properties.md

221 lines
3.2 KiB
Markdown
Raw Normal View History

2023-04-23 11:31:58 -06:00
## Propiedades comúnes a todos los documentos.
<br>
Recordemos, el documento activo lo referenciamos con:
```py
doc = app.active
```
<br>
### **dir**
**Solo lectura**. Devolver solo el directorio de la ruta en disco del documento.
```py
doc = app.active
app.debug(doc.dir)
```
<br>
### **file_name**
**Solo lectura**. Devolver el nombre con extensión de la ruta del documento.
```py
doc = app.active
app.debug(doc.file_name)
```
<br>
### **is_modified**
**Solo lectura**. Si el documento ha sido modificado.
```py
doc = app.active
app.debug(doc.is_modified)
```
<br>
### **is_read_only**
**Solo lectura**. Si el documento es de solo lectura.
```py
doc = app.active
app.debug(doc.is_read_only)
```
<br>
### **is_saved**
**Solo lectura**. Si el documento ya ha sido guardado en disco.
```py
doc = app.active
app.debug(doc.is_saved)
```
<br>
### **name**
**Solo lectura**. Devolver el nombre sin extensión de la ruta del documento.
```py
doc = app.active
app.debug(doc.name)
```
<br>
### **obj**
**Solo lectura**. Devolver el objeto original pyUNO.
```py
doc = app.active
app.debug(type(doc))
app.debug(type(doc.obj))
```
```sh
18/08/2022 21:59:05 - DEBUG - <class 'easymacro.easycalc.LOCalc'>
18/08/2022 21:59:05 - DEBUG - <class 'pyuno'>
```
<br>
### **path**
**Solo lectura**. Devolver la ruta en disco del documento.
```py
doc = app.active
app.debug(doc.path)
```
<br>
### **selection**
Devolver la selección actual.
```py
doc = app.active
selection = doc.selection
app.debug(selection)
```
<br>
!!! warning "Cuidado"
La selección actual pueden ser muchas cosas diferentes.
<br>
### **status_bar**
Controlar la barra de estado, es importante siempre actualizar en otro hilo.
```py
@app.run_in_thread
def controlar_barra_estado(sb, texto, limite):
sb.start(texto, limite)
for i in range(limite):
sb.setValue(i)
app.sleep(1)
sb.end()
return
def main():
doc = app.active
controlar_barra_estado(doc.status_bar, 'Línea: ', 10)
return
```
Es importante siempre devolver el control de la barra de estado a la aplicación con el método `end`.
<br>
### **title**
Título del documento.
```py
doc = app.active
app.debug(doc.title)
doc.title = 'Nuevo Titulo'
app.debug(doc.title)
```
!!! tip "Consejo"
El cambio no es permanente, solo mientras el documento esta abierto.
<br>
### **type**
**Solo lectura**. Devolver el tipo de documento: calc, writer, etc.
```py
doc = app.active
app.debug(doc.type)
```
<br>
### **uid**
**Solo lectura**. Devolver el valor interno RuntimeUID del documento.
```py
doc = app.active
app.debug(doc.uid)
```
<br>
### **visible**
Ocultar o mostrar un documento.
```py
doc = app.active
doc.visible = False
app.msgbox(doc.visible)
doc.visible = True
```
!!! tip "Consejo"
No es necesario que el documento este visible para manipularse.
<br>
### **zoom**
Devolver o establecer el porcentaje de zoom del documento.
```py
doc = app.active
zoom = doc.zoom
app.msgbox(zoom)
doc.zoom = zoom * 2
app.msgbox(doc.zoom)
doc.zoom = zoom
```
<br>