Desarrollando Extensiones en OpenOffice.org

Embed Size (px)

DESCRIPTION

Tour del sistema de Macros y Extensiones en OpenOffice.org. Esta presentacion fue dada en el FLISOL 2007 en Linux Cabal Guadalajara.

Citation preview

  • 1. OpenOffice.org macros Desarrollando en OOo

2. Que viene ahora?

  • Explicando la Macros y extensiones
  • Usando OOoBasic y su interfaz de desarrollo
  • Mas aya de Basic, usando Python
  • Diferentes interfaz para diferentes modelos
  • Desarrollo alrededor de OpenOffice.org

3. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

4. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

ODT 5. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

6. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

7. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

Ver los valores de las variables Abre un dilogo para administrar los puntos de interrupcin. Mostrar y ocultar puntos de rupturas Administra el proceso de ejecucion en pasos Ejecuta el modulo actual de la macro 8. OOoBasic en OOo

  • OooBasic:
  • Como encontrar una macro
  • Ejecutando una macro
  • Editando una macro en el IDE
  • Mas sobre el IDE
  • Diseando una interfaz

9. Python

  • Cargar mdulos de manera grfica
  • Cargar mdulos en linea de comando
  • Organizacin de las macros en OOo
  • Empaquetar Python en componentes
  • Desarrollo desde python de sistema y python de UNO
  • Programacin de python en OpenOffice.org
  • Programacin de python en OpenDocument (XML)

10. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument

11. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument

> > /opt/openoffice.org2.2/program/unopkgaddWavelet.uno.zip >> /opt/openoffice.org2.2/program/unopkgremoveWavelet.uno.zip > 12. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument

13. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument

xml Python 14. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument
  • PyUNO tiene un modulo que lo conecta con UNO
  • PyUNO esta dentro de OpenOffice.org
  • Python de OpenOffice.org es version 2.3.4
  • PyUNO funciona dentro de OpenOffice.org
  • Python del sistema es diferente e incompatible

15. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument
  • Python del sistema puede interactuar con OpenOffice.org como servicio.

>soffice "-accept=socket,host=localhost,port=2002;urp;" >python myprogram.py import uno localContext = uno.getComponentContext() resolver = localContext.ServiceManager.createInstanceWithContext( "com.sun.star.bridge.UnoUrlResolver", localContext ) ctx = resolver.resolve( "uno:socket, host=localhost,port=2002;urp;StarOffice.ComponentContext" )

  • Desde un archivo de python abrimos el servicio

16. PyUNO en OOo

  • Diferentes formas:
    • Grafico
    • Comando
  • Manejador de scripts
  • Desarrollo de componentes
  • Python vs. PyUNO
  • Python sobre:
    • OpenOffice.org
    • OpenDocument

xml ODF HTML SQL 17. Arquitectura UNO 18. Arquitectura UNO

  • UNO es el modelo de componente de OpenOffice.org
  • UNO se divide en:
    • Interfaces
    • Servicios
    • Mtodos
  • Puntos de conocimiento:
    • API Conjuntos de mtodos y atributos disponibles
    • Binding traduccinde la especificacin IDL a un lenguaje
    • Components un paquete que provee herramientas adicionales
    • IDL Especificacin base del lenguaje (es un archivo)

19. Arquitectura UNO

  • Ejemplo del uso de una Interfaz:

20. Arquitectura UNO

  • interfaces:

21. Fuentes Bibliogrficas

  • Andrew Pitonyak Macro Book
  • UNO IDL Reference
  • PyUNO Wiki Page
  • Creating Extensions
  • Understanding UNO