dev/null |binary odk/CustomTarget_build-examples_java.mk | 1 odk/Package_examples.mk | 6 odk/examples/DevelopersGuide/OfficeBean/Makefile | 90 -- odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java | 410 ------------- odk/examples/DevelopersGuide/examples.html | 64 -- 6 files changed, 1 insertion(+), 570 deletions(-)
New commits: commit 05ba63c6fce1954e52399e01ffbde2ff4f55f19e Author: Stephan Bergmann <[email protected]> AuthorDate: Wed Feb 4 13:40:58 2026 +0100 Commit: Stephan Bergmann <[email protected]> CommitDate: Wed Feb 4 16:55:39 2026 +0100 Remove the Java OfficeBean example from the SDK ...now that java.applet (which it built upon) has been removed from Java 26 Change-Id: Idae7d231c2bfd249a1cdfa036e5eeacb71bd3050 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198677 Reviewed-by: Stephan Bergmann <[email protected]> Tested-by: Jenkins diff --git a/odk/CustomTarget_build-examples_java.mk b/odk/CustomTarget_build-examples_java.mk index c8cef347aa7b..675d35ce2330 100644 --- a/odk/CustomTarget_build-examples_java.mk +++ b/odk/CustomTarget_build-examples_java.mk @@ -24,7 +24,6 @@ my_example_dirs_java = \ DevelopersGuide/FirstSteps/HelloTextTableShape/java \ DevelopersGuide/Forms \ DevelopersGuide/GUI \ - DevelopersGuide/OfficeBean \ DevelopersGuide/OfficeDev \ DevelopersGuide/OfficeDev/Clipboard/java \ DevelopersGuide/OfficeDev/DesktopEnvironment \ diff --git a/odk/Package_examples.mk b/odk/Package_examples.mk index fa72732d2ba5..f0b4eff160a6 100644 --- a/odk/Package_examples.mk +++ b/odk/Package_examples.mk @@ -250,12 +250,6 @@ $(eval $(call gb_Package_add_files_with_dir,odk_examples,$(SDKDIRNAME)/examples, DevelopersGuide/GUI/UnoMenu.java \ DevelopersGuide/GUI/UnoMenu2.java \ DevelopersGuide/GUI/oologo.gif \ - DevelopersGuide/OfficeBean/Makefile \ - DevelopersGuide/OfficeBean/OOoBeanViewer.java \ - DevelopersGuide/OfficeBean/OfficeIconColor16.jpg \ - DevelopersGuide/OfficeBean/OfficeIconColor32.jpg \ - DevelopersGuide/OfficeBean/OfficeIconMono16.jpg \ - DevelopersGuide/OfficeBean/OfficeIconMono32.jpg \ DevelopersGuide/OfficeDev/Clipboard/java/Clipboard.java \ DevelopersGuide/OfficeDev/Clipboard/java/ClipboardListener.java \ DevelopersGuide/OfficeDev/Clipboard/java/ClipboardOwner.java \ diff --git a/odk/examples/DevelopersGuide/OfficeBean/Makefile b/odk/examples/DevelopersGuide/OfficeBean/Makefile deleted file mode 100644 index 09c10d05d722..000000000000 --- a/odk/examples/DevelopersGuide/OfficeBean/Makefile +++ /dev/null @@ -1,90 +0,0 @@ -#************************************************************************* -# -# The Contents of this file are made available subject to the terms of -# the BSD license. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of Sun Microsystems, Inc. nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR -# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE -# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# -#************************************************************************** - -# Builds the OOoBean of the Developers Guide - -PRJ=../../.. -SETTINGS=$(PRJ)/settings - -include $(SETTINGS)/settings.mk -include $(SETTINGS)/std.mk - -# Define non-platform/compiler specific settings -OUT_COMP_CLASS = $(OUT_CLASS)/OOoBeanViewer - -PACKAGE = org/libreoffice/sdk/examples/developers_guide/office_bean - -JAVAFILES = \ - OOoBeanViewer.java \ - -CLASSFILES = $(patsubst %.java,$(OUT_COMP_CLASS)/$(PACKAGE)/%.class,$(JAVAFILES)) - -SDK_CLASSPATH = $(subst $(EMPTYSTRING) $(PATH_SEPARATOR),$(PATH_SEPARATOR),\ - $(PATH_SEPARATOR)$(URE_CLASSES_DIR)/libreoffice.jar\ - $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/officebean.jar\ - $(PATH_SEPARATOR)$(OUT_COMP_CLASS)) - -# Targets -.PHONY: ALL -ifeq "$(OS)" "MACOSX" -ALL : - @printf 'This example does not work on macOS ' -else -ALL : \ - OOoBeanViewer -endif - -include $(SETTINGS)/stdtarget.mk - -$(CLASSFILES) : $(JAVAFILES) - -$(MKDIR) $(subst /,$(PS),$(@D)) - javac $(JAVAC_FLAGS) -classpath "$(SDK_CLASSPATH)" -d $(OUT_COMP_CLASS) $(JAVAFILES) - -OOoBeanViewer: $(CLASSFILES) - @echo -------------------------------------------------------------------------------- - @echo Please use the following command to execute the example! - @echo - - @echo $(MAKE) OOoBeanViewer.run - @echo -------------------------------------------------------------------------------- - -%.run: $(CLASSFILES) - $(SDK_JAVA) -classpath "$(SDK_CLASSPATH)" $(subst /,.,$(PACKAGE)).$(basename $@) - -%.dbg: $(JAR1_JAR) - jdb -classpath "$(SDK_CLASSPATH)" $(subst /,.,$(PACKAGE)).$(basename $@) - -.PHONY: clean -clean : - -$(DELRECURSIVE) $(subst /,$(PS),$(OUT_COMP_CLASS)) - diff --git a/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java b/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java deleted file mode 100644 index f87eb36786ea..000000000000 --- a/odk/examples/DevelopersGuide/OfficeBean/OOoBeanViewer.java +++ /dev/null @@ -1,410 +0,0 @@ -/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * The Contents of this file are made available subject to the terms of - * the BSD license. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of Sun Microsystems, Inc. nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR - * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE - * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - *************************************************************************/ - -package org.libreoffice.sdk.examples.developers_guide.office_bean; - -import com.sun.star.comp.beans.OOoBean; -import javax.swing.filechooser.*; -import javax.swing.*; -import java.io.*; - -/* A simple Applet that contains the SimpleBean. - * - * This applet is a sample implementation of the - * OpenOffice.org bean. - * When initially loaded the applet has two buttons - * one for opening an existent file and one to open - * a blank document of a given type supported by - * OpenOffice.org eg. Writer, Calc, Impress, ... - * - */ - -public class OOoBeanViewer extends java.applet.Applet -{ - - /** - * Private variables declaration - GUI components - */ - private java.awt.Panel rightPanel; - private java.awt.Panel bottomPanel; - private javax.swing.JButton closeButton; - private javax.swing.JButton terminateButton; - private javax.swing.JButton newDocumentButton; - private javax.swing.JPopupMenu documentTypePopUp; - private javax.swing.JCheckBox menuBarButton; - private javax.swing.JCheckBox mainBarButton; - private javax.swing.JCheckBox toolBarButton; - private javax.swing.JCheckBox statusBarButton; - private javax.swing.JButton storeDocumentButton; - private javax.swing.JButton loadDocumentButton; - private javax.swing.JButton syswinButton; - private JTextField documentURLTextField; - private JMenuItem item; - private JFileChooser fileChooser; - private byte buffer[]; - - /** - * Private variables declaration - SimpleBean variables - */ - private OOoBean aBean; - - /** - * Initialize the Applet - */ - public void init() - { - //The aBean needs to be initialized to add it to the applet - aBean = new OOoBean(); - - //Initialize GUI components - rightPanel = new java.awt.Panel(); - bottomPanel = new java.awt.Panel(); - closeButton = new javax.swing.JButton("close"); - terminateButton = new javax.swing.JButton("terminate"); - newDocumentButton = new javax.swing.JButton("new document..."); - documentTypePopUp = new javax.swing.JPopupMenu(); - storeDocumentButton = new javax.swing.JButton("store to buffer"); - loadDocumentButton = new javax.swing.JButton("load from buffer"); - syswinButton = new javax.swing.JButton("release/acquire"); - - menuBarButton = new javax.swing.JCheckBox("MenuBar"); - menuBarButton.setSelected( aBean.isMenuBarVisible() ); - - mainBarButton = new javax.swing.JCheckBox("MainBar"); - mainBarButton.setSelected( aBean.isStandardBarVisible() ); - - toolBarButton = new javax.swing.JCheckBox("ToolBar"); - toolBarButton.setSelected( aBean.isToolBarVisible() ); - - statusBarButton = new javax.swing.JCheckBox("StatusBar"); - statusBarButton.setSelected( aBean.isStatusBarVisible() ); - - documentURLTextField = new javax.swing.JTextField(); - - //Set up the Popup Menu to create a blank document - documentTypePopUp.setToolTipText("Create an empty document"); - - item = documentTypePopUp.add("Text Document"); - item.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - createBlankDoc("private:factory/swriter", - "New text document"); - } - }); - - item = documentTypePopUp.add("Presentation Document"); - item.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - createBlankDoc("private:factory/simpress", - "New presentation document"); - } - }); - - item = documentTypePopUp.add("Drawing Document"); - item.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - createBlankDoc("private:factory/sdraw", - "New drawing document"); - } - }); - - item = documentTypePopUp.add("Formula Document"); - item.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - createBlankDoc("private:factory/smath", - "New formula document"); - } - }); - - item = documentTypePopUp.add("Spreadsheet Document"); - item.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - createBlankDoc("private:factory/scalc", - "New spreadsheet document"); - } - }); - - syswinButton.addActionListener( - new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - try - { - aBean.releaseSystemWindow(); - aBean.aquireSystemWindow(); - } - catch ( com.sun.star.comp.beans.NoConnectionException aExc ) - {} - catch ( com.sun.star.comp.beans.SystemWindowException aExc ) - {} - } - }); - - storeDocumentButton.addActionListener( - new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - try - { - buffer = aBean.storeToByteArray( null, null ); - } - catch ( Throwable aExc ) - { - System.err.println( "storeToBuffer failed: " + aExc ); - aExc.printStackTrace( System.err ); - } - } - }); - - loadDocumentButton.addActionListener( - new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - try - { - aBean.loadFromByteArray( buffer, null ); - } - catch ( Throwable aExc ) - { - System.err.println( "loadFromBuffer failed: " + aExc ); - aExc.printStackTrace( System.err ); - } - } - }); - - closeButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - close(); - } - }); - - terminateButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - terminate(); - } - }); - - newDocumentButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - documentTypePopUp.show((java.awt.Component)evt.getSource(), 0,0); - } - }); - - menuBarButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - aBean.setMenuBarVisible( !aBean.isMenuBarVisible() ); - } - }); - - mainBarButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - aBean.setStandardBarVisible( !aBean.isStandardBarVisible() ); - } - }); - - toolBarButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - aBean.setToolBarVisible( !aBean.isToolBarVisible() ); - } - }); - - statusBarButton.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(java.awt.event.ActionEvent evt) - { - aBean.setStatusBarVisible( !aBean.isStatusBarVisible() ); - } - }); - - documentURLTextField.setEditable(false); - documentURLTextField.setPreferredSize(new java.awt.Dimension(200, 30)); - - rightPanel.setLayout( new java.awt.GridLayout(10,1) ); - rightPanel.add(closeButton); - rightPanel.add(terminateButton); - rightPanel.add(newDocumentButton); - rightPanel.add(storeDocumentButton); - rightPanel.add(loadDocumentButton); - rightPanel.add(syswinButton); - rightPanel.add(menuBarButton); - rightPanel.add(mainBarButton); - rightPanel.add(toolBarButton); - rightPanel.add(statusBarButton); - - //bottomPanel.setLayout( new java.awt.GridLayout(1,1) ); - bottomPanel.setLayout( new java.awt.BorderLayout() ); - bottomPanel.add(documentURLTextField); - - setLayout(new java.awt.BorderLayout()); - - add(aBean, java.awt.BorderLayout.CENTER); - add(rightPanel, java.awt.BorderLayout.EAST); - add(bottomPanel, java.awt.BorderLayout.SOUTH); - } - - /** - * Create a blank document of type <code>desc</code> - * - * @param url The private internal URL of the OpenOffice.org - * document describing the document - * @param desc A description of the document to be created - */ - private void createBlankDoc(String url, String desc) - { - //Create a blank document - try - { - documentURLTextField.setText(desc); - //Get the office process to load the URL - aBean.loadFromURL( url, null ); - - aBean.aquireSystemWindow(); - } - catch ( com.sun.star.comp.beans.SystemWindowException aExc ) - { - System.err.println( "OOoBeanViewer.1:" ); - aExc.printStackTrace(); - } - catch ( com.sun.star.comp.beans.NoConnectionException aExc ) - { - System.err.println( "OOoBeanViewer.2:" ); - aExc.printStackTrace(); - } - catch ( Exception aExc ) - { - System.err.println( "OOoBeanViewer.3:" ); - aExc.printStackTrace(); - //return; - } - } - - /** closes the bean viewer, leaves OOo running. - */ - private void close() - { - setVisible(false); - aBean.stopOOoConnection(); - stop(); - System.exit(0); - } - - /** closes the bean viewer and tries to terminate OOo. - */ - private void terminate() - { - setVisible(false); - com.sun.star.frame.XDesktop xDesktop = null; - try { - xDesktop = aBean.getOOoDesktop(); - } - catch ( com.sun.star.comp.beans.NoConnectionException aExc ) {} // ignore - aBean.stopOOoConnection(); - stop(); - if ( xDesktop != null ) - xDesktop.terminate(); - System.exit(0); - } - - /** - * An ExitListener listening for windowClosing events - */ - private class ExitListener extends java.awt.event.WindowAdapter - { - /** - * windowClosed - * - * @param e A WindowEvent for a closed Window event - */ - public void windowClosed( java.awt.event.WindowEvent e) - { - close(); - } - - /** - * windowClosing for a closing window event - * - * @param e A WindowEvent for a closing window event - */ - public void windowClosing( java.awt.event.WindowEvent e) - { - ((java.awt.Window)e.getSource()).dispose(); - } - } - - public static void main(String args[]) - { - java.awt.Frame frame = new java.awt.Frame("OpenOffice.org Demo"); - OOoBeanViewer aViewer = new OOoBeanViewer(); - - frame.setLayout(new java.awt.BorderLayout()); - - frame.addWindowListener( aViewer.new ExitListener() ); - - aViewer.init(); - aViewer.start(); - - frame.add(aViewer); - frame.setLocation( 200, 200 ); - frame.setSize( 800, 480 ); - frame.show(); - } -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor16.jpg b/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor16.jpg deleted file mode 100644 index cd9c5a602eff..000000000000 Binary files a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor16.jpg and /dev/null differ diff --git a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor32.jpg b/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor32.jpg deleted file mode 100644 index ccab06b516a7..000000000000 Binary files a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconColor32.jpg and /dev/null differ diff --git a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono16.jpg b/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono16.jpg deleted file mode 100644 index cd9c5a602eff..000000000000 Binary files a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono16.jpg and /dev/null differ diff --git a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono32.jpg b/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono32.jpg deleted file mode 100644 index ccab06b516a7..000000000000 Binary files a/odk/examples/DevelopersGuide/OfficeBean/OfficeIconMono32.jpg and /dev/null differ diff --git a/odk/examples/DevelopersGuide/examples.html b/odk/examples/DevelopersGuide/examples.html index bd9b652b4495..2564c2d322e7 100644 --- a/odk/examples/DevelopersGuide/examples.html +++ b/odk/examples/DevelopersGuide/examples.html @@ -161,21 +161,13 @@ Content Broker (UCB)</a></td> <td class="content4"></td> <td class="content3"><img src="../../docs/images/arrow-1.gif"/></td> - <td><a href="#OfficeBean" - title="link to the OOoBean examples">Office Bean</a></td> + <td><a href="#GraphicalUserInterfaces" title="link to the Graphical UserInterfaces examples">Graphical User Interfaces</a></td> <td class="content10"></td> </tr> <tr valign="top"> <td class="content3"><img src="../../docs/images/arrow-1.gif"/></td> <td><a href="#ScriptingFramework" title="link to the Scripting Framework examples">Scripting Framework</a></td> - <td class="content4"></td> - <td class="content3"><img - src="../../docs/images/arrow-1.gif"/></td> - <td><a href="#GraphicalUserInterfaces" title="link to the Graphical UserInterfaces examples">Graphical User Interfaces</a></td> - <td class="content10"></td> - <td class="content3"></td> - <td></td> </tr> </tbody> </table> @@ -2663,60 +2655,6 @@ configuration in various ways.</td> </tr> <tr> <td class="content1"><img class="nothing8" - src="../../docs/images/nada.gif"/></td> - <td> - <table class="table2"> - <tbody> - <tr> - <td> - <table class="table3"> - <tbody> - <tr> - <td colspan="2" class="head1"><a name="OfficeBean">Office -Bean example</a></td> - <td align="right"> <a href="#examples" - title="link to the Developer's Guide examples overview"><img - class="navigate" src="../../docs/images/nav_up.png"/></a> <a - href="../../index.html" title="link to the SDK start page"><img - class="navigate" src="../../docs/images/nav_home.png"/></a> </td> - </tr> - </tbody> - </table> - </td> - </tr> - <tr> - <td> - <table class="table4"> - <tbody> - <tr class="thead"> - <td class="cell20"> Example</td> - <td class="cell80">Description</td> - </tr> - <tr> - <td class="cell20"><img - src="../../docs/images/bluball.gif"/> <a - href="./OfficeBean/OOoBeanViewer.java" - title="link to OfficeBean/OOoBeanViewer.java">OOoBeanViewer</a></td> - <td class="cell80">Shows how to use the <code>OOoBean</code> -embedded in a Java AWT component. It shows how to load and store -documents as well as how to control toolbar visibility.</td> - </tr> - </tbody> - </table> - </td> - </tr> - </tbody> - </table> - </td> - <td class="content1"><img class="nothing8" - src="../../docs/images/nada.gif"/></td> - </tr> - <tr> - <td colspan="3"><img class="line" - src="../../docs/images/sdk_line-1.gif"/></td> - </tr> - <tr> - <td class="content1"><img class="nothing8" src="../../docs/images/nada.gif"/></td> <td> <table class="table2">
