public abstract class Screen extends Object
MonitorDevices representing their combined virtual size.
All values of this interface are represented in pixel units, if not stated otherwise.
Virtual viewport covers all MonitorDevices viewports and has it's origin in the top-left corner, and may not be at 0/0.| Modifier and Type | Field and Description |
|---|---|
static boolean |
DEBUG |
static int |
SCREEN_MODE_CHANGE_TIMEOUT
A 10s timeout for screen mode change.
|
| Constructor and Description |
|---|
Screen() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
addMonitorModeListener(MonitorModeListener sml) |
abstract int |
addReference()
|
abstract void |
createNative()
Manual trigger the native creation, if not done yet..
This is useful to be able to request the AbstractGraphicsScreen, via
getGraphicsScreen().Otherwise the abstract device won't be available before the dependent component (Window) is realized. |
abstract void |
destroy()
Manually trigger the destruction, incl.
|
boolean |
equals(Object obj)
return true if obj is of type Display and both FQN
getFQName() equals |
static int |
getActiveScreenNumber() |
static Collection<Screen> |
getAllScreens()
Returns the global screen collection
|
abstract Display |
getDisplay() |
static Screen |
getFirstScreenOf(Display display,
int idx,
int fromIndex) |
abstract String |
getFQName() |
abstract AbstractGraphicsScreen |
getGraphicsScreen() |
abstract int |
getHeight() |
abstract int |
getIndex() |
static Screen |
getLastScreenOf(Display display,
int idx,
int fromIndex) |
MonitorDevice |
getMainMonitor(RectangleImmutable r)
Returns the
MonitorDevice with the highest viewport
coverage of the given rectangle in window units. |
abstract List<MonitorDevice> |
getMonitorDevices()
Return a list of available
MonitorDevices. |
abstract List<MonitorMode> |
getMonitorModes()
Return a list of all
MonitorModes for all MonitorDevices. |
abstract int |
getReferenceCount() |
abstract RectangleImmutable |
getViewport()
See Coordinate System.
|
abstract RectangleImmutable |
getViewportInWindowUnits()
See Coordinate System.
|
abstract int |
getWidth() |
abstract int |
getX()
See Coordinate System.
|
abstract int |
getY()
See Coordinate System.
|
abstract int |
hashCode()
return precomputed hashCode from FQN
getFQName() |
abstract boolean |
isNativeValid() |
abstract void |
removeMonitorModeListener(MonitorModeListener sml) |
abstract int |
removeReference()
|
void |
unionOfMonitorViewports(Rectangle viewport,
Rectangle viewportInWindowUnits)
Calculates the union of all monitor's
viewport in pixel- and window units. |
public static final int SCREEN_MODE_CHANGE_TIMEOUT
public static final boolean DEBUG
public abstract int hashCode()
getFQName()public boolean equals(Object obj)
getFQName() equalspublic abstract void createNative()
throws NativeWindowException
AbstractGraphicsScreen, via
getGraphicsScreen().
This method is usually invoke by addReference()
This method invokes Display.addReference() after creating the native peer,
which will issue Display.createNative() if the reference count was 0.
NativeWindowException - if the native creation failed.public abstract void destroy()
This method is usually invoke by removeReference()
This method invokes Display.removeReference() after it's own destruction,
which will issue Display.destroy() if the reference count becomes 0.
public abstract boolean isNativeValid()
public abstract int getReferenceCount()
public abstract int addReference()
throws NativeWindowException
NativeWindowException - if the native creation failed.removeReference(),
#setDestroyWhenUnused(boolean),
#getDestroyWhenUnused()public abstract int removeReference()
addReference(),
#setDestroyWhenUnused(boolean),
#getDestroyWhenUnused()public abstract AbstractGraphicsScreen getGraphicsScreen()
public abstract int getIndex()
getDisplay().public abstract int getX()
public abstract int getY()
public abstract int getWidth()
public abstract int getHeight()
public abstract RectangleImmutable getViewport()
getViewportInWindowUnits()public abstract RectangleImmutable getViewportInWindowUnits()
getViewport()public abstract Display getDisplay()
public abstract String getFQName()
Display.getFQName() + getIndex().public abstract List<MonitorMode> getMonitorModes()
MonitorModes for all MonitorDevices.
The list is ordered in descending order,
see MonitorMode.compareTo(MonitorMode).
public abstract List<MonitorDevice> getMonitorDevices()
MonitorDevices.public final MonitorDevice getMainMonitor(RectangleImmutable r)
MonitorDevice with the highest viewport
coverage of the given rectangle in window units.
If no coverage is detected the first MonitorDevice is returned.
r - arbitrary rectangle in window unitspublic final void unionOfMonitorViewports(Rectangle viewport, Rectangle viewportInWindowUnits)
viewport in pixel- and window units.
Should be equal to getX(), getY(), getWidth() and getHeight(),
however, some native toolkits may choose a different virtual screen area.
viewport - storage for result in pixel units, maybe nullviewportInWindowUnits - storage for result in window units, maybe nullpublic abstract void addMonitorModeListener(MonitorModeListener sml)
sml - MonitorModeListener to be added for MonitorEventpublic abstract void removeMonitorModeListener(MonitorModeListener sml)
sml - MonitorModeListener to be removed from MonitorEventpublic static Screen getFirstScreenOf(Display display, int idx, int fromIndex)
type - name - fromIndex - start index, then increasing until found or end of list *public static Screen getLastScreenOf(Display display, int idx, int fromIndex)
type - name - fromIndex - start index, then decreasing until found or end of list. -1 is interpreted as size - 1.public static Collection<Screen> getAllScreens()
public static int getActiveScreenNumber()
Copyright 2010 JogAmp Community.