@Todo(compatibility=COMPATIBLE, priority=BUG, target=VERSION_1_1_1, description="handle taskbar, check multi-screen (does not work properly)") public class DefaultScreenDockFullscreenStrategy extends Object implements ScreenDockFullscreenStrategy
ScreenDockFullscreenStrategy
just works with
the boundaries of a ScreenDockWindow
. It assumes that either ScreenDockDialog
or ScreenDockFrame
is used. Subclasses may extend this list, the algorithms of this
strategy should work with most implementations that are based on a Window
.Constructor and Description |
---|
DefaultScreenDockFullscreenStrategy() |
Modifier and Type | Method and Description |
---|---|
protected Rectangle |
findBestFullscreenBounds(Window window)
Tries to find the boundaries that match the fullscreen-criterium and that match the current
location of
window . |
protected Rectangle |
getAvailableBounds(GraphicsConfiguration configuration)
Gets the boundaries of a
GraphicsDevice that can actually be used. |
void |
install(ScreenDockStation station)
Informs this strategy that it will be used for
station . |
boolean |
isFullscreen(ScreenDockWindow window)
Tells whether
window is in fullscreen mode. |
boolean |
isFullscreen(ScreenDockWindow wrapper,
Window window)
Tells whether the frame or dialog
window is in fullscreen mode. |
void |
setFullscreen(ScreenDockWindow window,
boolean fullscreen)
Changes the fullscreen mode of
window , does nothing if this strategy cannot handle the
type of window . |
void |
setFullscreen(ScreenDockWindow wrapper,
Window window,
boolean fullscreen)
Sets the fullscreen mode of
window . |
void |
uninstall(ScreenDockStation station)
Informs this strategy that it will no longer be used for
station . |
public void install(ScreenDockStation station)
ScreenDockFullscreenStrategy
station
.install
in interface ScreenDockFullscreenStrategy
station
- some station using this strategypublic void uninstall(ScreenDockStation station)
ScreenDockFullscreenStrategy
station
.uninstall
in interface ScreenDockFullscreenStrategy
station
- some station that is no longer using this strategypublic boolean isFullscreen(ScreenDockWindow window)
ScreenDockFullscreenStrategy
window
is in fullscreen mode. If this strategy cannot handle
window
it returns false
.isFullscreen
in interface ScreenDockFullscreenStrategy
window
- some window of a known stationtrue
if window
is in fullscreen mode, false
otherwisepublic boolean isFullscreen(ScreenDockWindow wrapper, Window window)
window
is in fullscreen mode.wrapper
- the wrapper around window
window
- the window to checkpublic void setFullscreen(ScreenDockWindow window, boolean fullscreen)
ScreenDockFullscreenStrategy
window
, does nothing if this strategy cannot handle the
type of window
.setFullscreen
in interface ScreenDockFullscreenStrategy
window
- some window of a known stationfullscreen
- the new statepublic void setFullscreen(ScreenDockWindow wrapper, Window window, boolean fullscreen)
window
.wrapper
- the wrapper around window
window
- the window whose state is to be changedfullscreen
- the new stateprotected Rectangle findBestFullscreenBounds(Window window)
window
.window
- some window which is not yet in fullscreen modenull
if not boundaries could be foundprotected Rectangle getAvailableBounds(GraphicsConfiguration configuration)
GraphicsDevice
that can actually be used.configuration
- some device