## Propiedades comúnes a todos los documentos.
Recordemos, el documento activo lo referenciamos con: ```py doc = app.active ```
### **dir** **Solo lectura**. Devolver solo el directorio de la ruta en disco del documento. ```py doc = app.active app.debug(doc.dir) ```
### **file_name** **Solo lectura**. Devolver el nombre con extensión de la ruta del documento. ```py doc = app.active app.debug(doc.file_name) ```
### **is_modified** **Solo lectura**. Si el documento ha sido modificado. ```py doc = app.active app.debug(doc.is_modified) ```
### **is_read_only** **Solo lectura**. Si el documento es de solo lectura. ```py doc = app.active app.debug(doc.is_read_only) ```
### **is_saved** **Solo lectura**. Si el documento ya ha sido guardado en disco. ```py doc = app.active app.debug(doc.is_saved) ```
### **name** **Solo lectura**. Devolver el nombre sin extensión de la ruta del documento. ```py doc = app.active app.debug(doc.name) ```
### **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 - 18/08/2022 21:59:05 - DEBUG - ```
### **path** **Solo lectura**. Devolver la ruta en disco del documento. ```py doc = app.active app.debug(doc.path) ```
### **selection** Devolver la selección actual. ```py doc = app.active selection = doc.selection app.debug(selection) ```
!!! warning "Cuidado" La selección actual pueden ser muchas cosas diferentes.
### **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`.
### **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.
### **type** **Solo lectura**. Devolver el tipo de documento: calc, writer, etc. ```py doc = app.active app.debug(doc.type) ```
### **uid** **Solo lectura**. Devolver el valor interno RuntimeUID del documento. ```py doc = app.active app.debug(doc.uid) ```
### **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.
### **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 ```