Overview | Package | Class | Tree | Deprecated | Index | Help
PREV NEXT | FRAMES NO FRAMES

NativeWindow Protocol Specification Overview

See:
Description

Packages
javax.media.nativewindow | NativeWindow Protocol Specification Overview
javax.media.nativewindow.awt |
javax.media.nativewindow.egl |
javax.media.nativewindow.macosx |
javax.media.nativewindow.windows |
javax.media.nativewindow.x11 |

## NativeWindow Protocol Specification Overview

### Preface

This specification, an optional set of packages, describing a protocol for a native windowing interface binding to Java(TM).
Currently specified native windowing systems are:

- EGL/OpenKODE Windowing System
- X11 Windowing System
- Microsoft Windows
- Apple MacOSX
- Java's AWT

However, any other native windowing system may be added to the implementation, using a generic string identifier and an optional specialisation of:

- `AbstractGraphicsDevice`,
  Shall return the new string identifier with `getType()`
- `AbstractGraphicsScreen`
- `AbstractGraphicsConfiguration`

The implementor has to provide the following:

- The specialisation of the abstract class `NativeWindowFactory`
  shall be registered with `NativeWindowFactory.registerFactory(..)`.
- The specialisation of the abstract class `GraphicsConfigurationFactory`
  shall be registered with `GraphicsConfigurationFactory.registerFactory(..)`.

This protocol does not describe how to create native windows, but how to bind a native window to an implementation of `NativeWindow`.
However, an implementation of this protocol (e.g. `com.sun.javafx.newt`) may support the creation.

### Dependencies

This binding has dependencies to the following:

- Either of the following Java implementations:
  - Java SE 1.4 or later
  - Java ME CDC 1.1.2 (JSR 218) and Foundation Profile 1.1.2 (JSR 219)
    and either of the following java.nio implementations:
    - JSR239 java.nio subset
    - Java 1.4 java.nio implementation

### Package Structure

The packages defined by this specification include:

- The javax.media.nativewindow package
  This package contains Java bindings for a native windowing system.
  Subsequent packages contain marker type classes, containing native characteristics of the windowing system.

- The javax.media.nativewindow.awt package
  This sub package contains classes to cover the native characteristics of the AWT windowing system.
- The javax.media.nativewindow.x11 package
  This sub package contains classes to cover the native characteristics of the X11 windowing system.
- The javax.media.nativewindow.windows package
  This sub package contains classes to cover the native characteristics of the Windows windowing system.
- The javax.media.nativewindow.macosx package
  This sub package contains classes to cover the native characteristics of the MacOSX windowing system.
- The javax.media.nativewindow.egl package
  This sub package contains classes to cover the native characteristics of the EGL/OpenKODE windowing system.

### Factory Model

Running on a platform with a supported windowing system, the factory model shall be used to instantiate a native window, see `NativeWindowFactory`.
The implementor has to specialize All supported Regardless of the knowledge of the underly

### Revision History

- Early Draft Review, June 2009

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV NEXT | FRAMES NO FRAMES

Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.