embeddedobj/test/Container1/BitmapPainter.java |  281 ----
 embeddedobj/test/Container1/EmbedContApp.java  | 1681 -------------------------
 embeddedobj/test/Container1/PaintThread.java   |  141 --
 embeddedobj/test/Container1/WindowHelper.java  |  155 --
 4 files changed, 2258 deletions(-)

New commits:
commit 117d31400c946538d075e85cbb4251dc9487a0a2
Author:     Manish Bera <mbera.de...@gmail.com>
AuthorDate: Thu Dec 26 10:53:04 2024 +0530
Commit:     Ilmari Lauhakangas <ilmari.lauhakan...@libreoffice.org>
CommitDate: Thu Dec 26 12:14:07 2024 +0100

    tdf#162563 Remove Java applet code and references from embeddedobj
    
    Change-Id: If3e7ab1cb45c988f3f39fc2f73377c77dc9972f4
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178873
    Tested-by: Jenkins
    Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakan...@libreoffice.org>

diff --git a/embeddedobj/test/Container1/BitmapPainter.java 
b/embeddedobj/test/Container1/BitmapPainter.java
deleted file mode 100644
index 759536d5f6b0..000000000000
--- a/embeddedobj/test/Container1/BitmapPainter.java
+++ /dev/null
@@ -1,281 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-package embeddedobj.test;
-
-import java.awt.*;
-import java.applet.*;
-import java.awt.event.*;
-import java.net.*;
-import java.io.*;
-
-import com.sun.star.awt.XBitmap;
-import com.sun.star.awt.XDevice;
-import com.sun.star.awt.XDisplayBitmap;
-import com.sun.star.awt.XGraphics;
-import com.sun.star.awt.XWindow;
-import com.sun.star.awt.XWindowPeer;
-import com.sun.star.awt.XToolkit;
-import com.sun.star.awt.XSystemChildFactory;
-import com.sun.star.awt.WindowDescriptor;
-import com.sun.star.awt.WindowClass;
-import com.sun.star.awt.WindowAttribute;
-
-import com.sun.star.awt.XPaintListener;
-import com.sun.star.awt.PaintEvent;
-import com.sun.star.awt.XMouseListener;
-import com.sun.star.awt.XMouseMotionListener;
-import com.sun.star.awt.MouseEvent;
-import com.sun.star.awt.Point;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.Any;
-import com.sun.star.lang.XMultiServiceFactory;
-
-import com.sun.star.task.XJob;
-import com.sun.star.beans.NamedValue;
-
-
-class BitmapPainter implements XPaintListener, XMouseListener, 
XMouseMotionListener, XJob
-{
-    private XWindow m_xWindow;
-    private XBitmap m_xBitmap;
-
-    private com.sun.star.awt.Rectangle m_aDrawRect;
-
-    private Object m_oImageLock;
-
-    private PaintThread m_aPaintThread;
-
-    private boolean m_bFree = true;
-
-    private boolean m_bProceedWithPainting = true;
-
-// Methods
-
-    public BitmapPainter( XJob xJob, XWindow xWindow, XBitmap xBitmap, 
com.sun.star.awt.Rectangle aDrawRect )
-    {
-        if ( xJob == null )
-        {
-            System.out.println( "No mainthreadexecutor is provided to 
BitmapPainter on init!" );
-            throw new com.sun.star.uno.RuntimeException();
-        }
-
-        if ( xWindow == null )
-        {
-            System.out.println( "No window is provided to BitmapPainter on 
init!" );
-            throw new com.sun.star.uno.RuntimeException();
-        }
-
-        m_xWindow = xWindow;
-        m_xBitmap = xBitmap;
-
-        m_aDrawRect = aDrawRect;
-
-        m_oImageLock = new Object();
-
-        m_aPaintThread = new PaintThread( m_xWindow );
-        m_aPaintThread.start();
-
-        m_xWindow.addPaintListener( this );
-        m_xWindow.addMouseListener( this );
-        m_xWindow.addMouseMotionListener( this );
-    }
-
-
-    public void disconnectListener()
-    {
-        m_aPaintThread.disposeThread();
-        m_xWindow.removePaintListener( this );
-        m_xWindow.removeMouseListener( this );
-        m_xWindow.removeMouseMotionListener( this );
-    }
-
-
-    public void setBitmap( XBitmap xBitmap )
-    {
-        synchronized( m_oImageLock )
-        {
-            m_xBitmap = xBitmap;
-        }
-    }
-
-
-    public void setPos( com.sun.star.awt.Point aPoint )
-    {
-        synchronized( m_oImageLock )
-        {
-            m_aDrawRect.X = aPoint.X;
-            m_aDrawRect.Y = aPoint.Y;
-        }
-    }
-
-
-    public void setRect( com.sun.star.awt.Rectangle aRect )
-    {
-        synchronized( m_oImageLock )
-        {
-            m_aDrawRect = aRect;
-        }
-    }
-
-
-    public void setSize( com.sun.star.awt.Size aSize )
-    {
-        synchronized( m_oImageLock )
-        {
-            m_aDrawRect.Width = aSize.Width;
-            m_aDrawRect.Height = aSize.Height;
-        }
-    }
-
-
-    public void stopPainting()
-    {
-        m_bProceedWithPainting = false;
-    }
-
-
-    public void startPainting()
-    {
-        m_bProceedWithPainting = true;
-    }
-
-    // XPaintListener
-
-    public void windowPaint( PaintEvent e )
-    {
-        if ( !m_bProceedWithPainting )
-            return;
-
-        XBitmap xBitmap = null;
-        com.sun.star.awt.Rectangle aRect = null;
-
-        synchronized( m_oImageLock )
-        {
-            xBitmap = m_xBitmap;
-            aRect = m_aDrawRect;
-        }
-
-        m_aPaintThread.setPaintRequest( xBitmap, aRect, e.UpdateRect );
-
-        System.out.println( "VCL window paint event!" );
-    }
-
-    // XMouseListener
-
-    public void mousePressed( MouseEvent e )
-    {
-    }
-
-
-    public void mouseReleased( MouseEvent e )
-    {
-    }
-
-
-    public void mouseEntered( MouseEvent e )
-    {
-    }
-
-
-    public void mouseExited( MouseEvent e )
-    {
-    }
-
-    // XMouseMotionListener
-
-    public void mouseDragged( MouseEvent e )
-    {
-        // TODO: react to resizing of object bitmap
-        // if the object is inplace active the object must control resizing
-    }
-
-
-    public void mouseMoved( MouseEvent e )
-    {
-
-    }
-
-    // XEventListener
-
-    public void disposing( com.sun.star.lang.EventObject e )
-    {
-        // do nothing, the window can die only when the application is closed
-    }
-
-    // XJob
-
-    public Object execute( NamedValue[] pValues )
-    {
-/*
-        // means request for painting
-
-        XBitmap xBitmap = null;
-        com.sun.star.awt.Rectangle aRect = null;
-
-        synchronized( m_oImageLock )
-        {
-            xBitmap = m_xBitmap;
-            aRect = m_aDrawRect;
-        }
-
-        System.out.println( "The bitmap is going to be painted!" );
-
-        try {
-            XDevice xDevice = (XDevice)UnoRuntime.queryInterface( 
XDevice.class, m_xWindow );
-            if ( xDevice != null )
-            {
-                System.out.println( "Step1" );
-                XGraphics xGraphics = xDevice.createGraphics();
-                if ( xBitmap != null )
-                {
-                    System.out.println( "Step2" );
-                    XDisplayBitmap xDisplayBitmap = 
xDevice.createDisplayBitmap( xBitmap );
-
-                    com.sun.star.awt.Size aSize = xBitmap.getSize();
-                    xGraphics.draw( xDisplayBitmap, 0, 0, aSize.Width, 
aSize.Height,
-                                                aRect.X, aRect.Y, aRect.Width, 
aRect.Height );
-                }
-
-                System.out.println( "Step3" );
-                xGraphics.drawRect( aRect.X - 1, aRect.Y - 1, aRect.Width + 2, 
aRect.Height + 2 );
-
-                // draw resize squares
-                System.out.println( "Step4" );
-                xGraphics.drawRect( aRect.X - 2, aRect.Y - 2, 4, 4 );
-                xGraphics.drawRect( aRect.X + aRect.Width - 2, aRect.Y - 2, 4, 
4 );
-                xGraphics.drawRect( aRect.X - 2, aRect.Y + aRect.Height - 2, 
4, 4 );
-                xGraphics.drawRect( aRect.X + aRect.Width - 2, aRect.Y + 
aRect.Height - 2, 4, 4 );
-
-                System.out.println( "Step5" );
-
-                System.out.println( "The bitmap is painted by BitmapPainter!" 
);
-            }
-        }
-        catch ( Exception e )
-        {
-        }
-
-        m_bFree = true;
-
-*/
-        return Any.VOID;
-    }
-
-};
-
diff --git a/embeddedobj/test/Container1/EmbedContApp.java 
b/embeddedobj/test/Container1/EmbedContApp.java
deleted file mode 100644
index 14f5fa83e1d5..000000000000
--- a/embeddedobj/test/Container1/EmbedContApp.java
+++ /dev/null
@@ -1,1681 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package embeddedobj.test;
-
-import java.awt.*;
-import java.applet.*;
-import java.awt.event.*;
-import java.net.*;
-import java.io.*;
-import java.util.Vector;
-
-import javax.swing.JOptionPane;
-import javax.swing.Timer;
-
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XSingleServiceFactory;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XInterface;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.Any;
-
-import com.sun.star.lang.XComponent;
-
-import com.sun.star.util.XCloseable;
-import com.sun.star.util.XURLTransformer;
-import com.sun.star.util.URL;
-
-import com.sun.star.beans.PropertyValue;
-import com.sun.star.beans.NamedValue;
-
-import com.sun.star.datatransfer.DataFlavor;
-import com.sun.star.datatransfer.XTransferable;
-
-import com.sun.star.container.XNameAccess;
-
-import com.sun.star.io.XStream;
-import com.sun.star.io.XInputStream;
-import com.sun.star.io.XOutputStream;
-import com.sun.star.io.XTruncate;
-
-import com.sun.star.awt.XWindow;
-import com.sun.star.awt.XBitmap;
-
-import com.sun.star.task.XJob;
-
-import com.sun.star.embed.*;
-
-
-class ActionObject
-{
-    public byte m_nID;
-    public String m_sParam;
-
-    public ActionObject()
-    {
-        m_nID = 0;
-        m_sParam = null;
-    }
-
-    public ActionObject( byte nID )
-    {
-        m_nID = nID;
-        m_sParam = null;
-    }
-
-    public ActionObject( byte nID, String sParam )
-    {
-        m_nID = nID;
-        m_sParam = sParam;
-    }
-
-    public ActionObject( ActionObject aObject )
-    {
-        m_nID = aObject.m_nID;
-        m_sParam = aObject.m_sParam;
-    }
-};
-
-public class EmbedContApp extends Applet
-    implements MouseListener, XEmbeddedClient, ActionListener, XJob, 
XInplaceClient, XWindowSupplier
-{
-    private XMultiServiceFactory m_xServiceFactory;
-
-    private final boolean m_bStoreVisRepl = false;
-
-    private XJob m_xMainThreadExecutor;
-    private NamedValue[] m_pValuesForExecutor;
-
-    private XEmbeddedObject m_xEmbedObj;
-    private XStorage m_xStorage;
-    private float    m_nXScaling;
-    private float    m_nYScaling;
-    private float    m_nXPixelSize;
-    private float    m_nYPixelSize;
-
-    private Frame m_aFrame;
-    private Menu m_aFileMenu;
-    private Menu m_aObjectMenu;
-    private Toolkit m_aToolkit;
-
-    private Image m_aImage;
-    private Object m_oImageLock;
-
-    private boolean m_bOwnFile = false;
-
-    private boolean m_bLinkObj = false;
-    private String m_aLinkURI;
-
-    private Object m_oActionsNumberLock;
-
-    private Timer m_aTimer;
-    private boolean m_bDestroyed = false;
-
-    private Object m_oInHandlerLock;
-    private boolean m_bInHandler = false;
-
-    private XURLTransformer m_xTransformer;
-
-    private NativeView m_aNativeView;
-    private XWindow m_xVCLWindow;
-
-    private XBitmap m_xBitmap;
-    private BitmapPainter m_aBitmapPainter;
-
-// Constants
-    private final byte DESTROY                  =  1;
-    private final byte ACTIVATE_OUTPLACE        =  2;
-    private final byte NEW_DOCUMENT             =  3;
-    private final byte SAVE_AS                  =  4;
-    private final byte OPEN_FILE                =  5;
-    private final byte SAVE                     =  6;
-    private final byte NEW_OBJECT               =  7;
-    private final byte OBJECT_FROM_FILE         =  8;
-    private final byte LINK_FROM_FILE           =  9;
-    private final byte CONVERT_LINK_TO_OBJECT   = 10;
-    private final byte ACTIVATE_INPLACE         = 11;
-    private final byte DEACTIVATE               = 12;
-
-// Methods
-    public EmbedContApp( Frame aFrame, XMultiServiceFactory xServiceFactory )
-    {
-        m_aFrame = aFrame;
-        m_xServiceFactory = xServiceFactory;
-    }
-
-    public void init()
-    {
-        resize( 800, 600 );
-        setBackground( Color.gray );
-
-        m_aToolkit = Toolkit.getDefaultToolkit();
-
-        try {
-            Object oTransformer = m_xServiceFactory.createInstance( 
"com.sun.star.util.URLTransformer" );
-            m_xTransformer = (XURLTransformer)UnoRuntime.queryInterface( 
XURLTransformer.class, oTransformer );
-        } catch( Exception e ) { System.exit( 0 ); }
-
-        m_oActionsNumberLock = new Object();
-        m_aActionsList = new ArrayList();
-
-        m_oInHandlerLock = new Object();
-        m_oImageLock = new Object();
-
-        try {
-            Object oJob = m_xServiceFactory.createInstance( 
"com.sun.star.comp.thread.MainThreadExecutor" );
-            m_xMainThreadExecutor = (XJob)UnoRuntime.queryInterface( 
XJob.class, oJob );
-        } catch( Exception e ) {}
-
-        if ( m_xMainThreadExecutor == null )
-        {
-            System.out.println( "Can't create MainThreadExecutor! The 
application is unusable!" );
-            System.exit( 0 );
-        }
-
-        m_nXScaling = 1;
-        m_nYScaling = 1;
-        m_nXPixelSize = 1;
-        m_nYPixelSize = 1;
-
-        m_pValuesForExecutor = new NamedValue[1];
-        m_pValuesForExecutor[0] = new NamedValue( "JobToExecute", (Object)this 
);
-
-        m_aTimer = new Timer( 100, this );
-        m_aTimer.start();
-
-        // Get a menu bar.
-        MenuBar aMenuBar = m_aFrame.getMenuBar();
-        if( aMenuBar == null )
-        {
-            aMenuBar = new MenuBar();
-            m_aFrame.setMenuBar( aMenuBar );
-        }
-
-        // Create menus for the menu bar.
-
-        // File menu
-        m_aFileMenu = new Menu( "File", true );
-        aMenuBar.add( m_aFileMenu );
-
-        MenuItem aItem = new NewMenuItem();
-        m_aFileMenu.add( aItem );
-
-        aItem = new OpenFileMenuItem();
-        m_aFileMenu.add( aItem );
-
-        aItem = new SaveMenuItem();
-        m_aFileMenu.add( aItem );
-
-        aItem = new SaveAsMenuItem();
-        m_aFileMenu.add( aItem );
-
-        // Object menu
-        m_aObjectMenu = new Menu( "Object", true );
-        aMenuBar.add( m_aObjectMenu );
-
-        aItem = new NewObjectMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        aItem = new LoadObjectMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        aItem = new LinkObjectMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        aItem = new ConvertLinkToEmbedMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        // Activation menu
-        m_aObjectMenu = new Menu( "Activation", true );
-        aMenuBar.add( m_aObjectMenu );
-
-        aItem = new ActivateOutplaceMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        aItem = new ActivateInplaceMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        aItem = new DeactivateMenuItem();
-        m_aObjectMenu.add( aItem );
-
-        m_aNativeView = new NativeView();
-        m_aNativeView.resize( 800, 600 );
-        this.add( m_aNativeView );
-
-
-    public void actionPerformed( ActionEvent evt )
-    {
-        synchronized( m_oInHandlerLock )
-        {
-            if ( m_bInHandler )
-                return;
-            m_bInHandler = true;
-        }
-
-        synchronized( m_oActionsNumberLock )
-        {
-            if ( m_aActionsList.size() > 0 )
-            {
-                try {
-                    m_xMainThreadExecutor.execute( m_pValuesForExecutor );
-                }
-                catch( Exception e )
-                {
-                    System.out.println( "Exception in actionPerformed() : " + 
e );
-                }
-            }
-            else
-            {
-                synchronized( m_oInHandlerLock )
-                {
-                    m_bInHandler = false;
-                }
-            }
-        }
-    }
-
-    // XWindowSupplier
-    public XWindow getWindow()
-    {
-        return m_xVCLWindow;
-    }
-
-    // XEmbeddedClient
-    public void saveObject()
-        throws com.sun.star.uno.Exception
-    {
-        if ( m_xEmbedObj != null )
-        {
-            try {
-                XEmbedPersist xPersist = 
(XEmbedPersist)UnoRuntime.queryInterface( XEmbedPersist.class, m_xEmbedObj );
-                if ( xPersist != null )
-                {
-                    xPersist.storeOwn();
-                    generateNewImage();
-                }
-                else
-                    JOptionPane.showMessageDialog( m_aFrame, "No 
XEmbedPersist!", "Error:", JOptionPane.ERROR_MESSAGE );
-            }
-            catch( Exception e )
-            {
-                JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
saveObject:", JOptionPane.ERROR_MESSAGE );
-            }
-        }
-
-        generateNewImage();
-        repaint();
-    }
-
-    public void onShowWindow( boolean bVisible )
-    {
-        // for now nothing to do
-    }
-
-    // XInplaceClient
-    public boolean canInplaceActivate()
-    {
-        return true;
-    }
-
-    public void onInplaceActivate()
-    {
-        // TODO
-        // prepare for inplace activation
-
-        // REMOVE
-        // workaround for CLIPCHILDREN problem
-        if ( m_aBitmapPainter != null )
-            m_aBitmapPainter.stopPainting();
-    }
-
-    public void onUIActivate()
-    {
-        // TODO
-        // prepare for UI activate
-    }
-
-    public void onInplaceDeactivate()
-    {
-        // TODO
-        // inplace deactivation is done
-
-        // REMOVE
-        // workaround for CLIPCHILDREN problem
-        if ( m_aBitmapPainter != null )
-            m_aBitmapPainter.startPainting();
-    }
-
-    public void onUIDeactivate()
-    {
-        // TODO
-        // prepare for UI deactivate
-    }
-
-    public XIPMainContainerWindow getTopmostWindow()
-    {
-        // TODO
-        // return an implementation of XIPMainContainerWindow
-        // mainly required for ui activation
-        // dummy implementation is enough for inplace activation
-
-        return null;
-    }
-
-    public XInplaceUIWindow getDocumentWindow()
-    {
-        // TODO
-        // return implementation of XInplaceUIWindow
-        // mainly required for ui activation
-        // dummy implementation is enough for inplace activation
-
-        return null;
-    }
-
-    public com.sun.star.awt.Rectangle getPosRect()
-    {
-        // provide position rectangle to the object
-        try {
-            // here object bitmap and scaling factor hold the size
-            com.sun.star.awt.Size aBitmapSize = m_xBitmap.getSize();
-            com.sun.star.awt.Size aVisSize = new com.sun.star.awt.Size(
-                                            (int)( aBitmapSize.Width * 
m_nXScaling ),
-                                            (int)( aBitmapSize.Height * 
m_nYScaling ) );
-            return new com.sun.star.awt.Rectangle( 10, 10, aVisSize.Width, 
aVisSize.Height );
-        }
-        catch( Exception e )
-        {
-            System.out.println( "Position rectangle generation failed!" );
-        }
-
-        return new com.sun.star.awt.Rectangle( 10, 10, 110, 110 );
-    }
-
-    public com.sun.star.awt.Rectangle getClipRect()
-    {
-        // provide clip rectangle to the object
-        // in this application position and clip rectangles are the same
-
-        try {
-            // here object bitmap and scaling factor hold the size
-            com.sun.star.awt.Size aBitmapSize = m_xBitmap.getSize();
-            com.sun.star.awt.Size aVisSize = new com.sun.star.awt.Size(
-                                            (int)( aBitmapSize.Width * 
m_nXScaling ),
-                                            (int)( aBitmapSize.Height * 
m_nYScaling ) );
-            return new com.sun.star.awt.Rectangle( 10, 10, aVisSize.Width, 
aVisSize.Height );
-        }
-        catch( Exception e )
-        {
-            System.out.println( "Clip rectangle generation failed!" );
-        }
-
-        return new com.sun.star.awt.Rectangle( 10, 10, 110, 110 );
-    }
-
-    public void translateAccelerators( com.sun.star.awt.KeyEvent[] aKeys )
-    {
-        // TODO
-        // an accelerator table for object
-        // ui activation related
-    }
-
-    public void scrollObj( com.sun.star.awt.Size aOffset )
-    {
-        // TODO
-        // scrolls the object to a specified offset
-        // not mandatory for the testing application :)
-    }
-
-    public void onPosRectChange( com.sun.star.awt.Rectangle aPosRect )
-    {
-        // object asks to change the position
-        if ( m_xEmbedObj != null )
-        {
-            try {
-                int nState = m_xEmbedObj.getCurrentState();
-                // such a position change make sense only when object is
-                // either inplace or ui active
-                if ( nState == EmbedStates.EMBED_INPLACE_ACTIVE
-                  || nState == EmbedStates.EMBED_UI_ACTIVE )
-                 {
-                    XInplaceObject xInplObj = 
(XInplaceObject)UnoRuntime.queryInterface( XInplaceObject.class, m_xEmbedObj );
-                     if ( xInplObj != null )
-                    {
-                        xInplObj.setObjectRects( aPosRect, aPosRect ); // show 
the whole object
-                        if ( m_aBitmapPainter != null )
-                            m_aBitmapPainter.setRect( aPosRect );
-                    }
-                    else
-                         System.out.println( "Why object that does not support 
inplace activation behave like inplace object?!" );
-                 }
-                 else
-                     System.out.println( "The object is not active but asks to 
change visual area!" );
-            } catch( Exception e )
-            {
-                 System.out.println( "Exception is thrown in onPosRectChange: 
" + e );
-            }
-        }
-        else
-             System.out.println( "Who asks to change visual area?!!" );
-    }
-
-    // XJob
-    public Object execute( NamedValue[] pValues )
-    {
-        for( int nInd = 0; nInd < m_aActionsList.size(); nInd++ )
-        {
-            ActionObject aAction = m_aActionsList.get( nInd );
-            if ( aAction != null )
-            {
-                if ( aAction.m_nID == DESTROY )
-                {
-                    // free all resources
-                    clearObjectAndStorage();
-                    m_bDestroyed = true;
-                }
-                else if ( aAction.m_nID == ACTIVATE_OUTPLACE )
-                {
-                    // activate object if exists and not active
-                    if ( m_xEmbedObj != null )
-                    {
-                        try {
-                            m_xEmbedObj.changeState( EmbedStates.EMBED_ACTIVE 
);
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception on mouse click" + 
ex );
-                        }
-                    }
-                }
-                else if ( aAction.m_nID == NEW_DOCUMENT )
-                {
-                    // clear everything
-                    clearObjectAndStorage();
-
-                    repaint();
-                }
-                else if ( aAction.m_nID == SAVE_AS )
-                {
-                    // open SaveAs dialog and store
-
-                    if ( m_xStorage != null && m_xEmbedObj != null )
-                    {
-                        try {
-                            /*
-                                if ( m_bLinkObj )
-                                    storeLinkAsFileURI( aFileURI );
-                                else
-                            */
-                            saveObjectAsFileURI( aAction.m_sParam );
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception in SaveAsMenuItem: 
" + ex );
-                        }
-                    }
-                }
-                else if ( aAction.m_nID == OPEN_FILE )
-                {
-                    // clear everything
-                    clearObjectAndStorage();
-
-                    // load from specified file
-                    loadFileURI( aAction.m_sParam );
-
-                    if ( m_xEmbedObj != null )
-                    {
-                        try {
-                            m_xEmbedObj.setClientSite( this );
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception in 
OpenFileMenuItem: " + ex );
-                        }
-                    }
-
-                    generateNewImage();
-                    repaint();
-                }
-                else if ( aAction.m_nID == SAVE )
-                {
-                    if ( m_xStorage != null && m_xEmbedObj != null )
-                    {
-                        // if has persistence store there
-                        // if not it is and error, SaveAs had to be used
-
-                        if ( m_bOwnFile )
-                        {
-                            if ( m_xStorage != null )
-                            {
-                                try {
-                                    saveObject();
-
-                                    if ( m_bLinkObj )
-                                        storeLinkToStorage();
-
-                                    XTransactedObject xTransact = 
(XTransactedObject)UnoRuntime.queryInterface( XTransactedObject.class,
-                                                                               
                                 m_xStorage );
-                                    if ( xTransact != null )
-                                        xTransact.commit();
-                                }
-                                catch( Exception ex )
-                                {
-                                    System.out.println( "Exception during save 
operation in SaveMenuItem:" + ex );
-                                }
-                            }
-                            else
-                            {
-                                System.out.println( "No storage for owned 
file!" );
-                            }
-                        }
-                        else
-                        {
-                            System.out.println( "No owned file!" );
-                        }
-                    }
-                }
-                else if ( aAction.m_nID == NEW_OBJECT )
-                {
-                    // remove current object an init a new one
-                    clearObjectAndStorage();
-
-                    if ( aAction.m_sParam != null )
-                    {
-                        m_xStorage = createTempStorage();
-
-                        if ( m_xStorage != null )
-                            m_xEmbedObj = createEmbedObject( aAction.m_sParam 
);
-                        else
-                            System.out.println( "Can't create temporary 
storage!" );
-
-                        if ( m_xEmbedObj != null )
-                        {
-                            try {
-                                m_xEmbedObj.setClientSite( this );
-                            }
-                            catch( Exception ex )
-                            {
-                                System.out.println( "Exception in 
NewObjectMenuItem:" + ex );
-                            }
-                        }
-                    }
-
-                    generateNewImage();
-                    repaint();
-                }
-                else if ( aAction.m_nID == OBJECT_FROM_FILE )
-                {
-                    // first remove current object
-                    clearObjectAndStorage();
-
-                    // create object from specified file
-                    m_xStorage = createTempStorage();
-
-                    if ( m_xStorage != null )
-                        m_xEmbedObj = loadEmbedObject( aAction.m_sParam );
-
-                    if ( m_xEmbedObj != null )
-                    {
-                        try {
-                            m_xEmbedObj.setClientSite( this );
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception in 
LoadObjectMenuItem: " + ex );
-                        }
-                    }
-
-                    generateNewImage();
-                    repaint();
-                }
-                else if ( aAction.m_nID == LINK_FROM_FILE )
-                {
-                    // first remove current object
-                    clearObjectAndStorage();
-
-                    m_xStorage = createTempStorage();
-
-                    // create object from specified file
-                    m_xEmbedObj = createLinkObject( aAction.m_sParam );
-
-                    if ( m_xEmbedObj != null )
-                    {
-                        m_aLinkURI = aAction.m_sParam;
-                        m_bLinkObj = true;
-
-                        try {
-                            m_xEmbedObj.setClientSite( this );
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception in 
LinkObjectMenuItem:" + ex );
-                        }
-                    }
-
-                    generateNewImage();
-                    repaint();
-                }
-                else if ( aAction.m_nID == CONVERT_LINK_TO_OBJECT )
-                {
-                    if ( !m_bLinkObj )
-                    {
-                        System.out.println( "The object is not a link!" );
-                        continue;
-                    }
-
-                    if ( m_xEmbedObj != null )
-                    {
-                        if ( m_xStorage != null )
-                        {
-                            try {
-                                XNameAccess xNameAccess = 
(XNameAccess)UnoRuntime.queryInterface( XNameAccess.class,
-                                                                               
                 m_xStorage );
-                                if ( xNameAccess != null && 
xNameAccess.hasByName( "LinkName" ) )
-                                    m_xStorage.removeElement( "LinkName" );
-
-                                XLinkageSupport xLinkage = 
(XLinkageSupport)UnoRuntime.queryInterface( XLinkageSupport.class,
-                                                                               
                         m_xEmbedObj );
-                                if ( xLinkage != null )
-                                {
-                                    xLinkage.breakLink( m_xStorage, "EmbedSub" 
);
-                                    m_bLinkObj = false;
-                                    m_aLinkURI = null;
-                                }
-                                else
-                                    System.out.println( "No XLinkageSupport in 
ConvertLink... !" );
-                            }
-                            catch( Exception e1 )
-                            {
-                                System.out.println( "Exception in 
ConvertLinkToEmbed:try 1 :" + e1 );
-                            }
-                        }
-                    }
-                }
-                else if ( aAction.m_nID == ACTIVATE_INPLACE )
-                {
-                    // activate object
-                    if ( m_xEmbedObj != null )
-                    {
-                        // in general it is better to check acceptable states
-                        try {
-                            m_xEmbedObj.changeState( 
EmbedStates.EMBED_INPLACE_ACTIVE );
-                        }
-                        catch( Exception ex )
-                        {
-                            System.out.println( "Exception on inplace 
activation " + ex );
-                        }
-                    }
-                }
-                else if ( aAction.m_nID == DEACTIVATE )
-                {
-                    // activate object
-
-                    if ( m_xEmbedObj != null )
-                    {
-                        int nOldState = -1;
-                        try {
-                            nOldState = m_xEmbedObj.getCurrentState();
-                        } catch( Exception e )
-                        {}
-
-                        if ( nOldState == EmbedStates.EMBED_ACTIVE
-                          || nOldState == EmbedStates.EMBED_INPLACE_ACTIVE
-                          || nOldState == EmbedStates.EMBED_UI_ACTIVE )
-                        {
-                            try {
-                                m_xEmbedObj.changeState( 
EmbedStates.EMBED_RUNNING );
-                            }
-                            catch( Exception ex )
-                            {
-                                System.out.println( "Exception on inplace 
activation " + ex );
-                            }
-                        }
-                        else
-                        {
-                            System.out.println( "Deactivation of nonactive 
object!" );
-                        }
-                    }
-                }
-                else
-                {
-                    System.out.println( "Unknown action is requested: " + 
aAction.m_nID + "
" );
-                }
-            }
-        }
-
-        m_aActionsList.clear();
-
-        synchronized( m_oInHandlerLock )
-        {
-            m_bInHandler = false;
-        }
-
-        return Any.VOID;
-    }
-
-    public void actionRegister( byte nActionID, String sParam )
-    {
-        synchronized( m_oActionsNumberLock )
-        {
-            int nSize = m_aActionsList.size();
-            if ( nSize < 199 )
-            {
-                if ( nSize == 0 )
-                    m_aActionsList.add( new ActionObject( nActionID, sParam ) 
);
-                else
-                {
-                    ActionObject aAction = m_aActionsList.get( nSize - 1 );
-                    if ( aAction != null && aAction.m_nID != DESTROY )
-                        m_aActionsList.add( new ActionObject( nActionID, 
sParam ) );
-                }
-            }
-        }
-    }
-
-    public void SaveAsOperation()
-    {
-        if ( m_xStorage != null && m_xEmbedObj != null )
-        {
-            FileDialog aFileDialog = new FileDialog( m_aFrame, "SaveAs", 
FileDialog.SAVE );
-            aFileDialog.show();
-            if ( aFileDialog.getFile() != null )
-            {
-                String aFileName = aFileDialog.getDirectory() + 
aFileDialog.getFile();
-                File aFile = new File( aFileName );
-                if ( aFile != null )
-                {
-                    // create object from specified file
-                    String aFileURI = getValidURL( 
aFile.toURI().toASCIIString() );
-                    actionRegister( SAVE_AS, aFileURI );
-                }
-            }
-        }
-        else
-            JOptionPane.showMessageDialog( m_aFrame, "No document is 
embedded!", "Error:", JOptionPane.ERROR_MESSAGE );
-
-    }
-
-    public void destroy()
-    {
-        // redirect the call through the timer and call super.destroy();
-        actionRegister( DESTROY, null );
-
-        for ( int i = 0; i < 3 && !m_bDestroyed; i++ )
-        {
-            try {
-                Thread.sleep( 200 );
-            } catch ( Exception e )
-            {}
-        }
-
-        if ( !m_bDestroyed )
-            System.out.println( "The object application can not exit 
correctly!" );
-
-        m_aTimer.stop();
-
-        super.destroy();
-    }
-
-    public void update( Graphics g )
-    {
-        paint( g );
-    }
-
-    public void paint( Graphics g )
-    {
-        super.paint( g );
-
-        createVclWindow();
-    }
-
-    public void createVclWindow()
-    {
-        synchronized( m_oImageLock )
-        {
-            if ( m_xVCLWindow == null && m_xServiceFactory != null && 
m_xEmbedObj != null && m_xBitmap != null )
-            {
-                java.awt.Rectangle aBounds = getBounds();
-                m_xVCLWindow = WindowHelper.createWindow( m_xServiceFactory, 
m_aNativeView, aBounds );
-                m_xVCLWindow.setVisible( true );
-
-                com.sun.star.awt.Size aBitmapSize = new com.sun.star.awt.Size( 
200, 100 );
-
-                XVisualObject xVisObj = 
(XVisualObject)UnoRuntime.queryInterface( XVisualObject.class, m_xEmbedObj );
-                try {
-                    com.sun.star.awt.Size aVisSize = xVisObj.getVisAreaSize( 
Aspects.MSASPECT_CONTENT );
-                    m_nXPixelSize = aVisSize.Width / aBitmapSize.Width;
-                    m_nYPixelSize = aVisSize.Height / aBitmapSize.Height;
-                }
-                catch( Exception e )
-                {
-                }
-
-                if ( m_xBitmap != null )
-                     aBitmapSize = m_xBitmap.getSize();
-
-                System.out.println( "The visual area is Width = " + 
aBitmapSize.Width + "; Height = " + aBitmapSize.Height );
-
-                com.sun.star.awt.Rectangle aRect = new 
com.sun.star.awt.Rectangle(
-                                                        10,
-                                                        10,
-                                                        Math.min( 
(int)aBounds.getWidth() - 20, aBitmapSize.Width ),
-                                                        Math.min( 
(int)aBounds.getHeight() - 20, aBitmapSize.Height ) );
-
-                m_aBitmapPainter = new BitmapPainter( m_xMainThreadExecutor, 
m_xVCLWindow, m_xBitmap, aRect );
-            }
-        }
-    }
-
-    public void generateNewImage()
-    {
-        if ( m_xEmbedObj != null )
-        {
-            try {
-                int nOldState = m_xEmbedObj.getCurrentState();
-                int nState = nOldState;
-                if ( nOldState == EmbedStates.EMBED_LOADED )
-                {
-                    m_xEmbedObj.changeState( EmbedStates.EMBED_RUNNING );
-                    nState = EmbedStates.EMBED_RUNNING;
-                }
-
-                if ( nState == EmbedStates.EMBED_UI_ACTIVE || nState == 
EmbedStates.EMBED_INPLACE_ACTIVE
-                  || nState == EmbedStates.EMBED_ACTIVE || nState == 
EmbedStates.EMBED_RUNNING )
-                {
-                    XComponentSupplier xCompProv = 
(XComponentSupplier)UnoRuntime.queryInterface(
-                                                                               
     XComponentSupplier.class,
-                                                                               
     m_xEmbedObj );
-                    if ( xCompProv != null )
-                    {
-                        XCloseable xCloseable = xCompProv.getComponent();
-                        XTransferable xTransfer = 
(XTransferable)UnoRuntime.queryInterface(
-                                                                               
     XTransferable.class,
-                                                                               
     xCloseable );
-                        if ( xTransfer != null )
-                        {
-                            DataFlavor aFlavor = new DataFlavor();
-                            aFlavor.MimeType = 
"application/x-openoffice;windows_formatname=\"Bitmap\"";
-                            aFlavor.HumanPresentableName = "Bitmap";
-                            aFlavor.DataType = new Type( byte[].class );
-
-                            Object aAny = xTransfer.getTransferData( aFlavor );
-                            if ( aAny != null && AnyConverter.isArray( aAny ) )
-                            {
-                                synchronized( m_oImageLock )
-                                {
-                                    m_xBitmap = 
WindowHelper.getVCLBitmapFromBytes( m_xServiceFactory, aAny );
-                                    if ( m_aBitmapPainter != null )
-                                    {
-                                        m_aBitmapPainter.setBitmap( m_xBitmap 
);
-
-                                        if ( m_xBitmap != null )
-                                        {
-                                            try {
-                                                com.sun.star.awt.Size 
aBitmapSize = m_xBitmap.getSize();
-                                                com.sun.star.awt.Size aVisSize 
= new com.sun.star.awt.Size(
-                                                                               
 (int)( aBitmapSize.Width * m_nXScaling ),
-                                                                               
 (int)( aBitmapSize.Height * m_nYScaling ) );
-                                                m_aBitmapPainter.setSize( 
aVisSize );
-                                            }
-                                            catch( Exception e )
-                                            {
-                                            }
-                                        }
-                                    }
-                                }
-                            }
-                        }
-                        else
-                            System.out.println( "paint() : can not get 
XTransferable for the component!
" );
-                    }
-                    else
-                        System.out.println( "paint() : XComponentSupplier is 
not implemented!
" );
-                }
-            }
-            catch( com.sun.star.uno.Exception e )
-            {
-                // dialogs should not be used in paint()
-                System.out.println( "Exception in paint(): " + e );
-            }
-        }
-    }
-
-    public void mouseClicked( MouseEvent e )
-    {
-        if( e.getModifiers() == InputEvent.BUTTON1_MASK )
-        {
-            actionRegister( ACTIVATE_OUTPLACE, null );
-        }
-    }
-
-    public void mousePressed( MouseEvent e ){};
-    public void mouseEntered( MouseEvent e ){};
-    public void mouseExited( MouseEvent e ){};
-    public void mouseReleased( MouseEvent e ){};
-
-    class NewMenuItem extends MenuItem implements ActionListener // Menu New
-    {
-        public NewMenuItem()
-        {
-            super( "New", new MenuShortcut( KeyEvent.VK_A ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            actionRegister( NEW_DOCUMENT, null );
-        }
-    }
-
-    class SaveAsMenuItem extends MenuItem implements ActionListener // Menu 
SaveAs...
-    {
-        public SaveAsMenuItem()
-        {
-            super( "SaveAs..." );
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            // open SaveAs dialog and store
-
-            SaveAsOperation();
-        }
-    }
-
-    class OpenFileMenuItem extends MenuItem implements ActionListener // Menu 
Open
-    {
-        public OpenFileMenuItem()
-        {
-            super( "Open", new MenuShortcut( KeyEvent.VK_C ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            // open OpenFile dialog and load doc
-            FileDialog aFileDialog = new FileDialog( m_aFrame, "Open" );
-            aFileDialog.show();
-            if ( aFileDialog.getFile() != null )
-            {
-                String aFileName = aFileDialog.getDirectory() + 
aFileDialog.getFile();
-                File aFile = new File( aFileName );
-                if ( aFile != null )
-                {
-                    // create object from specified file
-                    String aFileURI = getValidURL( 
aFile.toURI().toASCIIString() );
-                    actionRegister( OPEN_FILE, aFileURI );
-                }
-            }
-        }
-    }
-
-    class SaveMenuItem extends MenuItem implements ActionListener // Menu Save
-    {
-        public SaveMenuItem()
-        {
-            super( "Save", new MenuShortcut( KeyEvent.VK_D ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            // if has persistence store there
-            // if not open SaveAs dialog and store
-            if ( m_xStorage != null && m_xEmbedObj != null )
-            {
-                if ( m_bOwnFile )
-                {
-                    if ( m_xStorage == null )
-                    {
-                        JOptionPane.showMessageDialog( m_aFrame,
-                                                        "No storage for owned 
file!",
-                                                        "Error:",
-                                                        
JOptionPane.ERROR_MESSAGE );
-
-                        return;
-                    }
-
-                    actionRegister( SAVE, null );
-                }
-                else
-                {
-                    SaveAsOperation();
-                }
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame, "No document is 
embedded!", "Error:", JOptionPane.ERROR_MESSAGE );
-        }
-    }
-
-    class NewObjectMenuItem extends MenuItem implements ActionListener // Menu 
NewObject
-    {
-        public NewObjectMenuItem()
-        {
-            super( "Create", new MenuShortcut( KeyEvent.VK_N ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            Object[] possibleValues = { 
"com.sun.star.comp.Writer.TextDocument",
-                                        
"com.sun.star.comp.Writer.GlobalDocument",
-                                        "com.sun.star.comp.Writer.WebDocument",
-                                        
"com.sun.star.comp.Calc.SpreadsheetDocument",
-                                        
"com.sun.star.comp.Draw.PresentationDocument",
-                                        
"com.sun.star.comp.Draw.DrawingDocument",
-                                        
"com.sun.star.comp.Math.FormulaDocument",
-                                        "BitmapImage" };
-
-            String selectedValue = (String)JOptionPane.showInputDialog( null, 
"DocumentType", "Select",
-                                                                           
JOptionPane.INFORMATION_MESSAGE, null,
-                                                                           
possibleValues, possibleValues[0] );
-
-            actionRegister( NEW_OBJECT, selectedValue );
-        }
-    }
-
-    class LoadObjectMenuItem extends MenuItem implements ActionListener // 
Menu LoadObject
-    {
-        public LoadObjectMenuItem()
-        {
-            super( "Load from file", new MenuShortcut( KeyEvent.VK_L ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            // open OpenFile dialog and load doc
-            FileDialog aFileDialog = new FileDialog( m_aFrame, "Select sources 
to use for object init" );
-            aFileDialog.show();
-            if ( aFileDialog.getFile() != null )
-            {
-                String aFileName = aFileDialog.getDirectory() + 
aFileDialog.getFile();
-                File aFile = new File( aFileName );
-                if ( aFile != null )
-                {
-                    // create object from specified file
-                    String aFileURI = getValidURL( 
aFile.toURI().toASCIIString() );
-                    actionRegister( OBJECT_FROM_FILE, aFileURI );
-                }
-            }
-        }
-    }
-
-    class LinkObjectMenuItem extends MenuItem implements ActionListener // 
Menu LinkObject
-    {
-        public LinkObjectMenuItem()
-        {
-            super( "Create link", new MenuShortcut( KeyEvent.VK_M ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            // open OpenFile dialog and load doc
-            FileDialog aFileDialog = new FileDialog( m_aFrame, "Select sources 
to use for object init" );
-            aFileDialog.show();
-            if ( aFileDialog.getFile() != null )
-            {
-                String aFileName = aFileDialog.getDirectory() + 
aFileDialog.getFile();
-                File aFile = new File( aFileName );
-                if ( aFile != null )
-                {
-                    // create object from specified file
-                    String aFileURI = getValidURL( 
aFile.toURI().toASCIIString() );
-                    actionRegister( LINK_FROM_FILE, aFileURI );
-                }
-            }
-        }
-    }
-
-    class ConvertLinkToEmbedMenuItem extends MenuItem implements 
ActionListener // Menu LinkObject
-    {
-        public ConvertLinkToEmbedMenuItem()
-        {
-            super( "Convert link to embed", new MenuShortcut( KeyEvent.VK_M ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            actionRegister( CONVERT_LINK_TO_OBJECT, null );
-        }
-    }
-
-    class ActivateOutplaceMenuItem extends MenuItem implements ActionListener 
// Menu ActiveteOutplace
-    {
-        public ActivateOutplaceMenuItem()
-        {
-            super( "Activate outplace", new MenuShortcut( KeyEvent.VK_A ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            actionRegister( ACTIVATE_OUTPLACE, null );
-        }
-    }
-
-    class ActivateInplaceMenuItem extends MenuItem implements ActionListener 
// Menu ActivateInplace
-    {
-        public ActivateInplaceMenuItem()
-        {
-            super( "Activate inplace", new MenuShortcut( KeyEvent.VK_I ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            actionRegister( ACTIVATE_INPLACE, null );
-        }
-    }
-
-    class DeactivateMenuItem extends MenuItem implements ActionListener // 
Menu Deactivate
-    {
-        public DeactivateMenuItem()
-        {
-            super( "Deactivate", new MenuShortcut( KeyEvent.VK_D ));
-            addActionListener( this );
-        }
-
-        public void actionPerformed( ActionEvent e )
-        {
-            actionRegister( DEACTIVATE, null );
-        }
-    }
-
-    // Helper methods
-    public XEmbeddedObject createEmbedObject( String aServiceName )
-    {
-        XEmbeddedObject xEmbObj = null;
-        byte[] pClassID = new byte[16];
-
-        if ( aServiceName.equals( "com.sun.star.comp.Writer.TextDocument" ) )
-        {
-            int[] pTempClassID = { 0x8B, 0xC6, 0xB1, 0x65, 0xB1, 0xB2, 0x4E, 
0xDD,
-                                    0xAA, 0x47, 0xDA, 0xE2, 0xEE, 0x68, 0x9D, 
0xD6 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( 
"com.sun.star.comp.Writer.GlobalDocument" ) )
-        {
-            int[] pTempClassID = { 0xB2, 0x1A, 0x0A, 0x7C, 0xE4, 0x03, 0x41, 
0xFE,
-                                    0x95, 0x62, 0xBD, 0x13, 0xEA, 0x6F, 0x15, 
0xA0 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( "com.sun.star.comp.Writer.WebDocument" 
) )
-        {
-            int[] pTempClassID = { 0xA8, 0xBB, 0xA6, 0x0C, 0x7C, 0x60, 0x45, 
0x50,
-                                    0x91, 0xCE, 0x39, 0xC3, 0x90, 0x3F, 0xAC, 
0x5E };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( 
"com.sun.star.comp.Calc.SpreadsheetDocument" ) )
-        {
-            int[] pTempClassID = { 0x47, 0xBB, 0xB4, 0xCB, 0xCE, 0x4C, 0x4E, 
0x80,
-                                    0xA5, 0x91, 0x42, 0xD9, 0xAE, 0x74, 0x95, 
0x0F };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( 
"com.sun.star.comp.Draw.PresentationDocument" ) )
-        {
-            int[] pTempClassID = { 0x91, 0x76, 0xE4, 0x8A, 0x63, 0x7A, 0x4D, 
0x1F,
-                                    0x80, 0x3B, 0x99, 0xD9, 0xBF, 0xAC, 0x10, 
0x47 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( 
"com.sun.star.comp.Draw.DrawingDocument" ) )
-        {
-            int[] pTempClassID = { 0x4B, 0xAB, 0x89, 0x70, 0x8A, 0x3B, 0x45, 
0xB3,
-                                    0x99, 0x1C, 0xCB, 0xEE, 0xAC, 0x6B, 0xD5, 
0xE3 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( 
"com.sun.star.comp.Math.FormulaDocument" ) )
-        {
-            int[] pTempClassID = { 0x07, 0x8B, 0x7A, 0xBA, 0x54, 0xFC, 0x45, 
0x7F,
-                                    0x85, 0x51, 0x61, 0x47, 0xE7, 0x76, 0xA9, 
0x97 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-        else if ( aServiceName.equals( "BitmapImage" ) )
-        {
-            int[] pTempClassID = { 0xD3, 0xE3, 0x4B, 0x21, 0x9D, 0x75, 0x10, 
0x1A,
-                                    0x8C, 0x3D, 0x00, 0xAA, 0x00, 0x1A, 0x16, 
0x52 };
-            for ( int ind = 0; ind < 16; ind++ )
-                pClassID[ind] = (byte)pTempClassID[ind];
-        }
-
-        if ( pClassID != null )
-        {
-            // create embedded object based on the class ID
-            try {
-                Object oEmbedCreator = m_xServiceFactory.createInstance( 
"com.sun.star.embed.EmbeddedObjectCreator" );
-                XEmbedObjectCreator xEmbedCreator = 
(XEmbedObjectCreator)UnoRuntime.queryInterface(
-                                                                               
         XEmbedObjectCreator.class,
-                                                                               
         oEmbedCreator );
-                if ( xEmbedCreator != null )
-                {
-                    Object oEmbObj = xEmbedCreator.createInstanceInitNew( 
pClassID,
-                                                                        "Dummy 
name",
-                                                                        
m_xStorage,
-                                                                        
"EmbedSub",
-                                                                        new 
PropertyValue[0] );
-                    xEmbObj = (XEmbeddedObject)UnoRuntime.queryInterface( 
XEmbeddedObject.class, oEmbObj );
-                }
-                else
-                    JOptionPane.showMessageDialog( m_aFrame,
-                                                   "Can't create 
EmbedCreator!",
-                                                   "Error:",
-                                                   JOptionPane.ERROR_MESSAGE );
-            }
-            catch( Exception e )
-            {
-                JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
createInstanceInitNew():", JOptionPane.ERROR_MESSAGE );
-            }
-        }
-        else
-            JOptionPane.showMessageDialog( m_aFrame, "Can't retrieve class 
ID!", "Error:", JOptionPane.ERROR_MESSAGE );
-
-        return xEmbObj;
-    }
-
-    public XEmbeddedObject createLinkObject( String aLinkURL )
-    {
-        XEmbeddedObject xEmbObj = null;
-
-        try {
-            Object oLinkCreator = m_xServiceFactory.createInstance( 
"com.sun.star.embed.EmbeddedObjectCreator" );
-            XLinkCreator xLinkCreator = 
(XLinkCreator)UnoRuntime.queryInterface(
-                                                                               
     XLinkCreator.class,
-                                                                               
     oLinkCreator );
-            if ( xLinkCreator != null )
-            {
-                PropertyValue[] aMedDescr = { new PropertyValue(), new 
PropertyValue() };
-                aMedDescr[0].Name = "URL";
-                aMedDescr[0].Value = (Object) aLinkURL;
-                aMedDescr[1].Name = "ReadOnly";
-                aMedDescr[1].Value = (Object) Boolean.FALSE;
-                Object oEmbObj = xLinkCreator.createInstanceLink( m_xStorage, 
"EmbedSub", aMedDescr, new PropertyValue[0] );
-                xEmbObj = (XEmbeddedObject)UnoRuntime.queryInterface( 
XEmbeddedObject.class, oEmbObj );
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                               "Can't create LinkCreator!",
-                                               "Error:",
-                                               JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
createLinkObject():", JOptionPane.ERROR_MESSAGE );
-        }
-
-
-        return xEmbObj;
-    }
-
-
-    public XEmbeddedObject loadEmbedObject( String aFileURI )
-    {
-        XEmbeddedObject xEmbObj = null;
-        try {
-            Object oEmbedCreator = m_xServiceFactory.createInstance( 
"com.sun.star.embed.EmbeddedObjectCreator" );
-            XEmbedObjectCreator xEmbedCreator = 
(XEmbedObjectCreator)UnoRuntime.queryInterface(
-                                                                               
     XEmbedObjectCreator.class,
-                                                                               
     oEmbedCreator );
-            if ( xEmbedCreator != null )
-            {
-                PropertyValue[] aMedDescr = { new PropertyValue(), new 
PropertyValue() };
-                aMedDescr[0].Name = "URL";
-                aMedDescr[0].Value = (Object) aFileURI;
-                aMedDescr[1].Name = "ReadOnly";
-                aMedDescr[1].Value = (Object) Boolean.FALSE;
-                Object oEmbObj = 
xEmbedCreator.createInstanceInitFromMediaDescriptor( m_xStorage,
-                                                                               
     "EmbedSub",
-                                                                               
     aMedDescr,
-                                                                               
     new PropertyValue[0] );
-                xEmbObj = (XEmbeddedObject)UnoRuntime.queryInterface( 
XEmbeddedObject.class, oEmbObj );
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                               "Can't create EmbedFactory!",
-                                               "Error:",
-                                               JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
loadEmbedObject():", JOptionPane.ERROR_MESSAGE );
-        }
-
-        return xEmbObj;
-    }
-
-    public void clearObjectAndStorage()
-    {
-        synchronized( m_oImageLock )
-        {
-            m_aImage = null;
-        }
-
-        m_nXScaling = 1;
-        m_nYScaling = 1;
-        m_nXPixelSize = 1;
-        m_nYPixelSize = 1;
-
-        m_bOwnFile = false;
-
-        m_aLinkURI = null;
-        m_bLinkObj = false;
-
-        if ( m_xEmbedObj != null )
-        {
-            try {
-                XCloseable xClose = (XCloseable)UnoRuntime.queryInterface( 
XCloseable.class, m_xEmbedObj );
-                if ( xClose != null )
-                    xClose.close( true );
-            }
-            catch ( Exception ex )
-            {}
-            m_xEmbedObj = null;
-        }
-
-        if ( m_xStorage != null )
-        {
-            try {
-                XComponent xComponent = (XComponent)UnoRuntime.queryInterface( 
XComponent.class, m_xStorage );
-                if ( xComponent != null )
-                    xComponent.dispose();
-            }
-            catch ( Exception ex )
-            {}
-            m_xStorage = null;
-        }
-    }
-
-    public XStorage createTempStorage()
-    {
-        XStorage xTempStorage = null;
-
-        try {
-            Object oStorageFactory = m_xServiceFactory.createInstance( 
"com.sun.star.embed.StorageFactory" );
-            XSingleServiceFactory xStorageFactory = 
(XSingleServiceFactory)UnoRuntime.queryInterface(
-                                                                               
         XSingleServiceFactory.class,
-                                                                               
         oStorageFactory );
-            if ( xStorageFactory != null )
-            {
-                Object oStorage = xStorageFactory.createInstance();
-                xTempStorage = (XStorage)UnoRuntime.queryInterface( 
XStorage.class, oStorage );
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                                "Can't create StorageFactory!",
-                                                "Error:",
-                                                JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
createTempStorage():", JOptionPane.ERROR_MESSAGE );
-        }
-
-        return xTempStorage;
-    }
-
-    public void saveObjectAsFileURI( String aFileURI )
-    {
-        try {
-            Object oStorageFactory = m_xServiceFactory.createInstance( 
"com.sun.star.embed.StorageFactory" );
-            XSingleServiceFactory xStorageFactory = 
(XSingleServiceFactory)UnoRuntime.queryInterface(
-                                                                               
         XSingleServiceFactory.class,
-                                                                               
         oStorageFactory );
-            if ( xStorageFactory != null )
-            {
-                XEmbedPersist xPersist = 
(XEmbedPersist)UnoRuntime.queryInterface( XEmbedPersist.class, m_xEmbedObj );
-                if ( xPersist != null )
-                {
-                    Object aArgs[] = new Object[2];
-                    aArgs[0] = aFileURI;
-                    aArgs[1] = Integer.valueOf( ElementModes.ELEMENT_READWRITE 
);
-
-                    Object oStorage = 
xStorageFactory.createInstanceWithArguments( aArgs );
-                    XStorage xTargetStorage = 
(XStorage)UnoRuntime.queryInterface( XStorage.class, oStorage );
-
-                    PropertyValue aProps[] = { new PropertyValue() };
-                    aProps[0].Name = "StoreVisualReplacement";
-                    aProps[0].Value = Boolean.valueOf( m_bStoreVisRepl );
-
-                    xPersist.storeAsEntry( xTargetStorage, "EmbedSub", new 
PropertyValue[0], aProps );
-                    xPersist.saveCompleted( true );
-
-                    // the object must be already based on new storage
-                    XComponent xComponent = 
(XComponent)UnoRuntime.queryInterface( XComponent.class, m_xStorage );
-                    xComponent.dispose();
-
-                    m_xStorage = xTargetStorage;
-                    m_bOwnFile = true;
-
-                    XTransactedObject xTransact = 
(XTransactedObject)UnoRuntime.queryInterface( XTransactedObject.class,
-                                                                               
             m_xStorage );
-                    if ( xTransact != null )
-                        xTransact.commit();
-                }
-                else
-                    JOptionPane.showMessageDialog( m_aFrame, "No 
XEmbedPersist!", "Error:", JOptionPane.ERROR_MESSAGE );
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                                "Can't create StorageFactory!",
-                                                "Error:",
-                                                JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
saveStorageToFileURI():", JOptionPane.ERROR_MESSAGE );
-        }
-
-    }
-
-    public void loadFileURI( String aFileURI )
-    {
-        try
-        {
-            Object oStorageFactory = m_xServiceFactory.createInstance( 
"com.sun.star.embed.StorageFactory" );
-            XSingleServiceFactory xStorageFactory = 
(XSingleServiceFactory)UnoRuntime.queryInterface(
-                                                                               
         XSingleServiceFactory.class,
-                                                                               
         oStorageFactory );
-            Object aArgs[] = new Object[2];
-            aArgs[0] = aFileURI;
-            aArgs[1] = Integer.valueOf( ElementModes.ELEMENT_READWRITE );
-
-            Object oStorage = xStorageFactory.createInstanceWithArguments( 
aArgs );
-            XStorage xTargetStorage = (XStorage)UnoRuntime.queryInterface( 
XStorage.class, oStorage );
-
-            Object oEmbedCreator = m_xServiceFactory.createInstance( 
"com.sun.star.embed.EmbeddedObjectCreator" );
-            XEmbedObjectCreator xEmbedCreator = 
(XEmbedObjectCreator)UnoRuntime.queryInterface(
-                                                                               
     XEmbedObjectCreator.class,
-                                                                               
     oEmbedCreator );
-
-            XNameAccess xNameAccess = (XNameAccess)UnoRuntime.queryInterface( 
XNameAccess.class,
-                                                                            
xTargetStorage );
-            if ( xNameAccess == null )
-            {
-                JOptionPane.showMessageDialog( m_aFrame, "No XNameAccess!", 
"Error:", JOptionPane.ERROR_MESSAGE );
-                return;
-            }
-
-            Object oEmbObj = null;
-            if ( xNameAccess.hasByName( "LinkName" ) && 
xTargetStorage.isStreamElement( "LinkName" ) )
-            {
-            }
-            else
-                oEmbObj = xEmbedCreator.createInstanceInitFromEntry( 
xTargetStorage,
-                                                                    "EmbedSub",
-                                                                    false,
-                                                                    new 
PropertyValue[0] );
-
-            m_xEmbedObj = (XEmbeddedObject)UnoRuntime.queryInterface( 
XEmbeddedObject.class, oEmbObj );
-
-            if ( m_xEmbedObj != null )
-            {
-                m_xStorage = xTargetStorage;
-                m_bOwnFile = true;
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                               "Can't create EmbedObject from 
storage!",
-                                               "Error:",
-                                               JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
loadFileURI():", JOptionPane.ERROR_MESSAGE );
-        }
-    }
-
-    public void storeLinkToStorage()
-    {
-        if ( m_xStorage != null && m_bLinkObj )
-        {
-            try {
-                XStream xLinkStream = m_xStorage.openStreamElement( 
"LinkName", ElementModes.ELEMENT_WRITE );
-
-                if ( xLinkStream != null )
-                {
-                    XOutputStream xLinkOutStream = 
xLinkStream.getOutputStream();
-                    XTruncate xTruncate = (XTruncate) 
UnoRuntime.queryInterface( XTruncate.class,
-                                                                               
  xLinkOutStream );
-                    if ( xLinkOutStream != null && xTruncate != null )
-                    {
-                        xTruncate.truncate();
-
-                        char[] aLinkChar = m_aLinkURI.toCharArray();
-                        byte[] aLinkBytes = new byte[ aLinkChar.length ];
-                        for ( int ind = 0; ind < aLinkChar.length; ind++ )
-                            aLinkBytes[ind] = (byte)aLinkChar[ind];
-
-                        xLinkOutStream.writeBytes( aLinkBytes );
-                        xLinkOutStream.closeOutput();
-
-                        XComponent xComponent = (XComponent) 
UnoRuntime.queryInterface( XComponent.class,
-                                                                               
         xLinkStream );
-                        if ( xComponent != null )
-                            xComponent.dispose();
-                    }
-                    else
-                        JOptionPane.showMessageDialog( m_aFrame,
-                                                        "The substream can not 
be truncated or written!",
-                                                        "Error:",
-                                                        
JOptionPane.ERROR_MESSAGE );
-
-                }
-                else
-                    JOptionPane.showMessageDialog( m_aFrame,
-                                                    "Can't create/open 
substream!",
-                                                    "Error:",
-                                                    JOptionPane.ERROR_MESSAGE 
);
-            }
-            catch( Exception e )
-            {
-                JOptionPane.showMessageDialog( m_aFrame,
-                                            e,
-                                            "Exception in storeLinkToStorage:",
-                                            JOptionPane.ERROR_MESSAGE );
-
-            }
-        }
-    }
-
-    public void storeLinkAsFileURI( String aFileURI )
-    {
-        try {
-            Object oStorageFactory = m_xServiceFactory.createInstance( 
"com.sun.star.embed.StorageFactory" );
-            XSingleServiceFactory xStorageFactory = 
(XSingleServiceFactory)UnoRuntime.queryInterface(
-                                                                               
         XSingleServiceFactory.class,
-                                                                               
         oStorageFactory );
-            if ( xStorageFactory != null )
-            {
-                Object aArgs[] = new Object[2];
-                aArgs[0] = aFileURI;
-                aArgs[1] = Integer.valueOf( ElementModes.ELEMENT_READWRITE );
-
-                Object oStorage = xStorageFactory.createInstanceWithArguments( 
aArgs );
-                XStorage xTargetStorage = (XStorage)UnoRuntime.queryInterface( 
XStorage.class, oStorage );
-
-                XComponent xComponent = (XComponent)UnoRuntime.queryInterface( 
XComponent.class, m_xStorage );
-                xComponent.dispose();
-
-                m_xStorage = xTargetStorage;
-                m_bOwnFile = true;
-
-                storeLinkToStorage();
-
-                XTransactedObject xTransact = 
(XTransactedObject)UnoRuntime.queryInterface( XTransactedObject.class,
-                                                                               
             m_xStorage );
-                if ( xTransact != null )
-                    xTransact.commit();
-            }
-            else
-                JOptionPane.showMessageDialog( m_aFrame,
-                                                "Can't create StorageFactory!",
-                                                "Error:",
-                                                JOptionPane.ERROR_MESSAGE );
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
saveStorageToFileURI():", JOptionPane.ERROR_MESSAGE );
-        }
-    }
-
-    public String getValidURL( String sFileURL )
-    {
-        // m_xTransformer must be set!
-        URL[] aURLs = { new URL() };
-        aURLs[0].Complete = sFileURL;
-
-        try {
-            if ( !m_xTransformer.parseSmart( aURLs, "" ) )
-                throw new Exception();
-        }
-        catch( Exception e )
-        {
-            JOptionPane.showMessageDialog( m_aFrame, e, "Exception in 
getValidURL():", JOptionPane.ERROR_MESSAGE );
-        }
-
-        return aURLs[0].Complete;
-    }
-
-    public void disposeObject()
-    {
-        // TODO:
-        // usage of object, storage and bitmap painter should be locked
-        // but since possibility of race condition is very low
-        // it is not really required for testing application
-
-        clearObjectAndStorage();
-
-        if ( m_aBitmapPainter != null )
-        {
-            m_aBitmapPainter.disconnectListener();
-            m_aBitmapPainter = null;
-        }
-    }
-}
-
diff --git a/embeddedobj/test/Container1/PaintThread.java 
b/embeddedobj/test/Container1/PaintThread.java
deleted file mode 100644
index f7eb63ef2735..000000000000
--- a/embeddedobj/test/Container1/PaintThread.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package embeddedobj.test;
-
-import java.awt.*;
-import java.applet.*;
-import java.awt.event.*;
-import java.net.*;
-import java.io.*;
-import java.lang.Thread;
-
-import com.sun.star.awt.XBitmap;
-import com.sun.star.awt.XDevice;
-import com.sun.star.awt.XDisplayBitmap;
-import com.sun.star.awt.XGraphics;
-import com.sun.star.awt.XWindow;
-import com.sun.star.awt.XWindowPeer;
-import com.sun.star.awt.XToolkit;
-import com.sun.star.awt.XSystemChildFactory;
-import com.sun.star.awt.WindowDescriptor;
-import com.sun.star.awt.WindowClass;
-import com.sun.star.awt.WindowAttribute;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.lang.XMultiServiceFactory;
-
-class PaintThread extends java.lang.Thread
-{
-    private XWindow m_xWindow;
-    private XBitmap m_xBitmap;
-    private com.sun.star.awt.Rectangle m_aRect;
-
-    private Object m_oRequestsLock;
-    private boolean m_bToPaint = false;
-
-    private boolean m_bDisposed = false;
-
-    public static boolean interceptedRects( com.sun.star.awt.Rectangle aRect1, 
com.sun.star.awt.Rectangle aRect2 )
-    {
-        return ( ( aRect1.X <= aRect2.X && aRect2.X <= aRect1.X + aRect1.Width
-                || aRect1.X <= aRect2.X + aRect2.Width && aRect2.X + 
aRect2.Width <= aRect1.X + aRect1.Width
-                || aRect2.X <= aRect1.X && aRect1.X <= aRect2.X + aRect2.Width
-                || aRect2.X <= aRect1.X + aRect1.Width && aRect1.X + 
aRect1.Width <= aRect2.X + aRect2.Width )
-              && ( aRect1.Y <= aRect2.Y && aRect2.Y <= aRect1.Y + aRect1.Height
-                || aRect1.Y <= aRect2.Y + aRect2.Height && aRect2.Y + 
aRect2.Height <= aRect1.Y + aRect1.Height
-                || aRect2.Y <= aRect1.Y && aRect1.Y <= aRect2.Y + aRect2.Height
-                || aRect2.Y <= aRect1.Y + aRect1.Height && aRect1.Y + 
aRect1.Height <= aRect2.Y + aRect2.Height ) );
-    }
-
-    public PaintThread( XWindow xWindow )
-    {
-        m_oRequestsLock = new Object();
-        m_xWindow = xWindow;
-    }
-
-    public void setPaintRequest( XBitmap xBitmap, com.sun.star.awt.Rectangle 
aRect, com.sun.star.awt.Rectangle aClip )
-    {
-        synchronized( m_oRequestsLock )
-        {
-            if ( PaintThread.interceptedRects( aRect, aClip ) )
-            {
-                m_xBitmap = xBitmap;
-                m_aRect = aRect;
-                m_bToPaint = true;
-            }
-        }
-    }
-
-    public void disposeThread()
-    {
-        m_bDisposed = true;
-    }
-
-    public void run()
-    {
-        while( !m_bDisposed )
-        {
-            try {
-                Thread.sleep( 200 );
-            } catch( Exception e ) {}
-
-            XBitmap xBitmap = null;
-            com.sun.star.awt.Rectangle aRect = null;
-            boolean bPaint = false;
-
-            synchronized( m_oRequestsLock )
-            {
-                if ( m_bToPaint )
-                {
-                    xBitmap = m_xBitmap;
-                    aRect = m_aRect;
-                    m_bToPaint = false;
-                    bPaint = true;
-                }
-            }
-
-            if ( bPaint )
-            {
-                XDevice xDevice = (XDevice)UnoRuntime.queryInterface( 
XDevice.class, m_xWindow );
-                if ( xDevice != null )
-                {
-                    XGraphics xGraphics = xDevice.createGraphics();
-                    if ( xBitmap != null )
-                    {
-                        XDisplayBitmap xDisplayBitmap = 
xDevice.createDisplayBitmap( xBitmap );
-
-                        com.sun.star.awt.Size aSize = xBitmap.getSize();
-                        xGraphics.draw( xDisplayBitmap, 0, 0, aSize.Width, 
aSize.Height,
-                                                    aRect.X, aRect.Y, 
aRect.Width, aRect.Height );
-                    }
-
-                    xGraphics.drawLine( aRect.X - 1, aRect.Y - 1,
-                                        aRect.X + aRect.Width + 1, aRect.Y - 1 
);
-                    xGraphics.drawLine( aRect.X + aRect.Width + 1, aRect.Y - 1,
-                                        aRect.X + aRect.Width + 1, aRect.Y + 
aRect.Height + 1 );
-                    xGraphics.drawLine( aRect.X + aRect.Width + 1, aRect.Y + 
aRect.Height + 1,
-                                        aRect.X - 1, aRect.Y + aRect.Height + 
1 );
-                    xGraphics.drawLine( aRect.X - 1, aRect.Y + aRect.Height + 
1,
-                                        aRect.X - 1, aRect.Y - 1 );
-                }
-            }
-        }
-    }
-};
-
diff --git a/embeddedobj/test/Container1/WindowHelper.java 
b/embeddedobj/test/Container1/WindowHelper.java
deleted file mode 100644
index 66de646ddb57..000000000000
--- a/embeddedobj/test/Container1/WindowHelper.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package embeddedobj.test;
-
-import java.awt.*;
-import java.applet.*;
-import java.awt.event.*;
-import java.net.*;
-import java.io.*;
-
-import com.sun.star.awt.XBitmap;
-import com.sun.star.awt.XWindow;
-import com.sun.star.awt.XWindowPeer;
-import com.sun.star.awt.XToolkit;
-import com.sun.star.awt.XSystemChildFactory;
-import com.sun.star.awt.WindowDescriptor;
-import com.sun.star.awt.WindowClass;
-import com.sun.star.awt.WindowAttribute;
-import com.sun.star.awt.VclWindowPeerAttribute;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.Any;
-
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XSingleServiceFactory;
-
-class WindowHelper {
-
-    public static XWindow createWindow( XMultiServiceFactory xFactory, 
NativeView aParent, java.awt.Rectangle aBounds )
-    {
-        XWindow  xWindow = null;
-        XToolkit    xToolkit = null;
-
-        // get access to toolkit of remote office to create the container 
window of new target frame
-        try{
-            xToolkit = (XToolkit)UnoRuntime.queryInterface( XToolkit.class,
-                                                            
xFactory.createInstance("com.sun.star.awt.Toolkit") );
-        }
-        catch( Exception ex )
-        {
-            return null;
-        }
-
-        XSystemChildFactory xChildFactory = 
(XSystemChildFactory)UnoRuntime.queryInterface(
-                XSystemChildFactory.class,
-                xToolkit);
-
-        try
-        {
-            XWindowPeer xPeer = null;
-            Integer nHandle = aParent.getHWND();
-            short   nSystem = (short)aParent.getNativeWindowSystemType();
-            byte[]  lProcID = new byte[0];
-/*
-            try {
-                xPeer = xChildFactory.createSystemChild((Object)nHandle, 
lProcID, nSystem);
-            }
-            catch( Exception e )
-            {}
-*/
-            if (xPeer==null)
-            {
-                JavaWindowPeerFake aWrapper = new JavaWindowPeerFake(aParent);
-
-                XWindowPeer xParentPeer = 
(XWindowPeer)UnoRuntime.queryInterface(
-                        XWindowPeer.class,
-                        aWrapper);
-
-                WindowDescriptor aDescriptor = new WindowDescriptor();
-                aDescriptor.Type = WindowClass.TOP;
-                aDescriptor.WindowServiceName = "workwindow";
-                aDescriptor.ParentIndex = 1;
-                aDescriptor.Parent = xParentPeer;
-                aDescriptor.Bounds = new com.sun.star.awt.Rectangle( 
(int)aBounds.getX(),
-                                                                     
(int)aBounds.getY(),
-                                                                     
(int)aBounds.getWidth(),
-                                                                     
(int)aBounds.getHeight() );
-
-                System.out.println( "The rectangle for vcl window is:
x = " + (int)aBounds.getX()
-                                                                + "; y = " + 
(int)aBounds.getY()
-                                                                + "; width = " 
+ (int)aBounds.getWidth()
-                                                                + "; height = 
" + (int)aBounds.getHeight() );
-
-                if (nSystem == com.sun.star.lang.SystemDependent.SYSTEM_WIN32)
-                    aDescriptor.WindowAttributes = WindowAttribute.SHOW;
-                else
-                    aDescriptor.WindowAttributes = 
WindowAttribute.SYSTEMDEPENDENT;
-
-                aDescriptor.WindowAttributes |= 
VclWindowPeerAttribute.CLIPCHILDREN;
-
-                xPeer = xToolkit.createWindow( aDescriptor );
-            }
-
-            xWindow = (XWindow)UnoRuntime.queryInterface( XWindow.class, 
xPeer);
-            if ( xWindow != null )
-                xWindow.setPosSize( (int)aBounds.getX(),
-                                    (int)aBounds.getY(),
-                                    (int)aBounds.getWidth(),
-                                    (int)aBounds.getHeight(),
-                                    com.sun.star.awt.PosSize.POSSIZE );
-        }
-        catch( Exception ex1 )
-        {
-            System.out.println( "Exception on VCL window creation: " + ex1 );
-            xWindow = null;
-        }
-
-        return xWindow;
-    }
-
-    public static XBitmap getVCLBitmapFromBytes( XMultiServiceFactory 
xFactory, Object aAny )
-    {
-        if ( !AnyConverter.isArray( aAny ) )
-            throw new com.sun.star.uno.RuntimeException();
-
-        Object[] aArgs = new Object[1];
-        aArgs[0] = aAny;
-        XBitmap xResult = null;
-
-        try {
-            XSingleServiceFactory xBitmapFactory = 
(XSingleServiceFactory)UnoRuntime.queryInterface(
-                    XSingleServiceFactory.class,
-                    xFactory.createInstance( 
"com.sun.star.embed.BitmapCreator" ) );
-
-            xResult = (XBitmap)UnoRuntime.queryInterface(
-                    XBitmap.class,
-                    xBitmapFactory.createInstanceWithArguments( aArgs ) );
-        }
-        catch( Exception e )
-        {
-            System.out.println( "Could not create VCL bitmap based on 
sequence," );
-            System.out.println( "exception: " + e );
-        }
-
-        return xResult;
-    }
-};
-

Reply via email to