Holger's
Java API

com.antelmann.ooffice
Class OfficeComponent

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by com.antelmann.ooffice.OfficeComponent
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class OfficeComponent
extends JPanel

allows to easily embed OpenOffice documents into other swing components. The load.. methods must only be called after this component already has a system window as a parent, i.e. the enclosing window must already be visible before calling the load.. methods (which should also happen within the event thread). This class requires the officebean.jar library from the office installation; also note that when it is loaded, it connects independent of the context provided by OfficeConnector! As a result, this component requires the environment variable UNO_PATH to be set. Using OOffice embedded may still be somewhat unstable; it is recommended to ensure that this component is always properly cleared by stopping the connection before exiting the application, so that there is no hanging soffice.bin process. This JPanel automatically cleans up its OOoBean upon ancestor removal. Note that this class is a 'heavy' component.

Since:
18.07.2008, 21:02:11
Author:
Holger Antelmann
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
OfficeComponent()
           
 
Method Summary
 OOCalc getCalc()
          a convenience method that accesses the embedded office component as an OOSpreadsheet instance; this only works if indeed a Calc document was previously loaded
 OfficeDocument getOfficeDocument()
           
 com.sun.star.comp.beans.OOoBean getOOoBean()
           
 OOWriter getWriter()
          a convenience method that accesses the embedded office component as an OOWriter instance; this only works if indeed a Writer document was previously loaded
 void load(InputStream in)
           
 void load(InputStream in, Map<?,?> props)
           
 void load(String unoURL, Map<?,?> properties)
           
 void load(URL url, Map<?,?> properties)
           
 void loadFile(File file)
           
 void loadFileAsTemplate(File file)
           
 void loadFileReadOnly(File file)
           
 void loadNewDocument(OODocType type)
           
 void loadNewDocument(OODocType type, Map<?,?> props)
           
 void loadURLAsTemplate(URL url)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OfficeComponent

public OfficeComponent()
Method Detail

getOOoBean

public com.sun.star.comp.beans.OOoBean getOOoBean()

load

public void load(URL url,
                 Map<?,?> properties)
          throws OfficeException
Throws:
OfficeException

load

public void load(String unoURL,
                 Map<?,?> properties)
          throws OfficeException
Throws:
OfficeException

loadNewDocument

public void loadNewDocument(OODocType type)
                     throws OfficeException
Throws:
OfficeException

loadNewDocument

public void loadNewDocument(OODocType type,
                            Map<?,?> props)
                     throws OfficeException
Throws:
OfficeException

loadFileReadOnly

public void loadFileReadOnly(File file)
                      throws IOException,
                             OfficeException
Throws:
IOException
OfficeException

loadFile

public void loadFile(File file)
              throws IOException,
                     OfficeException
Throws:
IOException
OfficeException

loadFileAsTemplate

public void loadFileAsTemplate(File file)
                        throws OfficeException,
                               IOException
Throws:
OfficeException
IOException

loadURLAsTemplate

public void loadURLAsTemplate(URL url)
                       throws OfficeException,
                              IOException
Throws:
OfficeException
IOException

load

public void load(InputStream in)
          throws OfficeException,
                 IOException
Throws:
OfficeException
IOException

load

public void load(InputStream in,
                 Map<?,?> props)
          throws OfficeException,
                 IOException
Throws:
OfficeException
IOException

getOfficeDocument

public OfficeDocument getOfficeDocument()
                                 throws OfficeException
Throws:
OfficeException

getCalc

public OOCalc getCalc()
               throws OfficeException
a convenience method that accesses the embedded office component as an OOSpreadsheet instance; this only works if indeed a Calc document was previously loaded

Throws:
OfficeException

getWriter

public OOWriter getWriter()
                   throws OfficeException
a convenience method that accesses the embedded office component as an OOWriter instance; this only works if indeed a Writer document was previously loaded

Throws:
OfficeException


(c) Holger Antelmann since 2001- all rights reserved (contact: info@antelmann.com)
see www.antelmann.com/developer for further details and available downloads