Class DefaultDesktopManager
- java.lang.Object
 -  
- javax.swing.DefaultDesktopManager
 
 
- All Implemented Interfaces:
 - 
Serializable,DesktopManager 
public class DefaultDesktopManager extends Object implements DesktopManager, Serializable
This is an implementation of the DesktopManager. It currently implements the basic behaviors for managing JInternalFrames in an arbitrary parent. JInternalFrames that are not children of a JDesktop will use this component to handle their desktop-like actions. 
This class provides a policy for the various JInternalFrame methods, it is not meant to be called directly rather the various JInternalFrame methods will call into the DesktopManager.
- Since:
 - 1.2
 - See Also:
 - 
JDesktopPane,JInternalFrame, Serialized Form 
Constructor Summary
| Constructor | Description | 
|---|---|
DefaultDesktopManager() |  
Method Summary
| Modifier and Type | Method | Description | 
|---|---|---|
void |  activateFrame(JInternalFrame f) |    This will activate f moving it to the front.  |  
void |  closeFrame(JInternalFrame f) |    Removes the frame, and, if necessary, the   |  
void |  deiconifyFrame(JInternalFrame f) |    Removes the desktopIcon from its parent and adds its frame to the parent.  |  
void |  dragFrame(JComponent f,
         int newX,
         int newY) |    Moves the visible location of the frame being dragged to the location specified.  |  
protected Rectangle |  getBoundsForIconOf(JInternalFrame f) |    The   |  
protected Rectangle |  getPreviousBounds(JInternalFrame f) |    Gets the normal bounds of the component prior to the component being maximized.  |  
void |  iconifyFrame(JInternalFrame f) |    Removes the frame from its parent and adds its   |  
void |  maximizeFrame(JInternalFrame f) |    Resizes the frame to fill its parents bounds.  |  
void |  minimizeFrame(JInternalFrame f) |    Restores the frame back to its size and position prior to a   |  
void |  openFrame(JInternalFrame f) |    Normally this method will not be called.  |  
protected void |  removeIconFor(JInternalFrame f) |    Convenience method to remove the desktopIcon of f is necessary.  |  
void |  resizeFrame(JComponent f,
           int newX,
           int newY,
           int newWidth,
           int newHeight) |    Calls   |  
void |  setBoundsForFrame(JComponent f,
                 int newX,
                 int newY,
                 int newWidth,
                 int newHeight) |    This moves the   |  
protected void |  setPreviousBounds(JInternalFrame f,
                 Rectangle r) |    Stores the bounds of the component just before a maximize call.  |  
protected void |  setWasIcon(JInternalFrame f,
          Boolean value) |    Sets that the component has been iconized and the bounds of the   |  
protected boolean |  wasIcon(JInternalFrame f) |    Returns   |  
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait  Methods declared in interface javax.swing.DesktopManager
beginDraggingFrame, beginResizingFrame, deactivateFrame, endDraggingFrame, endResizingFrame  Constructor Detail
DefaultDesktopManager
public DefaultDesktopManager()
Method Detail
openFrame
public void openFrame(JInternalFrame f)
Normally this method will not be called. If it is, it tries to determine the appropriate parent from the desktopIcon of the frame. Will remove the desktopIcon from its parent if it successfully adds the frame.
- Specified by:
 - 
openFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be displayed 
closeFrame
public void closeFrame(JInternalFrame f)
Removes the frame, and, if necessary, the desktopIcon, from its parent.
- Specified by:
 - 
closeFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be removed 
maximizeFrame
public void maximizeFrame(JInternalFrame f)
Resizes the frame to fill its parents bounds.
- Specified by:
 - 
maximizeFramein interfaceDesktopManager - Parameters:
 - 
f- the frame to be resized 
minimizeFrame
public void minimizeFrame(JInternalFrame f)
Restores the frame back to its size and position prior to a maximizeFrame call.
- Specified by:
 - 
minimizeFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be restored 
iconifyFrame
public void iconifyFrame(JInternalFrame f)
Removes the frame from its parent and adds its desktopIcon to the parent.
- Specified by:
 - 
iconifyFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be iconified 
deiconifyFrame
public void deiconifyFrame(JInternalFrame f)
Removes the desktopIcon from its parent and adds its frame to the parent.
- Specified by:
 - 
deiconifyFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be de-iconified 
activateFrame
public void activateFrame(JInternalFrame f)
This will activate f moving it to the front. It will set the current active frame's (if any) IS_SELECTED_PROPERTY to false. There can be only one active frame across all Layers.
- Specified by:
 - 
activateFramein interfaceDesktopManager - Parameters:
 - 
f- theJInternalFrameto be activated 
dragFrame
public void dragFrame(JComponent f,
                      int newX,
                      int newY) Moves the visible location of the frame being dragged to the location specified. The means by which this occurs can vary depending on the dragging algorithm being used. The actual logical location of the frame might not change until endDraggingFrame is called.
- Specified by:
 - 
dragFramein interfaceDesktopManager - Parameters:
 - 
f- theJComponentbeing dragged - 
newX- the new x-coordinate - 
newY- the new y-coordinate 
resizeFrame
public void resizeFrame(JComponent f,
                        int newX,
                        int newY,
                        int newWidth,
                        int newHeight) Calls setBoundsForFrame with the new values.
- Specified by:
 - 
resizeFramein interfaceDesktopManager - Parameters:
 - 
f- the component to be resized - 
newX- the new x-coordinate - 
newY- the new y-coordinate - 
newWidth- the new width - 
newHeight- the new height 
setBoundsForFrame
public void setBoundsForFrame(JComponent f,
                              int newX,
                              int newY,
                              int newWidth,
                              int newHeight) This moves the JComponent and repaints the damaged areas.
- Specified by:
 - 
setBoundsForFramein interfaceDesktopManager - Parameters:
 - 
f- theJComponentbeing moved or resized - 
newX- the new x-coordinate - 
newY- the new y-coordinate - 
newWidth- the new width - 
newHeight- the new height 
removeIconFor
protected void removeIconFor(JInternalFrame f)
Convenience method to remove the desktopIcon of f is necessary.
- Parameters:
 - 
f- theJInternalFramefor which to remove thedesktopIcon 
getBoundsForIconOf
protected Rectangle getBoundsForIconOf(JInternalFrame f)
The iconifyFrame() code calls this to determine the proper bounds for the desktopIcon.
- Parameters:
 - 
f- theJInternalFrameof interest - Returns:
 - a 
Rectanglecontaining bounds for thedesktopIcon 
setPreviousBounds
protected void setPreviousBounds(JInternalFrame f,
                                 Rectangle r) Stores the bounds of the component just before a maximize call.
- Parameters:
 - 
f- the component about to be resized - 
r- the normal bounds to be saved away 
getPreviousBounds
protected Rectangle getPreviousBounds(JInternalFrame f)
Gets the normal bounds of the component prior to the component being maximized.
- Parameters:
 - 
f- theJInternalFrameof interest - Returns:
 - the normal bounds of the component
 
setWasIcon
protected void setWasIcon(JInternalFrame f,
                          Boolean value) Sets that the component has been iconized and the bounds of the desktopIcon are valid.
- Parameters:
 - 
f- theJInternalFrameof interest - 
value- aBooleansignifying if component has been iconized 
wasIcon
protected boolean wasIcon(JInternalFrame f)
Returns true if the component has been iconized and the bounds of the desktopIcon are valid, otherwise returns false.
- Parameters:
 - 
f- theJInternalFrameof interest - Returns:
 - 
trueif the component has been iconized; otherwise returnsfalse