diff options
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.java | 132 |
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); + } + +} |