|  |  | 
   
    |  | 
   
    |  | 
	     
		  |  |   
          | 
		   
			| Examples |  |  |   
          | 
		   
          | The SDK provides a rich set of examples in different programming 
			languages (Java, C++, [PRODUCTNAME] Basic, OLE) to illustrate the use 
			of the API and demonstrate how to benefit from the included word 
			processor, spreadsheet, presentation software, graphics program and 
			database of [PRODUCTNAME].Some fo the examples need a running office instance listening on a 
			port. If this is necessary you will get further information in the 
			makefiles.
 Every makefile contains at least one run target to execute an 
			running example, please see the makefile output in the different 
			example directories. Some of the examples which create a component have
			no run target. In these cases a document is provided which instantiates
			and runs the component (see the makefile output). Also the Basic 
			examples provide documents which use and shows the implemented 
			functionality. |   
            |  |  |   
          |  |  |  | 
   
    |  | 
  
    |  | 
         
          |  |  
		  | 
		  
		  
		  | Text Document Examples | Description |  
		  | BookmarkInsertion | This application connects to the office server and 
		  gets the  multi component factory. An empty text document will be opened 
		  and an example text will be entered. Afterwards, some bookmarks will be 
		  inserted. |  
		  | HardFormatting | This program connects to the office server and gets 
		  the  multi component factory. Furthermore, an empty text document will be 
		  opened, an example text will be entered, some text attributes will be 
		  inspected, and the  PropertyState will be checked from the selection. |  
		  | SWriter | The program connects to the office server and gets the 
           multi component factory. 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. |  
		  | StyleCreation | The example connects to the office server and gets the 
           multi component factory. An empty text document will be opened, a new 
		  paragraph style will be created, and applied. |  
		  | StyleInitialization | The program connects to the office server and gets the 
           multi component factory. 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. |  
		  | TextDocumentStructure | The application connects to the office server and gets 
		  the  multi component factory. An empty text document will be opened, an
		  enumeration of all paragraphs and an enumeration of all text portions 
		  will be created. |  
		  | TextReplace | The example connects to the office server and gets the 
           multi component factory. 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. |  
		  | GraphicsInserter | The GraphicsInserter creates a graphics object on an 
		  empty text document by setting its position, width, height, and URL. |  
		  | WriterSelector | This class gives you information on the selected 
		  objects (text range, text frame, or graphics) at an OpenOffice.org 
		  Server. |  |  
		  | 
		  
		  
		  | Spreadsheet Document Examples | Description |  
		  | CalcAddins | 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 Add-in. |  
		  | ChartTypeChange | This class loads an [PRODUCTNAME] Calc document and 
		  changes the type of the embedded chart. |  
		  | EuroAdaption | The application connects to the office server and gets 
		  the  multi component factory, 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 content. |  
		  | SCalc | The program connects to the office server and gets the 
           multi component factory. 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. |  |  
		  | 
		  
		  
		  | Drawing Document Examples | Description |  
		  | SDraw | This program connects to the office server and gets 
		  the  multi component factory. Afterwards, an empty text document will 
		  be created and some shapes will be inserted on the draw page. |  |  
		  | 
		  
		  
		  | Document Handling Examples | Description |  
		  | DocumentConverter | The program offers a service that converts arbitrary 
		  documents to a favored document type. |  
		  | DocumentLoader | The DocumentLoader can open a new or an 
		  existing document. |  
		  | DocumentPrinter | The DocumentPrinter allows you to print the 
		  favored pages of a specified document on your favored printer. |  
		  | DocumentSaver | The DocumentSaver shows how to save a document and 
		  how you can change the type of your document. |  |  
		  | 
		  
		  
		  | UNO Component Examples | Description |  
		  | Inspector | The Instance Inspector is primarily an auxiliary tool 
		  for the developer, which can present information about an object of the 
		  [PRODUCTNAME] API at run-time. Depending 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 long as those are available with 
		  that object. |  
		  | MinimalComponent | This class provides a minimal UNO component. You can 
		  take this class as a base for your own components. By extensions of this 
		  class it is possible to also extend the function range of the Office. |  
		  | PropTest | Contains a component that provides property set 
		  interfaces by means of inheriting com.sun.star.lib.uno.helper.ProperterSet. |  
		  | ToDo | 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 upon 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. All rows will be calculated up to the first empty cell in the first 
		  column. If a cell in the column "Due Date" is colored red, 
		  you should take a look at your entries.
 |  |  
		  | 
		  
		  
		  | Other Examples | Description |  
		  | ConverterServlet | This servlet shows how to convert arbitrary documents 
		  on a remotely running office server. The converted document will be 
		  pushed from the web server to the client browser. Please see the README file for further information. |  
		  | NotesAccess | This class creates a spreadsheet document and fills it 
		  with existing values of documents from a Lotus Notes database. For this 
		  examples some external APIs from Lotus Notes/Domino are necessary. You 
		  can download a trial version from http:///www.lotus.com/downloads. After installing please add the install path 
		  to the PATH or LD_LIBRARY_PATH of your SDK environment and either copy 
		  the "Notes.jar" into your <OFFICE_CLASSES_DIR> directory 
		  or adapt the SDK_CLASSPATH variable in the example Makefile to use the 
		  "Notes.jar" of your installation. |  |   
          |  |  |  | 
   
    |  | 
  
    |  | 
         
          | 
		   
			| C++ examples |     |   
		  | The DocumentLoader example needs a running office server, before 
		  running this program you should invoke the office with the following 
		  command: 
		  You can also customize the mentioned host and port to your needs.soffice "-accept=socket,host=localhost,port=2083;urp;StarOffice.ServiceManager" |  |  
		  | 
		  
		  
		  | Example | Description |  
		  | DocumentLoader | This component works the same as the appropriate Java 
		  example, but is implemented in C++. |  
		  | Counter | This demo shows how to implement a very simple UNO 
		  component and how to access the UNO component from an executable. |  
		  | Remote client | The 'uno' program is used to export an arbitrary 
		  service to other processes. In this 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. |  |   
          |  |  |  | 
   
    |  | 
  
    |  | 
         
          | 
		   
			| [PRODUCTNAME] Basic examples |     |   
		  | The example programs are embedded in [PRODUCTNAME] documents in the 
		  samples directory. To view or edit the [PRODUCTNAME] Basic source, 
		  select the appropriate document and then select Tools->Macro. 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). Some of the examples are also available in Java, you can find them in 
		  the 
		  Java section. |  |  
		  | 
		  
		  
		  | Example | Description |  
		  | Changing Appearance | To change the style used for certain words, you can 
		  start with the following example. This code searches for the regular 
		  expression the[a-z], which stands for the text portion the 
		  followed by exactly one lowercase letter. All occurrences of these four 
		  letters are then changed to bold characters. The same happens in the next
		  part of the program, this time changing the appearance ofall[a-z]to italic. In order for this example to work, you 
		  must execute it from an open text document. |  
		  | Replacing Text | 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 illustrates this by forcing certain 
		  words to be spelled in American English. In order for this example to work, you must execute it from an open text 
		  document. For a real world application, it is a good idea to read the 
		  words from an external file.
 |  
		  | Using Regular Expressions | Another application of automatic text modification is 
		  related to stylistic questions. Suppose your companys policy is to 
		  avoid the use of certain words. You want to replace these words, but you 
		  cannot 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. 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 use 
		  regular expressions which provide for the variants of the words 
		  (plural, adjective etc.).
 |  
		  | Inserting Bookmarks | The next example does something very similar. This time, however, we 
		  do not 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 must first be created using 
		  createInstance(). They are then inserted withinsertTextContent()at the current text range. The main difference to the preceding example is the For loop in 
		  markList(). 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 inserts this bookmark at the 
		  word. |  
		  | Creating an Index | Indices for text documents can be created manually in 
		  [PRODUCTNAME] Writer by clicking on the words that should appear in the 
		  index. If the document is large, or if you have to generate indices for 
		  several documents, this task should be automated. |  
		  | Adapting to Euroland | Most of the members 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. |  
		  | Import/Export of ASCII Files | 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. |  
		  | Stock Quotes Updater | If you want to display stock charts for certain 
		  companies, you can open up your browser every day, go to a search engine, 
		  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 GetValue(),UpdateValue(), andUpdateChart(). |  
		  | Forms and Controls | The example document Burger Factory offers 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. |  |   
          |  |  |  | 
   
    |  | 
  
    |  | 
         
          |  |  
		  | 
		  
		  
		  | Example | Description |  
		  | ActiveX Control | The ActiveX control shows an example of access to UNO 
		  through COM technology. It requires a properly installed StarOffice 
		  version 6.0 or OpenOffice 1.0 or newer. This is a Lite ActiveX control 
		  so it can be used only in containers that allow the use of such controls. 
		  It can be activated with an <OBJECT> tag from a html-page to embed 
		  a document. Without any parameters a new writer document will be opened 
		  for editing. For more details please see the README. Note: This example works only under windows and if you don't use the MS 
		  .Net C++ compiler please check the makefile and take notice of the 
		  comments.
 |  
		  | WriterDemo | This Visual Basic Script creates an empty text 
		  document and inserts text, a table, and a text frame. |  |   
          |  |  |  | 
   
    |  | 
  
    |  | 
         
          |  |  
		  | 
		  
		  
		  | Example | Description |  
		  | Spreadsheet Example | This example is written in C# and shows how Spreadsheet
		  documents are created and filled with content. This example actually 
		  consists of three separate executables, SpreadsheetSample.exe, 
		  GeneralTableSample.exe, ViewSample.exe. |  
		  | WriterDemo | This example is written in VB.NET. It creates a text 
		  document and inserts text, a table, and a text frame. |  |   
          |  |  |  | 
   
    |  | 
   
    |  | 
   
    | Copyright 2005 Sun Microsystems, Inc. |