com.sibvisions.rad.ui.swing.impl.container
Class SwingFrame

java.lang.Object
  extended by com.sibvisions.rad.ui.awt.impl.AwtResource<C>
      extended by com.sibvisions.rad.ui.awt.impl.AwtComponent<C>
          extended by com.sibvisions.rad.ui.awt.impl.AwtContainer<C>
              extended by com.sibvisions.rad.ui.swing.impl.container.SwingAbstractFrame<JFrame>
                  extended by com.sibvisions.rad.ui.swing.impl.container.SwingFrame
All Implemented Interfaces:
ComponentListener, KeyListener, MouseListener, WindowListener, EventListener, IFrame, IToolBarPanel, IWindow, IAlignmentConstants, IComponent, IContainer, IResource, INamedObject
Direct Known Subclasses:
SwingApplication

public class SwingFrame
extends SwingAbstractFrame<JFrame>
implements WindowListener

The SwingFrame is the IFrame implementation for swing.
I is a top-level window with a title and a border.

The size of the frame includes any area designated for the border.

See Also:
JFrame, IFrame

Field Summary
 
Fields inherited from class com.sibvisions.rad.ui.swing.impl.container.SwingAbstractFrame
bDisposed, eventWindowActivated, eventWindowClosed, eventWindowClosing, eventWindowDeactivated, eventWindowDeiconified, eventWindowIconified, eventWindowOpened, iconImage, menuBar
 
Fields inherited from class com.sibvisions.rad.ui.awt.impl.AwtComponent
eventComponentMoved, eventComponentResized, eventSource, factory, parent
 
Fields inherited from class com.sibvisions.rad.ui.awt.impl.AwtResource
resource
 
Fields inherited from interface javax.rad.ui.container.IFrame
ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, NORMAL
 
Fields inherited from interface javax.rad.ui.container.IToolBarPanel
AREA_BOTTOM, AREA_LEFT, AREA_RIGHT, AREA_TOP
 
Fields inherited from interface javax.rad.ui.IAlignmentConstants
ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_STRETCH, ALIGN_TOP
 
Constructor Summary
SwingFrame()
          Creates a new instance of SwingFrame.
 
Method Summary
 void centerRelativeTo(IComponent pComponent)
          Centers the window relative to the specified component.
 void dispose()
          Marks the frame as disposed.
 int getState()
          Gets the state of this frame (obsolete).
 String getTitle()
          Gets the title of the frame.
 boolean isActive()
          Returns whether this IWindow is active.
 boolean isResizable()
          Indicates whether this frame is resizable by the user.
 void pack()
          Causes this IWindow to be sized to fit the preferred size and layouts of its subcomponents.
 void setIconImage(IImage pIconImage)
          Sets the image to be displayed as the icon for this window.
 void setMenuBar(IMenuBar pMenuBar)
          Sets the menubar for this frame.
 void setResizable(boolean pResizable)
          Sets whether this frame is resizable by the user.
 void setState(int pState)
          Sets the state of this frame (obsolete).
 void setTitle(String pTitle)
          Sets the title for this frame to the specified string.
 void setVisible(boolean pVisible)
          Shows or hides this component depending on the value of parameter b.
 void toBack()
          If this IWindow is visible, sends this IWindow to the back and may cause it to lose focus or activation if it is the focused or active Window.
 void toFront()
          If this IWindow is visible, brings this IWindow to the front and may make it the focused Window.
 void windowActivated(WindowEvent pEvent)
          
 void windowClosed(WindowEvent pEvent)
          Removes the internal frame from it's parent.
 void windowClosing(WindowEvent pEvent)
          
 void windowDeactivated(WindowEvent pEvent)
          
 void windowDeiconified(WindowEvent pEvent)
          
 void windowIconified(WindowEvent pEvent)
          
 void windowOpened(WindowEvent pEvent)
          
 
Methods inherited from class com.sibvisions.rad.ui.swing.impl.container.SwingAbstractFrame
addIntern, addToolBar, addToolBar, addToolBarIntern, eventWindowActivated, eventWindowClosed, eventWindowClosing, eventWindowDeactivated, eventWindowDeiconified, eventWindowIconified, eventWindowOpened, getIconImage, getMenuBar, getToolBar, getToolBarArea, getToolBarCount, indexOfToolBar, isDisposed, removeAllToolBars, removeIntern, removeToolBar, removeToolBar, removeToolBarIntern, setCursor, setLayoutIntern, setToolBarArea
 
Methods inherited from class com.sibvisions.rad.ui.awt.impl.AwtContainer
add, add, add, add, checkAdd, getComponent, getComponentCount, getLayout, indexOf, remove, remove, removeAll, setLayout
 
