javauis/m2g_qt/javasrc/com/nokia/microedition/m2g/Platform.java
changeset 57 59b3b4473dc8
parent 56 abc41079b313
child 64 0ea12c182930
--- a/javauis/m2g_qt/javasrc/com/nokia/microedition/m2g/Platform.java	Fri Jul 23 12:27:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,234 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-*
-*/
-/**
- * \file
- * \brief Target platform dependent Java module for Symbian.
- *
- */
-
-package com.nokia.microedition.m2g;
-import javax.microedition.lcdui.Graphics;
-import javax.microedition.lcdui.Image;
-import org.eclipse.swt.widgets.Display;
-
-import com.nokia.mj.impl.nokialcdui.LCDUIInvoker;
-import org.eclipse.swt.internal.extension.DisplayExtension;
-
-/**
- * Implements platform-dependent functionality. At the moment, this
- * includes native finalization and some helper methods for
- * synchronizing 2D and 3D rendering.
- */
-class Platform
-{
-    /**
-     * eSWT display for ui thread access
-     */
-    private static Display display = null;
-    private static boolean libraryLoaded = false;
-
-    //------------------------------------------------------------------
-    // Package private methods
-    //------------------------------------------------------------------
-
-    /**
-     * Executes given runnable in UI thread if caller thread is not UI thread
-     */
-    static void executeInUIThread(M2GRunnableQt obj)
-    {
-        if (display == null)
-        {
-            if (!uiThreadAvailable())
-            {
-                throw new Error("Ui thread not available");
-            }
-        }
-        if (display.isDisposed())
-        {
-            throw new Error("Display already disposed");
-        }
-
-        if (obj != null)
-        {
-            // If we are not in UI thread use display
-            if (Thread.currentThread() != display.getThread())
-            {
-                display.syncExec(obj);
-            }
-            else
-            {
-                // In this case we are in UI thread so just execute directly
-                obj.run();
-            }
-            // Check if any exceptions occured in execution
-            // and throw forward in caller thread
-            obj.checkAndThrow();
-        }
-    }
-
-    /**
-     * Check the UI thread / toolkit init status and store display if it is available
-     * @return true if either lcdui or eswt toolkit is initialized and ui thread is accessible
-     *              otherwise false
-     */
-    static boolean uiThreadAvailable()
-    {
-        if (display != null)
-        {
-            return true;
-        }
-        else
-        {
-            display = DisplayExtension.getDisplayInstance();
-						System.out.println("P-UI Thread not available Case" );			                    	
-						if (display == null)
-            {
-                return false;
-            }
-            else
-            {
-            		System.out.println("P-UI Thread available Case" );			                    	
-                // UI thread is available, so load native library if not already loaded
-                if (!libraryLoaded)
-                {
-                		System.out.println("P-UI Thread not available Case Javam2g loaded" );			                    	
-                    com.nokia.mj.impl.rt.support.Jvm.loadSystemLibrary("javam2g");
-                    libraryLoaded = true;
-                }
-                return true;
-            }
-        }
-    }
-
-    /**
-     * Registers an Object3D in the global handle-to-object map. The
-     * handle of the object must already be set at this point!
-     */
-//    static final void registerFinalizer(Object3D obj)
-//    {
-//        //heuristicGC();
-//    }
-//
-//    /**
-//     * Registers a Graphics3D object (not derived from Object3D) for
-//     * finalization.
-//     */
-//    static final void registerFinalizer(Graphics3D g3d)
-//    {
-//        //heuristicGC();
-//    }
-//
-//    /**
-//     * Registers an Interface object for finalization
-//     */
-//    static final void registerFinalizer(Interface m2G)
-//    {
-//    }
-//
-//    /**
-//     * Registers a Loader object for finalization
-//     */
-//    static final void registerFinalizer(Loader loader)
-//    {
-//    }
-//
-//    /**
-//     * Flushes all pending rendering to a Graphics context and blocks
-//     * until finished
-//     */
-//    static final void sync(Graphics g)
-//    {
-//        //ToolkitInvoker invoker = ToolkitInvoker.getToolkitInvoker();
-//        //invoker.toolkitSync(invoker.getToolkit());
-//    }
-//
-//    /**
-//     * Flushes all pending rendering to an Image object
-//     */
-//    static final void sync(Image img)
-//    {
-//        //ToolkitInvoker invoker = ToolkitInvoker.getToolkitInvoker();
-//        //invoker.toolkitSync(invoker.getToolkit());
-//    }
-//
-//    /**
-//     * Finalizes the native peer of an interface
-//     */
-//    static final native void finalizeInterface(int handle);
-//
-//    /**
-//     * Finalizes the native peer of an object
-//     * JCF: added this wrapper method so we could pass the toolkit handle to the native method.
-//     */
-    static final void finalizeObject(int handle)
-    {
-        try
-        {
-            final int finalHandle = handle;
-            executeInUIThread(
-                new M2GRunnableQt()
-            {
-                void doRun()
-                {
-                    _finalizeObject(finalHandle);
-                }
-            });
-        }
-        catch (Exception e)
-        {
-            // do nothing
-        }
-    }
-
-    /**
-     * Finalizes the native peer of an object associated with
-     * given Interface instance
-     */
-//    static final void finalizeObject(int handle, Interface aInterface)
-//    {
-//        try
-//        {
-//            final int finalHandle = handle;
-//            executeInUIThread(
-//                new M2GRunnable()
-//            {
-//                public void doRun()
-//                {
-//                    _finalizeObject(finalHandle);
-//                }
-//            });
-//        }
-//        catch (Exception e)
-//        {
-//            // do nothing
-//        }
-//    }
-
-
-    //------------------------------------------------------------------
-    // Private methods
-    //------------------------------------------------------------------
-
-    /**
-     * Trigger GC if minimum free memory limit has been exceeded in the native side
-     */
-    static final void heuristicGC()
-    {
-    }
-    private static final native void _finalizeObject(int handle);
-}
-