summaryrefslogtreecommitdiff
path: root/src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java')
-rw-r--r--src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java132
1 files changed, 132 insertions, 0 deletions
diff --git a/src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java b/src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java
new file mode 100644
index 0000000..7b9ac44
--- /dev/null
+++ b/src/plugins/android/src/com/motorola/studio/android/nativeos/NativeUIUtils.java
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2012 The Android Open Source Project
+ *
+ * Licensed 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
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.motorola.studio.android.nativeos;
+
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Composite;
+
+import com.motorola.studio.android.adt.SdkUtils;
+import com.motorola.studio.android.common.log.StudioLogger;
+
+public class NativeUIUtils
+{
+ private static INativeUI instance;
+
+ private NativeUIUtils()
+ {
+
+ }
+
+ public static INativeUI getInstance()
+ {
+ if (instance == null)
+ {
+ instance = (INativeUI) getClass("com.motorola.studio.android.nativeos.NativeUI");
+ }
+ return instance;
+ }
+
+ public static Object getClass(String nameClass)
+ {
+ try
+ {
+ return (Class.forName(nameClass)).newInstance();
+ }
+ catch (Exception ex)
+ {
+ StudioLogger.error(NativeUIUtils.class,
+ "Error resolving OS dependent class for native windows feature", ex);
+ return null;
+ }
+ }
+
+ public static String getDefaultCommandLine()
+ {
+ return getInstance().getDefaultCommandLine();
+ }
+
+ public static String getDefaultUseVnc()
+ {
+ return getInstance().getDefaultUseVnc();
+ }
+
+ public static long getWindowHandle(String avdName, int instancePort)
+ {
+ String windowName = SdkUtils.getEmulatorWindowName(avdName, instancePort);
+ return getInstance().getWindowHandle(windowName);
+ }
+
+ public static long getWindowProperties(long windowHandle)
+ {
+ return getInstance().getWindowProperties(windowHandle);
+ }
+
+ public static Point getWindowSize(long originalParentHandle, long windowHandle)
+ {
+ return getInstance().getWindowSize(originalParentHandle, windowHandle);
+ }
+
+ public static void hideWindow(long windowHandle)
+ {
+ getInstance().hideWindow(windowHandle);
+ }
+
+ public static boolean isWindowEnabled(long windowHandle)
+ {
+ return getInstance().isWindowEnabled(windowHandle);
+ }
+
+ public static void restoreWindow(long windowHandle)
+ {
+ getInstance().restoreWindow(windowHandle);
+ }
+
+ public static void sendNextLayoutCommand(long originalParent, long windowHandle)
+ {
+ getInstance().sendNextLayoutCommand(originalParent, windowHandle);
+ }
+
+ public static void setWindowFocus(long windowHandle)
+ {
+ getInstance().setWindowFocus(windowHandle);
+ }
+
+ public static long embedWindow(long windowHandle, Composite composite)
+ {
+ return getInstance().embedWindow(windowHandle, composite);
+ }
+
+ public static void unembedWindow(long windowHandle, long originalParent)
+ {
+ getInstance().unembedWindow(windowHandle, originalParent);
+ }
+
+ public static void setWindowProperties(long windowHandle, long originalProperties)
+ {
+ getInstance().setWindowProperties(windowHandle, originalProperties);
+ }
+
+ public static void setWindowStyle(long windowHandle)
+ {
+ getInstance().setWindowStyle(windowHandle);
+ }
+
+ public static void showWindow(long windowHandle)
+ {
+ getInstance().showWindow(windowHandle);
+ }
+
+}