Methods inherited from class com.sibvisions.rad.ui.awt.impl.AwtComponent
capture, componentHidden, componentMoved, componentResized, componentShown, createImage, eventComponentMoved, eventComponentResized, eventKeyPressed, eventKeyReleased, eventKeyTyped, eventMouseClicked, eventMouseEntered, eventMouseExited, eventMousePressed, eventMouseReleased, getBackground, getBounds, getCursor, getEventSource, getFactory, getFont, getForeground, getHorizontalAlignment, getLocation, getLocationRelativeTo, getMaximumSize, getMinimumSize, getName, getParent, getPreferredSize, getSize, getToolTipText, getVerticalAlignment, isBackgroundSet, isCursorSet, isEnabled, isFocusable, isFontSet, isForegroundSet, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isVisible, keyPressed, keyReleased, keyTyped, mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased, requestFocus, setBackground, setBounds, setEnabled, setEventSource, setFactory, setFocusable, setFont, setForeground, setHorizontalAlignment, setLocation, setLocationRelativeTo, setMaximumSize, setMinimumSize, setName, setParent, setPreferredSize, setSize, setToolTipText, setVerticalAlignment, validate
 
Methods inherited from class com.sibvisions.rad.ui.awt.impl.AwtResource
equals, getResource, hashCode, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.rad.ui.IContainer
add, add, add, add, getComponent, getComponentCount, getLayout, indexOf, remove, remove, removeAll, setLayout
 
Methods inherited from interface javax.rad.ui.IComponent
capture, eventComponentMoved, eventComponentResized, eventKeyPressed, eventKeyReleased, eventKeyTyped, eventMouseClicked, eventMouseEntered, eventMouseExited, eventMousePressed, eventMouseReleased, getBackground, getBounds, getCursor, getEventSource, getFactory, getFont, getForeground, getLocation, getLocationRelativeTo, getMaximumSize, getMinimumSize, getName, getParent, getPreferredSize, getSize, getToolTipText, isBackgroundSet, isCursorSet, isEnabled, isFocusable, isFontSet, isForegroundSet, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isVisible, requestFocus, setBackground, setBounds, setEnabled, setEventSource, setFocusable, setFont, setForeground, setLocation, setLocationRelativeTo, setMaximumSize, setMinimumSize, setName, setParent, setPreferredSize, setSize, setToolTipText
 
Methods inherited from interface javax.rad.ui.IResource
getResource
 

Constructor Detail

SwingFrame

public SwingFrame()
Creates a new instance of SwingFrame.

Method Detail

setVisible

public void setVisible(boolean pVisible)
Shows or hides this component depending on the value of parameter b.

Specified by:
setVisible in interface IComponent
Overrides:
setVisible in class SwingAbstractFrame<JFrame>
Parameters:
pVisible - if true, shows this component; otherwise, hides this component
See Also:
IComponent.isVisible()

getTitle

public String getTitle()
Gets the title of the frame. The title is displayed in the frame's border.

Specified by:
getTitle in interface IFrame
Returns:
the title of this frame, or an empty string ("") if this frame doesn't have a title.
See Also:
IFrame.setTitle(String)

setTitle

public void setTitle(String pTitle)
Sets the title for this frame to the specified string.

Specified by:
setTitle in interface IFrame
Parameters:
pTitle - the title to be displayed in the frame's border. A null value is treated as an empty string, "".
See Also:
IFrame.getTitle()

setIconImage

public void setIconImage(IImage pIconImage)
Sets the image to be displayed as the icon for this window.

Specified by:
setIconImage in interface IFrame
Parameters:
pIconImage - the icon image to be displayed. If this parameter is null then the icon image is set to the default image, which may vary with platform.
See Also:
IFrame.getIconImage()

getState

public int getState()
Gets the state of this frame (obsolete).

In older versions of JDK a frame state could only be NORMAL or ICONIFIED. Since JDK 1.4 set of supported frame states is expanded and frame state is represented as a bitwise mask.

For compatibility with old programs this method still returns Frame.NORMAL and Frame.ICONIFIED but it only reports the iconic state of the frame, other aspects of frame state are not reported by this method.

Specified by:
getState in interface IFrame
Returns:
Frame.NORMAL or Frame.ICONIFIED.
See Also:
IFrame.setState(int)

setState

public void setState(int pState)
Sets the state of this frame (obsolete).

In older versions of JDK a frame state could only be NORMAL or ICONIFIED. Since JDK 1.4 set of supported frame states is expanded and frame state is represented as a bitwise mask.

For compatibility with old programs this method still accepts Frame.NORMAL and Frame.ICONIFIED but it only changes the iconic state of the frame, other aspects of frame state are not affected by this method.

Specified by:
setState in interface IFrame
Parameters:
pState - either Frame.NORMAL or Frame.ICONIFIED.
See Also:
IFrame.getState(), IFrame.setState(int)

isResizable

public boolean isResizable()
Indicates whether this frame is resizable by the user. By default, all frames are initially resizable.

Specified by:
isResizable in interface IFrame
Returns:
true if the user can resize this frame; false otherwise.
See Also:
IFrame.setResizable(boolean)

setResizable

public void setResizable(boolean pResizable)
Sets whether this frame is resizable by the user.

