Package gr.zeus.ui.mdi
Class WindowManager
java.lang.Object
gr.zeus.ui.mdi.WindowManager
A JDesktop window manager.
Major functions implemented:
- close()
- closeAll()
- minimize()
- minimizeAll()
- maximize()
- maximizeAll()
- restore()
- restoreAll()
- hide()
- hideAll()
- selectNext()
- selectPrevious()
- reset()
- resetAll()
- tileHorizontally()
- tileVertically()
- tile()
- cascade()
- Since:
- 1.04
- Author:
- Gregory Kotsaftis
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
cascade()
Cascades all frames.void
close()
Closes the selected frame if it is closable.void
closeAll()
Closes all frames that are closable.int
Counts all frames, even those that are closed withDefaultCloseOperation = HIDE_ON_CLOSE
int
Counts only visible frames.boolean
Gets the auto position frames policy.boolean
Gets the close policy.boolean
Gets the de-iconifiable policy.boolean
Gets frames' drawing strategy.void
hide()
Hides a frame.void
hideAll()
Hides all frames.void
maximize()
Maximizes the selected frame if it is not already maximized.void
Maximizes all frames that are not already maximized.void
minimize()
Minimizes the selected frame if it is iconifiable.void
Minimizes all frames that are iconifiable.void
reset()
Resets the frame to it's original preferred size of its components.void
resetAll()
Resets all frames to their original preferred size of their components.void
restore()
Restores the selected frame from it's maximized state.void
Restores all frames from their maximized state.void
Selects the next internal frame.void
Selects the previous internal frame.void
setAutoPositionPolicy
(boolean p) Sets the auto position frames policy.void
setClosePolicy
(boolean p) Sets the close policy.void
setDeiconifiablePolicy
(boolean p) Sets de-iconifiable policy.void
setOutlineDragMode
(boolean outline) Selects frames' drawing strategy.void
tile()
Tiles all windows equally.void
Tiles all windows horizontally.void
Tiles all windows vertically.
-
Constructor Details
-
WindowManager
Constructor. Creates a newWindowManager
and attaches it to a desktop pane.- Parameters:
d
- TheJDesktopPane
instance.windowsMenu
- TheJMenu
instance.
-
-
Method Details
-
setOutlineDragMode
public void setOutlineDragMode(boolean outline) Selects frames' drawing strategy.- Parameters:
outline
-true
to enableJDesktopPane.OUTLINE_DRAG_MODE
, orfalse
to enableJDesktopPane.LIVE_DRAG_MODE
.
-
getOutlineDragMode
public boolean getOutlineDragMode()Gets frames' drawing strategy.- Returns:
true
if desktop'sDragMode
isJDesktopPane.OUTLINE_DRAG_MODE
orfalse
if desktop'sDragMode
isJDesktopPane.LIVE_DRAG_MODE
.
-
setDeiconifiablePolicy
public void setDeiconifiablePolicy(boolean p) Sets de-iconifiable policy. Should we force a frame to de-iconify if it is iconified, during cascade operations?- Parameters:
p
-true
if force,false
otherwise.
-
getDeiconifiablePolicy
public boolean getDeiconifiablePolicy()Gets the de-iconifiable policy.- Returns:
- The de-iconifiable policy.
-
setClosePolicy
public void setClosePolicy(boolean p) Sets the close policy. Should we do default close operation per frame or force close it?- Parameters:
p
-true
to force close,false
do default close operation.
-
getClosePolicy
public boolean getClosePolicy()Gets the close policy.- Returns:
true
for force close,false
for default close operation.
-
setAutoPositionPolicy
public void setAutoPositionPolicy(boolean p) Sets the auto position frames policy. Should we auto position the new frames in the desktop or not?- Parameters:
p
-true
for auto-position,false
for none.
-
getAutoPositionPolicy
public boolean getAutoPositionPolicy()Gets the auto position frames policy.- Returns:
- The auto-position policy.
-
countFrames
public int countFrames()Counts all frames, even those that are closed withDefaultCloseOperation = HIDE_ON_CLOSE
NOTEUse this method in order to understand how many "ghost" frames remain within the desktop.
- Returns:
- The number of frames.
-
countVisibleFrames
public int countVisibleFrames()Counts only visible frames.- Returns:
- The number of visible frames.
-
close
public void close()Closes the selected frame if it is closable. -
closeAll
public void closeAll()Closes all frames that are closable. -
minimize
public void minimize()Minimizes the selected frame if it is iconifiable. -
minimizeAll
public void minimizeAll()Minimizes all frames that are iconifiable. -
restore
public void restore()Restores the selected frame from it's maximized state. -
restoreAll
public void restoreAll()Restores all frames from their maximized state. -
maximize
public void maximize()Maximizes the selected frame if it is not already maximized. -
maximizeAll
public void maximizeAll()Maximizes all frames that are not already maximized. -
reset
public void reset()Resets the frame to it's original preferred size of its components. -
resetAll
public void resetAll()Resets all frames to their original preferred size of their components. -
hide
public void hide()Hides a frame. The hidden frame is added to the menu with disabled-like color. -
hideAll
public void hideAll()Hides all frames. The hidden frames are added to the menu with disabled-like color. -
selectNext
public void selectNext()Selects the next internal frame. -
selectPrevious
public void selectPrevious()Selects the previous internal frame. -
cascade
public void cascade()Cascades all frames. If De-iconifiablePolicy is false, minimized frames stay minimized.During cascade, it also sorts frames based on their title. -
tileVertically
public void tileVertically()Tiles all windows vertically. -
tileHorizontally
public void tileHorizontally()Tiles all windows horizontally. -
tile
public void tile()Tiles all windows equally.
-