OpenOffice.org UNO Magic

  • Upload
    imacat-

  • View
    1.458

  • Download
    2

Embed Size (px)

Citation preview

1

OpenOffice.orgUNO
MS Office

2010-09-15

OpenOffice.orgUNOCC Attribution-ShareAlike 3.0 Unported

OpenOffice.org

Debian OpenOffice.org

OpenOffice.org

OpenOffice.org

OpenOffice.org Basic

OpenOffice.org

OpenOffice.org Basic

MS VBAMS Office

OpenOffice.org Basic

Dim I As Integer, Sum As Integer

Sum = 0

For I = 1 To 5

Sum = Sum + I

Next

MsgBox Sum

OpenOffice.org Basic
IDE

OpenOffice.org

Office Application

PowerPoint

MS Office

Excel

Word

Office Application

MS Office

Excel

ActiveSheet

ActiveWorkbook

Sheets

ActiveWindow

Range

Rows

Columns

Cells

Workbooks

Windows

OpenOffice.org

OpenOffice.org

Writer

Calc

Impress

Application

OpenOffice.org

OpenOffice.org

Writer

Calc

Impress

Components

OpenOffice.org

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Components

OpenOffice.org

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Paragraphs

Text Ranges

Tables

Shapes

Text Cursors

Components

OpenOffice.org

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Spreadsheets

Sheet Cells

Data Pilots

Database Ranges

Charts

Components

OpenOffice.org

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Draw Pages

Shapes

Charts

Presentation

Slide Show Controller

OpenOffice.org
MS Office

OpenOffice.orgMS Office

^_^

^^;

MS Office

OpenOffice.orgUNOUniversal: Network: Object:

OpenOffice.org UNO

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Perl

Python

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Perl

Python

OLE

CLI

COM

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Perl

Python

C#

VB.NET

OLE

CLI

COM

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Perl

Python

AlmostAnything!

C#

VB.NET

OLE

CLI

COM

Language Binding

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Java

Perl

Python

AlmostAnything!

C#

VB.NET

OLE

CLI

COM

NetworkSocket

OpenOffice.org UNO

Almost, 1. Binding2. CLI/COM

Client Application A

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Client Application A

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Client Application B

Java

Client Application A

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Client Application B

Java

Client Application C

VB.NET

Client A

Server

Client Application A

OpenOffice.org UNO

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Client B

Client Application B

Java

Client C

Client Application C

VB.NET

TCP/IPNetwork

OpenOffice.org UNO

OpenOffice.org

OpenOffice.org UNO

OpenOffice.org

OpenOffice.org

OpenOffice.org UNO

OpenOffice.org UNO

Mobile Web Office Application

Client A

Server

Client Application A

Office Application

OpenOffice.org

Writer

Calc

Impress

UNOAPI

C++

Client B

Client Application B

Java

Client C

Client Application C

VB.NET

TCP/IPNetwork

Mobile Device

Server

Browser

Mobile Web Office Application

OpenOffice.org

Writer

Calc

Impress

UNOAPI

Mobile Device

Mobile Device

Mobile Web Application

Browser

Browser

TCP/IPNetwork

Mobile Device

Server

Browser

Mobile Web Office Application

OpenOffice.org

Writer

Calc

Impress

UNOAPI

Mobile Device

Mobile Device

Mobile Web Application

Browser

Browser

TCP/IPNetworkJSP

Mobile Web Office Application

JSP

Components

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Draw Pages

Shapes

Charts

Presentation

Slide Show Controller


Psuedo Code

oPresentation = oPresentationDocument.getPresentation();

oSlideShowController = oPresentation.getController();

oPresentation.start();

oPresentation.end();

oSlideShowController.gotoNextSlide();

oSlideShowController.gotoPreviousSlide();

oSlideShowController.gotoSlideIndex(n);

Impress

SourceForgempresenthttp://sf.net/projects/mpresent/

Components

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Paragraphs

Text Ranges

Tables

Shapes

Text Cursors


Psuedo Code

oText = oTextDocument.getText();

oTextCursor = oText.createTextCursor();

oBitmapTable = oTextDocument.createInstance("com.sun.star.drawing.BitmapTable");

oBitmapTable.insertByName ("logo",sLogo);

sInternalURL = oBitmapTable.getByname("logo");

oTextGraphicObject = oTextDocument.createInstance("com.sun.star.text.TextGraphicObject");

oTextGraphicObject.setPropertyValue("GraphicURL", sInternalURL)

oText.insertTextContent(oTextCursor, oTextGraphicObject, false);

oTextCursor.setString("Quotation");

oTextTable = oTextDocument.createInstance("com.sun.star.text.TextTable");

oTextTable.initialize(5, 4);

oText.insertTextContent(oTextCursor, oTextTable, false);

oCell = oTextTable.getCellByName("A5");

oCell.setString("Total");

JavaMailOpenOffice.orgOpenOffice.org

Components

OpenOffice.org Desktop

Text Document

Spreadsheet Document

Presentation Document

Spreadsheets

Sheet Cells

Data Pilots

Database Ranges

Charts


Psuedo Code

oCharts = oSpreadsheet.getCharts();

aChartPos = new com.sun.star.awt.Rectangle();

aChartPos.X = 0; aChartPos.Y = 0;

aChartPos.Width = 12000; aChartPos.Height = 10000;

aDataAddress = new com.sun.star.table.CellRangeAddress();

aDataAddress.Sheet = 0;

aDataAddress.StartColumn = 0; aDataAddress.StartRow = 1;

aDataAddress.EndColumn = 7; aDataAddress.EndRow = 26;

oCharts.addNewByName("chart", aChartPos, aDataAddress, true, true);

Calc

SourceForgempresenthttp://sf.net/projects/mpresent/

FTPftp://ftp.imacat.idv.tw/pub/ooomagic/

Oracle/Sun

95OpenOffice.org Basic

Oracle/Sun