Specified by:
setResizable in interface IFrame
Parameters:
pResizable - true if this frame is resizable; false otherwise.
See Also:
IFrame.isResizable()

pack

public void pack()
Causes this IWindow to be sized to fit the preferred size and layouts of its subcomponents. If the window and/or its owner are not yet displayable, both are made displayable before calculating the preferred size. The IWindow will be validated after the preferredSize is calculated.

Specified by:
pack in interface IWindow

dispose

public void dispose()
Marks the frame as disposed.

Specified by:
dispose in interface IWindow
Overrides:
dispose in class SwingAbstractFrame<JFrame>
See Also:
IWindow.pack(), IComponent.setVisible(boolean)

isActive

public boolean isActive()
Returns whether this IWindow is active. Only a Frame or a Dialog may be active. The native windowing system may denote the active Window or its children with special decorations, such as a highlighted title bar. The active Window is always either the focused Window, or the first Frame or Dialog that is an owner of the focused Window.

Specified by:
isActive in interface IWindow
Returns:
whether this is the active Window.

toFront

public void toFront()
If this IWindow is visible, brings this IWindow to the front and may make it the focused Window.

Places this IWindow at the top of the stacking order and shows it in front of any other Windows in this VM. No action will take place if this Window is not visible. Some platforms do not allow Windows which own other Windows to appear on top of those owned Windows. Some platforms may not permit this VM to place its Windows above windows of native applications, or Windows of other VMs. This permission may depend on whether a Window in this VM is already focused. Every attempt will be made to move this Window as high as possible in the stacking order; however, developers should not assume that this method will move this Window above all other windows in every situation.

Because of variations in native windowing systems, no guarantees about changes to the focused and active Windows can be made. Developers must never assume that this Window is the focused or active Window until this Window receives a WINDOW_GAINED_FOCUS or WINDOW_ACTIVATED event. On platforms where the top-most window is the focused window, this method will probably focus this Window, if it is not already focused. On platforms where the stacking order does not typically affect the focused window, this method will probably leave the focused and active Windows unchanged.

If this method causes this Window to be focused, and this Window is a Frame or a Dialog, it will also become activated. If this Window is focused, but it is not a Frame or a Dialog, then the first Frame or Dialog that is an owner of this Window will be activated.

If this window is blocked by modal dialog, then the blocking dialog is brought to the front and remains above the blocked window.

Specified by:
toFront in interface IWindow
See Also:
IWindow.toBack()

toBack

public void toBack()
If this IWindow is visible, sends this IWindow to the back and may cause it to lose focus or activation if it is the focused or active Window.

Places this IWindow at the bottom of the stacking order and shows it behind any other Windows in this VM. No action will take place is this Window is not visible. Some platforms do not allow Windows which are owned by other Windows to appear below their owners. Every attempt will be made to move this Window as low as possible in the stacking order; however, developers should not assume that this method will move this Window below all other windows in every situation.

Because of variations in native windowing systems, no guarantees about changes to the focused and active Windows can be made. Developers must never assume that this Window is no longer the focused or active Window until this Window receives a WINDOW_LOST_FOCUS or WINDOW_DEACTIVATED event. On platforms where the top-most window is the focused window, this method will probably cause this Window to lose focus. In that case, the next highest, focusable Window in this VM will receive focus. On platforms where the stacking order does not typically affect the focused window, this method will probably leave the focused and active Windows unchanged.

Specified by:
toBack in interface IWindow
See Also:
IWindow.toFront()

setMenuBar

public void setMenuBar(IMenuBar pMenuBar)
Sets the menubar for this frame.

Specified by:
setMenuBar in interface IFrame
Parameters:
pMenuBar - the menubar being placed in the frame
See Also:
IFrame.getMenuBar()

centerRelativeTo

public void centerRelativeTo(IComponent pComponent)
Centers the window relative to the specified component. If the component is not currently showing, or pComponent is null, the window is centered on the screen.

Specified by:
centerRelativeTo in interface IWindow
Parameters:
pComponent - the component in relation to which the window's location is determined

windowOpened

public void windowOpened(WindowEvent pEvent)

Specified by:
windowOpened in interface WindowListener

windowClosing

public void windowClosing(WindowEvent pEvent)

Specified by:
windowClosing in interface WindowListener

windowClosed

public void windowClosed(WindowEvent pEvent)
Removes the internal frame from it's parent.

Specified by:
windowClosed in interface WindowListener
Parameters:
pEvent - the triggering event

windowActivated

public void windowActivated(WindowEvent pEvent)

Specified by:
windowActivated in interface WindowListener

windowDeactivated

public void windowDeactivated(WindowEvent pEvent)

Specified by:
windowDeactivated in interface WindowListener

windowIconified

public void windowIconified(WindowEvent pEvent)

Specified by:
windowIconified in interface WindowListener

windowDeiconified

public void windowDeiconified(WindowEvent pEvent)

Specified by:
windowDeiconified in interface WindowListener


Copyright © 2009 SIB Visions GmbH. All Rights Reserved.