com.jogamp.nativewindow.swt

## Class SWTAccessor

- java.lang.Object
- - com.jogamp.nativewindow.swt.SWTAccessor

-     public class SWTAccessor
      extends Object

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static boolean` | `isOSX`
    `static boolean` | `isWindows`
    `static boolean` | `isX11`
    `static boolean` | `isX11GTK`
    `static Class<?>` | `OS_gtk_class`
    `static VersionNumber` | `OS_gtk_version`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SWTAccessor()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static long` | `createCompatibleGDKChildWindow(org.eclipse.swt.widgets.Control swtControl, int visualID, int width, int height)`
    `static long` | `createCompatibleX11ChildWindow(AbstractGraphicsScreen screen, org.eclipse.swt.widgets.Control swtControl, int visualID, int width, int height)`
    `static void` | `destroyGDKWindow(long gdkWindow)`
    `static void` | `destroyX11Window(AbstractGraphicsDevice device, long x11Window)`
    `static void` | `disposeGC(org.eclipse.swt.widgets.Control swtControl, long gc, org.eclipse.swt.graphics.GCData gcData)`
    `static void` | `focusGDKWindow(long gdkWindow)`
    `static long` | `gdk_widget_get_window(long handle)`
    `static long` | `gdk_window_get_xdisplay(long window)`
    `static long` | `gdk_window_get_xwindow(long window)`
    `static void` | `gdk_window_set_back_pixmap(long window, long pixmap, boolean parent_relative)`
    `static AbstractGraphicsDevice` | `getDevice(org.eclipse.swt.widgets.Control swtControl)`
    `static long` | `getHandle(org.eclipse.swt.widgets.Control swtControl)`
    `static int` | `getNativeVisualID(AbstractGraphicsDevice device, long windowHandle)`
    `static AbstractGraphicsScreen` | `getScreen(AbstractGraphicsDevice device, int screen)`
    `static long` | `getWindowHandle(org.eclipse.swt.widgets.Control swtControl)`
    `static VersionNumber` | `GTK_VERSION()`
    `static void` | `invoke(boolean wait, Runnable runnable)` Runs the specified action in an SWT compatible thread, which is: Mac OSX Main Thread: Run on OSX UI main thread.
    `static void` | `invoke(org.eclipse.swt.widgets.Display display, boolean wait, Runnable runnable)` Runs the specified action on the SWT UI thread.
    `static boolean` | `isUsingLongHandles()`
    `static long` | `newGC(org.eclipse.swt.widgets.Control swtControl, org.eclipse.swt.graphics.GCData gcData)`
    `static void` | `resizeGDKWindow(org.eclipse.swt.graphics.Rectangle clientArea, long gdkWindow)`
    `static void` | `resizeX11Window(AbstractGraphicsDevice device, org.eclipse.swt.graphics.Rectangle clientArea, long x11Window)`
    `static void` | `setRealized(org.eclipse.swt.widgets.Control swtControl, boolean realize)`
    `static void` | `showGDKWindow(long gdkWindow)`
    `static boolean` | `useX11GTK()`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### isOSX

          public static final boolean isOSX

    - #### isWindows

          public static final boolean isWindows

    - #### isX11

          public static final boolean isX11

    - #### isX11GTK

          public static final boolean isX11GTK

    - #### OS_gtk_class

          public static final Class<?> OS_gtk_class

    - #### OS_gtk_version

          public static final VersionNumber OS_gtk_version

  - ### Constructor Detail

    - #### SWTAccessor

          public SWTAccessor()

  - ### Method Detail

    - #### isUsingLongHandles

          public static boolean isUsingLongHandles()

    - #### useX11GTK

          public static boolean useX11GTK()

    - #### GTK_VERSION

          public static VersionNumber GTK_VERSION()

    - #### gdk_widget_get_window

          public static long gdk_widget_get_window(long handle)

    - #### gdk_window_get_xdisplay

          public static long gdk_window_get_xdisplay(long window)

    - #### gdk_window_get_xwindow

          public static long gdk_window_get_xwindow(long window)

    - #### gdk_window_set_back_pixmap

          public static void gdk_window_set_back_pixmap(long window,
                                        long pixmap,
                                        boolean parent_relative)

    - #### getHandle

          public static long getHandle(org.eclipse.swt.widgets.Control swtControl)
                                throws NativeWindowException

      Parameters:
        `swtControl` - the SWT Control to retrieve the native widget-handle from
      Returns:
        the native widget-handle
      Throws:
        `NativeWindowException` - if the widget handle is null

    - #### setRealized

          public static void setRealized(org.eclipse.swt.widgets.Control swtControl,
                         boolean realize)
                                  throws NativeWindowException

      Throws:
        `NativeWindowException`

    - #### getDevice

          public static AbstractGraphicsDevice getDevice(org.eclipse.swt.widgets.Control swtControl)
                                                  throws NativeWindowException,
                                                         UnsupportedOperationException

      Parameters:
        `swtControl` - the SWT Control to retrieve the native device handle from
      Returns:
        the AbstractGraphicsDevice w/ the native device handle
      Throws:
        `NativeWindowException` - if the widget handle is null
        `UnsupportedOperationException` - if the windowing system is not supported

    - #### getScreen

          public static AbstractGraphicsScreen getScreen(AbstractGraphicsDevice device,
                                         int screen)

      Parameters:
        `device` -
        `screen` - -1 is default screen of the given device, e.g. maybe 0 or determined by native API. >= 0 is specific screen
      Returns:

    - #### getNativeVisualID

          public static int getNativeVisualID(AbstractGraphicsDevice device,
                              long windowHandle)

    - #### getWindowHandle

          public static long getWindowHandle(org.eclipse.swt.widgets.Control swtControl)
                                      throws NativeWindowException,
                                             UnsupportedOperationException

      Parameters:
        `swtControl` - the SWT Control to retrieve the native window handle from
      Returns:
        the native window handle
      Throws:
        `NativeWindowException` - if the widget handle is null
        `UnsupportedOperationException` - if the windowing system is not supported

    - #### newGC

          public static long newGC(org.eclipse.swt.widgets.Control swtControl,
                   org.eclipse.swt.graphics.GCData gcData)

    - #### disposeGC

          public static void disposeGC(org.eclipse.swt.widgets.Control swtControl,
                       long gc,
                       org.eclipse.swt.graphics.GCData gcData)

    - #### invoke

          public static void invoke(boolean wait,
                    Runnable runnable)

      Runs the specified action in an SWT compatible thread, which is:
      - Mac OSX
        - Main Thread: Run on OSX UI main thread. 'wait' is implemented on Java site via lock/wait on `RunnableTask` to not freeze OSX main thread.
      - Linux, Windows, ..
        - Current thread.
      See Also:
        `Platform.AWT_AVAILABLE`, `Platform.getOSType()`

    - #### invoke

          public static void invoke(org.eclipse.swt.widgets.Display display,
                    boolean wait,
                    Runnable runnable)

      Runs the specified action on the SWT UI thread.

      If `display` is disposed or the current thread is the SWT UI thread `invoke(boolean, Runnable)` is being used.

      See Also:
        `invoke(boolean, Runnable)`

    - #### createCompatibleX11ChildWindow

          public static long createCompatibleX11ChildWindow(AbstractGraphicsScreen screen,
                                            org.eclipse.swt.widgets.Control swtControl,
                                            int visualID,
                                            int width,
                                            int height)

    - #### resizeX11Window

          public static void resizeX11Window(AbstractGraphicsDevice device,
                             org.eclipse.swt.graphics.Rectangle clientArea,
                             long x11Window)

    - #### destroyX11Window

          public static void destroyX11Window(AbstractGraphicsDevice device,
                              long x11Window)

    - #### createCompatibleGDKChildWindow

          public static long createCompatibleGDKChildWindow(org.eclipse.swt.widgets.Control swtControl,
                                            int visualID,
                                            int width,
                                            int height)

    - #### showGDKWindow

          public static void showGDKWindow(long gdkWindow)

    - #### focusGDKWindow

          public static void focusGDKWindow(long gdkWindow)

    - #### resizeGDKWindow

          public static void resizeGDKWindow(org.eclipse.swt.graphics.Rectangle clientArea,
                             long gdkWindow)

    - #### destroyGDKWindow

          public static void destroyGDKWindow(long gdkWindow)

Copyright 2010 JogAmp Community.