610 lines
No EOL
38 KiB
HTML
610 lines
No EOL
38 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1">
|
|
<TITLE>OpenOffice.org examples</TITLE>
|
|
<META NAME="GENERATOR" CONTENT="StarOffice/5.2 (Win32)">
|
|
<META NAME="CLASSIFICATION" CONTENT="Acceptor / Connector services">
|
|
<META NAME="KEYWORDS" CONTENT="UNO,Acceptor,Connector services">
|
|
</HEAD>
|
|
<BODY LINK="#444488" VLINK="#444488" BGCOLOR="#eeeeff"><A NAME="__Top__"></A>
|
|
<TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>
|
|
<COL WIDTH=75>
|
|
<TR>
|
|
<TD BGCOLOR="#666699">
|
|
<H1 ALIGN=CENTER STYLE="margin-top: 0cm; text-decoration: none"><A HREF="http://www.openoffice.org/"><IMG SRC="http://udk.openoffice.org/images/open_office_org_logo.gif" NAME="Grafik1" ALT="OpenOffice" ALIGN=RIGHT WIDTH=109 HEIGHT=54 BORDER=0></A><FONT COLOR="#ffffff"><FONT SIZE=6>OpenOffice.org
|
|
examples</FONT></FONT></H1>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
<HR SIZE=3 NOSHADE>
|
|
<TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>
|
|
<COL WIDTH=85*> <COL WIDTH=85*> <COL WIDTH=85*>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100% BGCOLOR="#666699">
|
|
<H3 ALIGN=LEFT STYLE="margin-top: 0cm; text-decoration: none"><FONT COLOR="#ffffff"><FONT SIZE=4>Contents</FONT></FONT></H3>
|
|
</TD>
|
|
</TR>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100%> <A HREF="#Overview">Overview </A><br>
|
|
<a href="#AdditionalResources">Additional Resources</a><BR>
|
|
<A HREF="#Java">Java examples</A><br>
|
|
<A HREF="#CPlusPlus">C++ examples</A><br>
|
|
<a href="#Description"></a><A HREF="#Basic">OpenOffice.org Basic examples</A><br>
|
|
<a href="#Description"></a><a href="#OLE">Object Linking and Embedding (OLE)
|
|
examples</a></TD>
|
|
</TR>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100% BGCOLOR="#666699">
|
|
<H3 ALIGN=LEFT STYLE="margin-top: 0cm; text-decoration: none"><A NAME="Overview"></A>
|
|
<FONT COLOR="#ffffff"><FONT SIZE=4>Overview</FONT></FONT></H3>
|
|
</TD>
|
|
</TR>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100%>
|
|
<p style="margin-bottom: 0.2cm"><font face="Times New Roman, serif">The
|
|
OpenOffice.org software is a complete, feature-rich office productivity
|
|
product, that provides in combination with the <a href="http://www.openoffice.org/dev_docs/source/download.html">OpenOffice.org
|
|
Developer Kit (ODK)</a> all the essential tools for building and deploying
|
|
custom solutions to build on, or integrate with, the OpenOffice.org suite
|
|
of products.</font></p>
|
|
<p style="margin-bottom: 0.2cm">The ODK is a set of tools, libraries, jar
|
|
files, header files and idl files which are necessary to develop components
|
|
for the OpenOffice.org using the <a href="http://api.openoffice.org/index.html">OpenOffice
|
|
API</a> and the OpenOffice.org component technology <a href="http://udk.openoffice.org/index.html">UNO
|
|
(Universal Network Objects)</a>. Furthermore, the tarballs contain all
|
|
below mentioned examples (C++, Java, and Basic), which demonstrate the
|
|
UNO technology and the use of the OpenOffice.org API.</p>
|
|
<p>Further on, the ODK is the basic stuff for external developers to develop
|
|
components <font face="Times New Roman, Times, serif">in any language
|
|
for which a binding exists</font>. <font face="Times New Roman, Times, serif">Currently
|
|
there are language bindings for OpenOffice.org Basic, Java and different
|
|
C++ compilers on different platforms for OpenOffice.org without using
|
|
OpenOffice.org build environment, thus covering the two most commonly
|
|
used programming languages. There will be no limit for office automation
|
|
in heterogeneous environments. </font>Currently supported platforms of
|
|
the ODK are Linux, Solaris (sparc) and Windows.<br>
|
|
</p>
|
|
<p style="margin-bottom: 0.2cm"><font face="Times New Roman, Times, serif">The
|
|
OpenOffice.org API defines the interface for accessing office functionality
|
|
from different programming languages. The OpenOffice API reference manual
|
|
is available <a href="http://api.openoffice.org/common/ref/com/sun/star/index.html">here</a>.</font></p>
|
|
<p style="margin-bottom: 0.2cm"><font face="Times New Roman, serif">The
|
|
following examples demonstrate how to benefit from the included word processor,
|
|
spreadsheet, presentation software, graphics program, and database software.</font></p>
|
|
</TD>
|
|
</TR>
|
|
<tr>
|
|
<td colspan=3 width=100% bgcolor="#666699">
|
|
<h3 align=LEFT style="margin-top: 0cm; text-decoration: none"><a name="AdditionalResources"></a>
|
|
<font color="#ffffff"><font size="4">Additional Resources</font></font></h3>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100%>
|
|
<table width="100%" cellpadding="4" cellspacing="1" bgcolor="#ffffff">
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><b>Example</b></td>
|
|
<td width="76%" valign="top"><b>Description</b></td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/basic/man/tutorial/tutorial.pdf">Programmer's
|
|
Tutorial</a><a href="http://udk.openoffice.org/"></a></td>
|
|
<td width="76%" valign="top">This PDF document presents the basic concepts
|
|
of the OpenOffice API, the document models (including some UML diagrams)
|
|
and a bunch of examples in StarBASIC as well. (Version for StarOffice
|
|
5.2) </td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://udk.openoffice.org/index.html">UNO
|
|
Development Kit Homepage</a></td>
|
|
<td width="76%" valign="top">UNO (Universal Network Objects) is an interface
|
|
based object model. UNO is a specification for a communication model
|
|
among distributed objects. It allows these objects to be implemented
|
|
in any language for which a binding exists. Currently there are language
|
|
bindings for Java and different C++ compilers on different platforms.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/index.html">OpenOffice
|
|
API Homepage</a></td>
|
|
<td width="76%" valign="top">The OpenOffice.org API is based on the
|
|
OpenOffice.org component technology and consists of a wide range of
|
|
interfaces defined in a CORBA-like IDL. While the component technology
|
|
determines how the components or applications communicate with each
|
|
other, the OpenOffice.org API defines the interface for accessing
|
|
office functionality from different programming languages. The OpenOffice
|
|
API reference manual is available from the homepage.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://udk.openoffice.org/common/man/draft/Guide_Developing_components_with_UNO.sxw">Developing
|
|
components with UNO</a></td>
|
|
<td width="76%" valign="top">The tutorial "Developing components
|
|
with UNO" explains the fundamental concepts (ODK, UNO), shows
|
|
how to access existing services in UNO, and how to write simple UNO
|
|
components. The text is enhanced with Java and C++ code.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/common/man/IDEintegration/OfficeNetBeansIntegration.html">NetBeans</a></td>
|
|
<td width="76%" valign="top">If you need an integrated development environment
|
|
(IDE) you should take NetBeans into account. NetBeans is an open source,
|
|
modular IDE, written in the Java programming language.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/design_guide.html">Guideline
|
|
for designing OpenOffice APIs</a></td>
|
|
<td width="76%" valign="top">The guideline for designing OpenOffice
|
|
APIs describes general design rules and the definition of API elements.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top" bgcolor="#f0f0f0"><a href="http://www.openoffice.org/dev_docs/source/download.html">Office
|
|
Development Kit </a>(ODK)</td>
|
|
<td width="76%" valign="top">The ODK is a set of tools, libraries, jar
|
|
files, header files and idl files which are necessary to develop components
|
|
for the OpenOffice.org using the OpenOffice API and the OpenOffice.org
|
|
component technology UNO (Universal Network Objects).</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
</tr>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100% BGCOLOR="#666699">
|
|
<H3><A NAME="Java"></A><FONT COLOR="#ffffff">Java examples</FONT></H3>
|
|
</TD>
|
|
</TR>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100%>
|
|
<p>In order to connect the following client programs to the running office
|
|
server, before running those programs, you should invoke the office with
|
|
the following command:</p>
|
|
<p>soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager"</p>
|
|
<p>You could also customize the mentioned host and port to your needs.</p>
|
|
<table width="100%" bgcolor="#ffffff" cellpadding="4" cellspacing="1">
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><b>Example</b></td>
|
|
<td width="76%" valign="top"><b>Description</b></td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/CalcAddins/">CalcAddins</a></td>
|
|
<td width="76%" valign="top">This component adds new functions to the
|
|
spreadsheet application. After registering the component, the inserted
|
|
functions can be found with help of the functions autopilot. The new
|
|
functions are assigned to the category <i>Add-in</i>.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/Car/">Car</a></td>
|
|
<td width="76%" valign="top">The component <i>Car</i> is a very simple,
|
|
but complete component, which simulates the driving, acceleration,
|
|
and braking of a car. Moreover, the component demonstrates the use
|
|
of properties and their listeners.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/ConverterServlet/">ConverterServlet</a></td>
|
|
<td width="76%" valign="top">This servlet shows you, how to convert
|
|
arbitrary documents on a remote running office server. The converted
|
|
document will be pushed from the web server to the client browser.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"> <a href="http://api.openoffice.org/source/browse/api/odk/examples/java/DocumentConverter/">DocumentConverter</a></td>
|
|
<td width="76%" valign="top">Here, the program offers a service, which
|
|
converts arbitrary documents to a favored document type.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/DocumentLoader/">DocumentLoader</a></td>
|
|
<td width="76%" valign="top">The <i>DocumentLoader</i> can open a new
|
|
or an existing document.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/DocumentPrinter/">DocumentPrinter</a></td>
|
|
<td width="76%" valign="top">The <i>DocumentPrinter</i> allows you to
|
|
print your favored pages of a specified document on your favored printer.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/DocumentSaver/">DocumentSaver</a></td>
|
|
<td width="76%" valign="top">The DocumentSaver shows you, how to save
|
|
a document. Furthermore, you can change the type of your document.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/GraphicsInserter/">GraphicsInserter</a></td>
|
|
<td width="76%" valign="top">The GraphicsInserter creates a graphics
|
|
object on an empty text document by setting its position, width, height,
|
|
and URL.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"> <a href="http://api.openoffice.org/source/browse/api/odk/examples/java/Inspector/">Inspector</a></td>
|
|
<td width="76%" valign="top">The Instance Inspector is primarily an
|
|
auxiliary tool for developer, which can present information about
|
|
an object of the Star Office API at run-time. Dependent on the object
|
|
to be inspected appropriate methods, interfaces, services, and attributes
|
|
can be displayed to the developer. The methods, interfaces, services
|
|
and attributes are represented in a predictable tree. If the attributes
|
|
contained in an object are to be examined, the appropriate nodes in
|
|
the tree can be expanded with the help of the mouse. For each non
|
|
primitive object five categories are offered to the user, as far as
|
|
those are available with the object concerned.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"> <a href="http://api.openoffice.org/source/browse/api/odk/examples/java/MinimalComponent/">MinimalComponent</a></td>
|
|
<td width="76%" valign="top">This class provides a minimal UNO component.
|
|
You can take this class as base for your own components. By extensions
|
|
of this class it is possible to extend also the function range of
|
|
the Office.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/NotesAccess/">NotesAccess</a></td>
|
|
<td width="76%" valign="top">This class creates a spreadsheet document
|
|
and fills it with existing values of documents from a Lotus Notes
|
|
database.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/ToDo/">ToDo</a></td>
|
|
<td width="76%" valign="top"> For every to-do listed in a spreadsheet
|
|
document this component calculates the start date, day of week of
|
|
the start date, the end date and the day of week of the end date.
|
|
All calculations are dependent on the values of "Needed Days",
|
|
"Due Date" and "Status". The columns "Needed
|
|
Days" and "Status" are mandatory. The first to-do should
|
|
be placed in row nine. The date to start the calculation should be
|
|
placed in cell C6. The private holidays should be placed in cell K4/K5
|
|
and below.<br>
|
|
All rows will be calculated up to the first empty cell in the first
|
|
column. If a cell in the column "Due Date" will be colored
|
|
red, you should take a look at your entries.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/WriterSelector/">WriterSelector</a></td>
|
|
<td width="76%" valign="top">This class gives you information on the
|
|
selected objects (text range, text frame, or graphics) at an OpenOffice.org
|
|
Server.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/calc/ChartTypeChange/">ChartTypeChange</a></td>
|
|
<td width="76%" valign="top">This class loads an OpenOffice.org Calc
|
|
document and changes the type of the embedded chart.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/calc/">EuroAdaption</a></td>
|
|
<td width="76%" valign="top">The application connects to the office
|
|
server and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>, opens an empty Calc document, enters an example
|
|
text, sets the number format to DM, changes the number format to EUR
|
|
(Euro), and uses the DM/EUR factor on each cell with a content.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/calc/">SCalc</a></td>
|
|
<td width="76%" valign="top">The program connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. Then an empty calc document will be opened, cell
|
|
styles will be created, some data will be inserted into the sheets,
|
|
and the created cell styles will be applied. Finally, a 3D chart will
|
|
be inserted.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/draw/">SDraw</a></td>
|
|
<td width="76%" valign="top">This program connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. Afterwards, an empty text document will be created
|
|
and some shapes will be inserted on the draw page</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">BookmarkInsertion</a></td>
|
|
<td width="76%" valign="top">This application connects to the office
|
|
server and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. An empty text document will be opened and an
|
|
example text will be entered. After all some bookmarks will be inserted.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">HardFormatting</a></td>
|
|
<td width="76%" valign="top">This program connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. Furthermore, an empty text document will be opened,
|
|
an example text will be entered, some text attributes will be inspected,
|
|
and the <a href="http://api.openoffice.org/common/ref/com/sun/star/beans/PropertyState.html">PropertyState</a>
|
|
will be checked from the selection.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">SWriter</a></td>
|
|
<td width="76%" valign="top">The program connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. An empty text document will be created, some
|
|
text will be entered, and a text table, a colored text, and text frame
|
|
will be inserted.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">StyleCreation</a></td>
|
|
<td width="76%" valign="top">The example connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. An empty text document will be opened, a new
|
|
paragraph style will be created, and applied.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">StyleInitialization</a></td>
|
|
<td width="76%" valign="top">The program connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. Thereafter, an empty text document will be opened
|
|
and an example text will be entered. The paragraph collection will
|
|
be used, in order to apply a different paragraph style on the paragraphs.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">TextDocumentStructure</a></td>
|
|
<td width="76%" bgcolor="#f0f0f0" valign="top">The application connects
|
|
to the office server and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. An empty text document will be opened, an enumeration
|
|
of all paragraphs and an enumeration of all text portions will be
|
|
created. </td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/writer/">TextReplace</a></td>
|
|
<td width="76%" valign="top">The example connects to the office server
|
|
and gets the <a href="http://api.openoffice.org/common/ref/com/sun/star/lang/XMultiServiceFactory.html">multi
|
|
service factory</a>. An empty text document will be created, an example
|
|
text will be inserted, and some English spelled words will be replaced
|
|
with US spelled words.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/java/com/sun/star/comp/demo/">DemoComponent</a></td>
|
|
<td width="76%" valign="top">This Java program is a demo component,
|
|
which exports two services.</td>
|
|
</tr>
|
|
</table>
|
|
<p>Additional informations:</p>
|
|
<p><a href="http://udk.openoffice.org/java/man/java_component_howto.html">How
|
|
to write a UNO component in Java</a><br>
|
|
<a href="http://udk.openoffice.org/java/man/index.html">Java in UNO and
|
|
OpenOffice.org</a><br>
|
|
<a href="java/debugging_java.html">Debugging Java components<br>
|
|
</a><a href="http://api.openoffice.org/common/man/IDEintegration/OfficeNetBeansIntegration.html">Office
|
|
and NetBeans</a><a href="java/debugging_java.html"> </a></p>
|
|
</TD>
|
|
</TR>
|
|
<tr>
|
|
<td colspan=3 width=100% bgcolor="#666699">
|
|
<h3><a name="CPlusPlus"></a><font color="#ffffff">C++ examples</font></h3>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100%>
|
|
<table width="100%" cellpadding="4" cellspacing="1" bgcolor="#ffffff">
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" bgcolor="#f0f0f0" valign="top"><b>Example</b></td>
|
|
<td width="76%" valign="top"><b>Description</b></td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" bgcolor="#f0f0f0" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/cpp/officeclient/">Office
|
|
client</a></td>
|
|
<td width="76%" valign="top"> This component provides a UNO demo component
|
|
which demonstrates the communication with a local office. The component
|
|
will create different document types and close them. </td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" bgcolor="#f0f0f0" valign="top"><a href="http://udk.openoffice.org/source/browse/udk/product/examples/cpp/counter/">Counter</a></td>
|
|
<td width="76%" valign="top">This demo shows how to implement a very
|
|
simple UNO component and how to access the UNO component from an executable.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" bgcolor="#f0f0f0" valign="top"><a href="http://udk.openoffice.org/source/browse/udk/product/examples/cpp/remoteclient/">Remote
|
|
client</a></td>
|
|
<td width="76%" valign="top">The uno.exe program is used to export an
|
|
arbitrary service to other processes. In this<br>
|
|
example the com.sun.star.uno.Pipe service (which is built in io-module)
|
|
is exported. The client component implements the com.sun.star.lang.XMain
|
|
interface. In the run method, it connects to the servers process and
|
|
retrieves an instance and does some calls on the instance.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" bgcolor="#f0f0f0" valign="top">Car</td>
|
|
<td width="76%" valign="top">The component <i>Car</i> is a very simple,
|
|
but complete component, which simulates the driving, acceleration,
|
|
and braking of a car. Moreover, the component demonstrates the use
|
|
of properties and their listeners.</td>
|
|
</tr>
|
|
</table>
|
|
<p>Additional informations:</p>
|
|
<p><a href="http://udk.openoffice.org/cpp/man/component_tutorial.html">Writing
|
|
a simple UNO component in C++<br>
|
|
</a><a href="http://udk.openoffice.org/cpp/man/tutorial/unointro.html">A
|
|
guide to C++ UNO</a><br>
|
|
<a href="http://udk.openoffice.org/cpp/ref/cpp-reference-index.html">C++
|
|
UNO Reference</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100% bgcolor="#666699">
|
|
<h3><a name="Basic"></a><font color="#ffffff">OpenOffice.org Basic examples</font></h3>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100%>
|
|
<p>The example programs are embedded in StarOffice/OpenOffice.org documents
|
|
in the samples directory.<br>
|
|
To view or edit the StarOffice/OpenOffice.org Basic source, select the
|
|
appropriate document and then select Tools->Macro.</p>
|
|
<p> Most of the examples are stand-alone, but two of them (Creating an Index
|
|
and Import/Export of ASCII Files) have an associated data file identified
|
|
by a .txt file name suffix).</p>
|
|
<p>These examples are taken from the Programmer's Tutorial. Some of them
|
|
were ported to Java and you find them above.</p>
|
|
<p>These examples are presented in the order in which they appear in Chapter
|
|
5.</p>
|
|
<table width="100%" bgcolor="#ffffff" cellpadding="4" cellspacing="1">
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><b>Example</b></td>
|
|
<td width="76%" valign="top"><b>Description</b></td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/text/modifying_text_automatically/" target="_blank"><font face="Times New Roman, serif">Changing
|
|
Appearance</font></a></td>
|
|
<td width="76%" valign="top">To change the style used for certain words,
|
|
you can start with the following example. This code searches for the
|
|
regular expression <font face="Courier New, Courier, mono">the[a-z]</font>
|
|
which stands for the text portion the followed by exactly one lowercase
|
|
letter. All occurrences of these four letters are then changed to
|
|
be displayed in bold characters. The same happens in the next part
|
|
of the program, this time changing the appearance of <font face="Courier New, Courier, mono">all[a-z]</font>
|
|
to italic. In order for this example to work, you must execute it
|
|
from an open text document.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/text/modifying_text_automatically/" target="_blank"><font face="Times New Roman, serif">Replacing
|
|
Text</font></a></td>
|
|
<td width="76%" valign="top">
|
|
<p>If you regularly receive documents from other people for editing,
|
|
you might want to make sure that certain words are always written
|
|
the same. The next example<br>
|
|
illustrates this by forcing certain words to be spelled in American
|
|
English.<br>
|
|
In order for this example to work, you must execute it from an open
|
|
text document. For a real world application, you’d probably
|
|
want to read the words from an external file.</p>
|
|
</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/text/modifying_text_automatically/" target="_blank"><font face="Times New Roman, serif">Using
|
|
Regular Expressions</font></a></td>
|
|
<td width="76%" valign="top">
|
|
<p>Another application of automatic text modification is related to
|
|
stylistic questions. Suppose your company’s policy is to avoid
|
|
the use of certain words. You want to replace these words, but you
|
|
can’t do that automatically, because you have to find the appropriate
|
|
replacement which depends on the context. So instead of deleting
|
|
or replacing the offending words automatically, you change their
|
|
color to make them stand out during a subsequent manual review process.<br>
|
|
The following example handles two kinds of unwanted wordings: those
|
|
which are absolutely forbidden and must be replaced by something
|
|
else, and those which are considered bad style. A subroutine is
|
|
responsible for the changes. It can be used to make all words in
|
|
a list appear in a certain color in the text document. To keep the
|
|
lists short, we are using regular expressions here which provide
|
|
for the variants of the words (plural, adjective etc.).</p>
|
|
</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/text/modifying_text_automatically/" target="_blank"><font face="Times New Roman, serif">Inserting
|
|
Bookmarks</font></a></td>
|
|
<td width="76%" valign="top">
|
|
<p>The next example does something very similar. This time, however,
|
|
we do not<br>
|
|
change the color of the words but insert a bookmark at each of them.
|
|
You can thus use the StarOffice navigator to jump directly from
|
|
word to word. Bookmarks have first to be created using <font face="Courier New, Courier, mono">createInstance()</font>.
|
|
They are then inserted with <font face="Courier New, Courier, mono">insertTextContent()</font>
|
|
at the current text range.</p>
|
|
<p>The main difference to the preceding example is the For loop in
|
|
<font face="Courier New, Courier, mono">markList()</font>. Instead
|
|
of changing the color of the current word, it creates a new bookmark,
|
|
oBookmark, whose name is the current word with an integer appended.
|
|
It then<br>
|
|
inserts this bookmark at the word.</p>
|
|
</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/text/creating_an_index/" target="_blank"><font face="Times New Roman, serif">Creating
|
|
an Index</font></a></td>
|
|
<td width="76%" valign="top">Indices for text documents can be created
|
|
manually in StarWriter by clicking on the words that shall appear
|
|
in the index. If the document is large or if you have to generate
|
|
indices for several documents, this task should be automated.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/sheet/" target="_blank"><font face="Times New Roman, serif">Adapting
|
|
to Euroland</font></a></td>
|
|
<td width="76%" valign="top">Most of the member of the European Union
|
|
will abandon their old currency in favor of the new Euro in 2001.
|
|
This requires modifications to all programs using the old currencies.
|
|
Since the exchange rates for the old currencies have been fixed at
|
|
the end of 1999, one can already convert old data. The following program
|
|
does this for all values in a table that are formatted with the currency
|
|
string DM.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/drawing/" target="_blank"><font face="Times New Roman, serif">Import/Export
|
|
of ASCII Files</font></a> </td>
|
|
<td width="76%" valign="top">You can use the drawing facilities of StarOffice
|
|
API to generate a picture from ASCII input. One application would
|
|
be a hierarchical representation of a directory listing, based on
|
|
textual data.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/stock_quotes_updater/" target="_blank"><font face="Times New Roman, serif">Stock
|
|
Quotes Updater</font></a></td>
|
|
<td width="76%" valign="top">If you want to display stock charts for
|
|
certain companies, you can fire up your browser every day, go to Yahoo,
|
|
look up the quote and copy it by hand into a table. Or you can use
|
|
a program that does all this automatically. The following example
|
|
relies on the sheet module. It uses URLs to obtain the current stock
|
|
quotes. The quotes are displayed in sheets, one for each company.
|
|
We show a line diagram and the numerical values for this company on
|
|
every sheet. The functionality is hidden in the three subroutines
|
|
<font face="Courier New, Courier, mono">GetValue()</font>, <font face="Courier New, Courier, mono">UpdateValue()</font>,
|
|
and <font face="Courier New, Courier, mono">UpdateChart()</font>.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/basic/forms_and_controls/" target="_blank"><font face="Times New Roman, serif">Forms
|
|
and Controls</font></a></td>
|
|
<td width="76%" valign="top">The example document Burger Factory offers
|
|
you some forms and controls, which you can use to order your desired
|
|
burger type, beverage, topping, and sauce. By hitting the button "Order
|
|
now !", your order will be placed.</td>
|
|
</tr>
|
|
</table>
|
|
<p>Additional informations:</p>
|
|
<p><a href="http://api.openoffice.org/basic/man/tutorial/tutorial.pdf">Programmer's
|
|
Tutorial</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100% bgcolor="#666699">
|
|
<h3><a name="OLE"></a><font color="#ffffff">OLE examples</font></h3>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan=3 width=100%>
|
|
<table width="100%" cellpadding="4" cellspacing="1" bgcolor="#ffffff">
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><b>Example</b></td>
|
|
<td width="76%" valign="top"><b>Description</b></td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/OLE/vbscript/">WriterDemo</a></td>
|
|
<td width="76%" valign="top">This Visual Basic Script creates an empty
|
|
text document and inserts text, a table, and a text frame.</td>
|
|
</tr>
|
|
<tr bgcolor="#f0f0f0">
|
|
<td width="24%" valign="top"><a href="http://api.openoffice.org/source/browse/api/odk/examples/OLE/delphi/">Inserting
|
|
Tables</a></td>
|
|
<td width="76%" valign="top">This Delphi program is an application,
|
|
which creates a connection to the StarOffice server and an empty text
|
|
document. Further on, you can insert tables specified by the table
|
|
name and the database pointer prefix, get the database pointer specified
|
|
by the table name and the cell address, and get the content of a cell
|
|
specified by the database pointer.</td>
|
|
</tr>
|
|
</table>
|
|
<p>Additional informations:</p>
|
|
<p><a href="http://udk.openoffice.org/common/man/spec/ole_bridge.html">The
|
|
OLE Bridge</a></p>
|
|
</td>
|
|
</tr>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100%>
|
|
<HR SIZE=1 NOSHADE>
|
|
</TD>
|
|
</TR>
|
|
<TR>
|
|
<TD WIDTH=50% BGCOLOR="#666699">
|
|
<P ALIGN=LEFT><FONT COLOR="#ffffff"> Author: <A HREF="mailto:Bertram.Nolte@sun.com"><FONT COLOR="#ffffff">Bertram
|
|
Nolte</FONT></A> (
|
|
<!-- #BeginDate format:IS1a -->2001-11-28 2:30 PM<!-- #EndDate -->
|
|
)<BR>
|
|
<I>Copyright 2001 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto,
|
|
CA 94303 USA.</I></FONT> </P>
|
|
</TD>
|
|
<TR>
|
|
<TR>
|
|
<TD COLSPAN=3 WIDTH=100%>
|
|
<HR SIZE=1 NOSHADE>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
<HR SIZE=3 NOSHADE>
|
|
</BODY>
|
|
</HTML> |