com.sibvisions.rad.ui.awt.impl
Class AwtComponent<C extends java.awt.Component>

java.lang.Object
  extended by com.sibvisions.rad.ui.awt.impl.AwtResource<C>
      extended by com.sibvisions.rad.ui.awt.impl.AwtComponent<C>
Type Parameters:
C - AWT Component implementation
All Implemented Interfaces:
java.awt.event.ComponentListener, java.awt.event.FocusListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.util.EventListener, IAlignmentConstants, IComponent, IResource, INamedObject
Direct Known Subclasses:
AwtContainer

public class AwtComponent<C extends java.awt.Component>
extends AwtResource<C>
implements IComponent, IAlignmentConstants, java.awt.event.MouseListener, java.awt.event.KeyListener, java.awt.event.ComponentListener, java.awt.event.FocusListener

A component is an object having a graphical representation that can be displayed on the screen and that can interact with the user.


Field Summary
protected  boolean bComponentListener
          whether the component listener was added.
protected  boolean bFocusListener
          whether the focus listener was added.
protected  boolean bKeyListener
          whether the key listener was added.
protected  boolean bMouseListener
          whether the mouse listener was added.
protected  ComponentHandler<IComponentMovedListener> eventComponentMoved
          EventHandler for componentMoved.
protected  ComponentHandler<IComponentResizedListener> eventComponentResized
          EventHandler for componentResized.
protected  KeyHandler<IKeyPressedListener> eventKeyPressed
          EventHandler for keyPressed.
protected  KeyHandler<IKeyReleasedListener> eventKeyReleased
          EventHandler for keyReleased.
protected  KeyHandler<IKeyTypedListener> eventKeyTyped
          EventHandler for keyTyped.
protected  MouseHandler<IMouseClickedListener> eventMouseClicked
          EventHandler for mouseClicked.
protected  MouseHandler<IMouseEnteredListener> eventMouseEntered
          EventHandler for mouseEntered.
protected  MouseHandler<IMouseExitedListener> eventMouseExited
          EventHandler for mouseExited.
protected  MouseHandler<IMousePressedListener> eventMousePressed
          EventHandler for mouePressed.
protected  MouseHandler<IMouseReleasedListener> eventMouseReleased
          EventHandler for mouseReleased.
protected  IComponent eventSource
          The Event Source.
protected  IFactory factory
          The factory that created this component.
protected  IContainer parent
          Container where the component is added.
 
Fields inherited from class com.sibvisions.rad.ui.awt.impl.AwtResource
resource
 
Fields inherited from interface javax.rad.ui.IAlignmentConstants
ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_DEFAULT, ALIGN_LEFT, ALIGN_RIGHT, ALIGN_STRETCH, ALIGN_TOP
 
Constructor Summary
protected AwtComponent(C pComponent)
          Create a new instance of AwtComponent.
 
Method Summary
protected  void addComponentListener()
          Adds a component listener for this component, if not already added.
protected  void addFocusListener()
          Adds a component listener for this component, if not already added.
protected  void addKeyListener()
          Adds a key listener for this component, if not already added.
protected  void addMouseListener()
          Adds a mouse listener for this component, if not already added.
 IImage capture(int pWidth, int pHeight)
          Creates an image/screenshot of the component.
 void componentHidden(java.awt.event.ComponentEvent e)
          
 void componentMoved(java.awt.event.ComponentEvent e)
          
 void componentResized(java.awt.event.ComponentEvent e)
          
 void componentShown(java.awt.event.ComponentEvent e)
          
protected  java.awt.Image createImage(java.awt.Component pComponent, int pWidth, int pHeight)
          Creates an image from a component.
protected  UIMouseEvent createMouseEvent(int pId, java.awt.event.MouseEvent pMouseEvent)
          Creates a UIMouseEvent with corrected location.
 boolean equals(java.lang.Object pObject)
          
 ComponentHandler<IComponentMovedListener> eventComponentMoved()
          The ComponentHandler for the moved event.
 ComponentHandler<IComponentResizedListener> eventComponentResized()
          The ComponentHandler for the resized event.
 FocusHandler<IFocusGainedListener> eventFocusGained()
          The FocusHandler for the focus gained event.
 FocusHandler<IFocusLostListener> eventFocusLost()
          The FocusHandler for the focus lost event.
 KeyHandler<IKeyPressedListener> eventKeyPressed()
          The EventHandler for the key pressed event.
 KeyHandler<IKeyReleasedListener> eventKeyReleased()
          The EventHandler for the key released event.
 KeyHandler<IKeyTypedListener> eventKeyTyped()
          The EventHandler for the key typed event.
 MouseHandler<IMouseClickedListener> eventMouseClicked()
          The EventHandler for the mouse clicked event.
 MouseHandler<IMouseEnteredListener> eventMouseEntered()
          The EventHandler for the mouse entered event.
 MouseHandler<IMouseExitedListener> eventMouseExited()
          The EventHandler for the mouse exited event.
 MouseHandler<IMousePressedListener> eventMousePressed()
          The EventHandler for the mouse pressed event.
 MouseHandler<IMouseReleasedListener> eventMouseReleased()
          The EventHandler for the mouse released event.
 void focusGained(java.awt.event.FocusEvent e)
          
 void focusLost(java.awt.event.FocusEvent e)
          
 IColor getBackground()
          Gets the background color of this component.
 IRectangle getBounds()
          Gets the bounds of this component in the form of a IRectangle object.
 ICursor getCursor()
          Gets the ICursor set in the component.
 IComponent getEventSource()
          Gets the wanted event source for this component.
 IFactory getFactory()
          Gets the factory that created this NamedObject.
 IFont getFont()
          Gets the font of this component.
 IColor getForeground()
          Gets the foreground color of this component.
 int getHorizontalAlignment()
          Returns the alignment along the x axis.
 IPoint getLocation()
          Gets the location of this component in the form of a point specifying the component's top-left corner.
 IPoint getLocationRelativeTo(IComponent pComponent)
          Gets the location relative to the given component.
 IDimension getMaximumSize()
          Gets the maximum size of this component.
 IDimension getMinimumSize()
          Gets the mininimum size of this component.
 java.lang.String getName()
          Gets the name of the object.
 IContainer getParent()
          Gets the parent of this component.
 IDimension getPreferredSize()
          Gets the preferred size of this component.
 IDimension getSize()
          Returns the size of this component in the form of a IDimension object.
 Style getStyle()
          Gets the style definition.
 java.lang.Integer getTabIndex()
          Returns the desired tab index.
 java.lang.String getToolTipText()
          Returns the tooltip string that has been set with setToolTipText.
 int getVerticalAlignment()
          Returns the alignment along the y axis.
 int hashCode()
          
 void invalidateLayout()
          If container is already invalid, the layout is no longer informed about new calculation.
 boolean isBackgroundSet()
          Returns whether the background color has been explicitly set for this Component.
 boolean isCursorSet()
          Returns whether the cursor has been explicitly set for this Component.
 boolean isEnabled()
          Determines whether this component is enabled.
 boolean isFocusable()
          Returns whether this component can be focused.
 boolean isFontSet()
          Returns whether the font has been explicitly set for this Component.
 boolean isForegroundSet()
          Returns whether the foreground color has been explicitly set for this Component.
 boolean isMaximumSizeSet()
          Returns true if the maximum size has been set to a non-null value otherwise returns false.
 boolean isMinimumSizeSet()
          Returns whether or not setMinimumSize has been invoked with a non-null value.
 boolean isPreferredSizeSet()
          Returns true if the preferred size has been set to a non-null value otherwise returns false.
 boolean isVisible()
          Determines whether this component should be visible when its parent is visible.
 void keyPressed(java.awt.event.KeyEvent pKeyEvent)
          
 void keyReleased(java.awt.event.KeyEvent pKeyEvent)
          
 void keyTyped(java.awt.event.KeyEvent pKeyEvent)
          
 void mouseClicked(java.awt.event.MouseEvent pMouseEvent)
          
 void mouseEntered(java.awt.event.MouseEvent pMouseEvent)
          
 void mouseExited(java.awt.event.MouseEvent pMouseEvent)
          
 void mousePressed(java.awt.event.MouseEvent pMouseEvent)
          
 void mouseReleased(java.awt.event.MouseEvent pMouseEvent)
          
 void requestFocus()
          Requests that this Component get the input focus, and that this Component's top-level ancestor become the focused Window.
 void setBackground(IColor pBackground)
          Sets the background color of this component.
 void setBounds(IRectangle pBounds)
          Moves and resizes this component to conform to the new bounding rectangle pBounds.
 void setCursor(ICursor pCursor)
          Sets the cursor image to the specified cursor.
 void setEnabled(boolean pEnable)
          Enables or disables this component, depending on the value of the parameter pEnable.
 void setEventSource(IComponent pEventSource)
          Sets the wanted event source for this component.
 void setFactory(IFactory pFactory)
          Sets the components factory implementation.
 void setFocusable(boolean pFocusable)
          Sets the focusable state of this component to the specified value.
 void setFont(IFont pFont)
          Sets the IFont of this component.
 void setForeground(IColor pForeground)
          Sets the foreground color of this component.
 void setHorizontalAlignment(int pHorizontalAlignment)
          Sets the horizontal alignment.
 void setLocation(IPoint pLocation)
          Moves this component to a new location.
 void setLocationRelativeTo(IComponent pComponent, IPoint pLocation)
          Sets the location relative to the given component.
 void setMaximumSize(IDimension pMaximumSize)
          Sets the maximum size of this component to a constant value.
 void setMinimumSize(IDimension pMinimumSize)
          Sets the minimum size of this component to a constant value.
 void setName(java.lang.String pName)
          Sets the name of the object to the specified string.
 void setParent(IContainer pParent)
          Sets the parent of this component.
 void setPreferredSize(IDimension pPreferredSize)
          Sets the preferred size of this component to a constant value.
 void setSize(IDimension pSize)
          Resizes this component so that it has width d.width and height d.height.
 void setStyle(Style pStyle)
          Sets the style definition.
 void setTabIndex(java.lang.Integer pTabIndex)
          Sets the desired tab index.
 void setToolTipText(java.lang.String pText)
          Registers the text to display in a tool tip.
 void setVerticalAlignment(int pVerticalAlignment)
          Sets the vertical alignment.
 void setVisible(boolean pVisible)
          Shows or hides this component depending on the value of parameter b.
 void validate(java.awt.Component pComponent)
          Layouts the component.
 
Methods inherited from class com.sibvisions.rad.ui.awt.impl.AwtResource
getResource, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.rad.ui.IResource
getResource
 

Field Detail

parent

protected IContainer parent
Container where the component is added.


factory

protected IFactory factory
The factory that created this component.


eventSource

protected IComponent eventSource
The Event Source.


eventMousePressed

protected MouseHandler<IMousePressedListener> eventMousePressed
EventHandler for mouePressed.


eventMouseReleased

protected MouseHandler<IMouseReleasedListener> eventMouseReleased
EventHandler for mouseReleased.


eventMouseClicked

protected MouseHandler<IMouseClickedListener> eventMouseClicked
EventHandler for mouseClicked.


eventMouseEntered

protected MouseHandler<IMouseEnteredListener> eventMouseEntered
EventHandler for mouseEntered.


eventMouseExited

protected MouseHandler<IMouseExitedListener> eventMouseExited
EventHandler for mouseExited.


eventKeyPressed

protected KeyHandler<IKeyPressedListener> eventKeyPressed
EventHandler for keyPressed.


eventKeyReleased

protected KeyHandler<IKeyReleasedListener> eventKeyReleased
EventHandler for keyReleased.


eventKeyTyped

protected KeyHandler<IKeyTypedListener> eventKeyTyped
EventHandler for keyTyped.


eventComponentMoved

protected ComponentHandler<IComponentMovedListener> eventComponentMoved
EventHandler for componentMoved.


eventComponentResized

protected ComponentHandler<IComponentResizedListener> eventComponentResized
EventHandler for componentResized.


bMouseListener

protected boolean bMouseListener
whether the mouse listener was added.


bKeyListener

protected boolean bKeyListener
whether the key listener was added.


bComponentListener

protected boolean bComponentListener
whether the component listener was added.


bFocusListener

protected boolean bFocusListener
whether the focus listener was added.

Constructor Detail

AwtComponent

protected AwtComponent(C pComponent)
Create a new instance of AwtComponent.

Parameters:
pComponent - AWT Component implementation.
Method Detail

getName

public java.lang.String getName()
Gets the name of the object. Implementing classes need to make sure that no name is set during the creation of the component. A unique name (based on the position of the component in the component tree) will be generated and set when the component is added, but only if the name of the component is null.

Specified by:
getName in interface IComponent
Specified by:
getName in interface INamedObject
Returns:
this component's name
See Also:
IComponent.setName(java.lang.String)

setName

public void setName(java.lang.String pName)
Sets the name of the object to the specified string.

Specified by:
setName in interface IComponent
Specified by:
setName in interface INamedObject
Parameters:
pName - the string that is to be this component's name
See Also:
IComponent.getName()

getFactory

public IFactory getFactory()
Gets the factory that created this NamedObject.

Specified by:
getFactory in interface IComponent
Returns:
the factory that created this NamedObject

getHorizontalAlignment

public int getHorizontalAlignment()
Returns the alignment along the x axis. This specifies how the component would like to be aligned relative to other components. Possible values are defined in AlignmentConstants.

Specified by:
getHorizontalAlignment in interface IAlignmentConstants
Returns:
the horizontal alignment

setHorizontalAlignment

public void setHorizontalAlignment(int pHorizontalAlignment)
Sets the horizontal alignment. Possible values are defined in AlignmentConstants.

Specified by:
setHorizontalAlignment in interface IAlignmentConstants
Parameters:
pHorizontalAlignment - the new vertical alignment

getVerticalAlignment

public int getVerticalAlignment()
Returns the alignment along the y axis. This specifies how the component would like to be aligned relative to other components. Possible values are defined in AlignmentConstants.

Specified by:
getVerticalAlignment in interface IAlignmentConstants
Returns:
the vertical alignment

setVerticalAlignment

public void setVerticalAlignment(int pVerticalAlignment)
Sets the vertical alignment. Possible values are defined in AlignmentConstants.

Specified by:
setVerticalAlignment in interface IAlignmentConstants
Parameters:
pVerticalAlignment - the new vertical alignment

getPreferredSize

public IDimension getPreferredSize()
Gets the preferred size of this component.

Specified by:
getPreferredSize in interface IComponent
Returns:
an IDimension object indicating this component's preferred size
See Also:
IComponent.getMinimumSize(), LayoutManager

setPreferredSize

public void setPreferredSize(IDimension pPreferredSize)
Sets the preferred size of this component to a constant value. Subsequent calls to getPreferredSize will always return this value. Setting the preferred size to null restores the default behavior.

Specified by:
setPreferredSize in interface IComponent
Parameters:
pPreferredSize - the new preferred size, or null
See Also:
IComponent.getPreferredSize(), IComponent.isPreferredSizeSet()

isPreferredSizeSet

public boolean isPreferredSizeSet()
Returns true if the preferred size has been set to a non-null value otherwise returns false.

Specified by:
isPreferredSizeSet in interface IComponent
Returns:
true if setPreferredSize has been invoked with a non-null value.

getMinimumSize

public IDimension getMinimumSize()
Gets the mininimum size of this component.

Specified by:
getMinimumSize in interface IComponent
Returns:
an IDimension object indicating this component's minimum size
See Also:
IComponent.getPreferredSize(), LayoutManager

setMinimumSize

public void setMinimumSize(IDimension pMinimumSize)
Sets the minimum size of this component to a constant value. Subsequent calls to getMinimumSize will always return this value. Setting the minimum size to null restores the default behavior.

Specified by:
setMinimumSize in interface IComponent
Parameters:
pMinimumSize - the new minimum size of this component
See Also:
IComponent.getMinimumSize(), IComponent.isMinimumSizeSet()

isMinimumSizeSet

public boolean isMinimumSizeSet()
Returns whether or not setMinimumSize has been invoked with a non-null value.

Specified by:
isMinimumSizeSet in interface IComponent
Returns:
true if setMinimumSize has been invoked with a non-null value.

getMaximumSize

public IDimension getMaximumSize()
Gets the maximum size of this component.

Specified by:
getMaximumSize in interface IComponent
Returns:
an IDimension object indicating this component's maximum size
See Also:
IComponent.getMinimumSize(), IComponent.getPreferredSize(), LayoutManager

setMaximumSize

public void setMaximumSize(IDimension pMaximumSize)
Sets the maximum size of this component to a constant value. Subsequent calls to getMaximumSize will always return this value. Setting the maximum size to null restores the default behavior.

Specified by:
setMaximumSize in interface IComponent
Parameters:
pMaximumSize - a IDimension containing the desired maximum allowable size
See Also:
IComponent.getMaximumSize(), IComponent.isMaximumSizeSet()

isMaximumSizeSet

public boolean isMaximumSizeSet()
Returns true if the maximum size has been set to a non-null value otherwise returns false.

Specified by:
isMaximumSizeSet in interface IComponent
Returns:
true if maximumSize is non-null, false otherwise

getBackground

public IColor getBackground()
Gets the background color of this component.

Specified by:
getBackground in interface IComponent
Returns:
this component's background color; if this component does not have a background color, the background color of its parent is returned
See Also:
IComponent.setBackground(javax.rad.ui.IColor)

setBackground

public void setBackground(IColor pBackground)
Sets the background color of this component.

The background color affects each component differently and the parts of the component that are affected by the background color may differ between operating systems.

Specified by:
setBackground in interface IComponent
Parameters:
pBackground - the color to become this component's color; if this parameter is null, then this component will inherit the background color of its parent
See Also:
IComponent.getBackground()

isBackgroundSet

public boolean isBackgroundSet()
Returns whether the background color has been explicitly set for this Component. If this method returns false, this Component is inheriting its background color from an ancestor.

Specified by:
isBackgroundSet in interface IComponent
Returns:
true if the background color has been explicitly set for this Component; false otherwise.

getForeground

public IColor getForeground()
Gets the foreground color of this component.

Specified by:
getForeground in interface IComponent
Returns:
this component's foreground color; if this component does not have a foreground color, the foreground color of its parent is returned
See Also:
IComponent.setForeground(javax.rad.ui.IColor)

setForeground

public void setForeground(IColor pForeground)
Sets the foreground color of this component.

Specified by:
setForeground in interface IComponent
Parameters:
pForeground - the color to become this component's foreground color; if this parameter is null then this component will inherit the foreground color of its parent
See Also:
IComponent.getForeground()

isForegroundSet

public boolean isForegroundSet()
Returns whether the foreground color has been explicitly set for this Component. If this method returns false, this Component is inheriting its foreground color from an ancestor.

Specified by:
isForegroundSet in interface IComponent
Returns:
true if the foreground color has been explicitly set for this Component; false otherwise.

getCursor

public ICursor getCursor()
Gets the ICursor set in the component. If the component does not have a cursor set, the cursor of its parent is returned. If no cursor is set in the entire hierarchy, Cursor.DEFAULT_CURSOR is returned.

Specified by:
getCursor in interface IComponent
Returns:
the ICursor set in the component
See Also:
IComponent.setCursor(javax.rad.ui.ICursor)

setCursor

public void setCursor(ICursor pCursor)
Sets the cursor image to the specified cursor. This cursor image is displayed when the contains method for this component returns true for the current cursor location, and this Component is visible, displayable, and enabled. Setting the cursor of a Container causes that cursor to be displayed within all of the container's subcomponents, except for those that have a non-null cursor.

The method may have no visual effect if the Java platform implementation and/or the native system do not support changing the mouse cursor shape.

Specified by:
setCursor in interface IComponent
Parameters:
pCursor - One of the constants defined by the Cursor class; if this parameter is null then this component will inherit the cursor of its parent
See Also:
IComponent.isEnabled(), IComponent.getCursor(), Toolkit.createCustomCursor(java.awt.Image, java.awt.Point, java.lang.String), ICursor

isCursorSet

public boolean isCursorSet()
Returns whether the cursor has been explicitly set for this Component. If this method returns false, this Component is inheriting its cursor from an ancestor.

Specified by:
isCursorSet in interface IComponent
Returns:
true if the cursor has been explicitly set for this Component; false otherwise.

getFont

public IFont getFont()
Gets the font of this component.

Specified by:
getFont in interface IComponent
Returns:
this component's font; if a font has not been set for this component, the font of its parent is returned
See Also:
IComponent.setFont(javax.rad.ui.IFont)

setFont

public void setFont(IFont pFont)
Sets the IFont of this component.

Specified by:
setFont in interface IComponent
Parameters:
pFont - the IFont to become this component's font; if this parameter is null then this component will inherit the font of its parent
See Also:
IComponent.getFont()

isFontSet

public boolean isFontSet()
Returns whether the font has been explicitly set for this Component. If this method returns false, this Component is inheriting its font from an ancestor.

Specified by:
isFontSet in interface IComponent
Returns:
true if the font has been explicitly set for this Component; false otherwise.

getToolTipText

public java.lang.String getToolTipText()
Returns the tooltip string that has been set with setToolTipText.

Specified by:
getToolTipText in interface IComponent
Returns:
the text of the tool tip
See Also:
IComponent.setToolTipText(String)

setToolTipText

public void setToolTipText(java.lang.String pText)
Registers the text to display in a tool tip. The text displays when the cursor lingers over the component.

Specified by:
setToolTipText in interface IComponent
Parameters:
pText - the string to display; if the text is null, the tool tip is turned off for this component

setFocusable

public void setFocusable(boolean pFocusable)
Sets the focusable state of this component to the specified value.

Specified by:
setFocusable in interface IComponent
Parameters:
pFocusable - indicates whether this Component is focusable

isFocusable

public boolean isFocusable()
Returns whether this component can be focused.

Specified by:
isFocusable in interface IComponent
Returns:
true if this Component is focusable, false otherwise.

getTabIndex

public java.lang.Integer getTabIndex()
Returns the desired tab index. If several editors have the same tab index, or it is null the behaviour is technology dependend.

Specified by:
getTabIndex in interface IComponent
Returns:
the desired tab index.

setTabIndex

public void setTabIndex(java.lang.Integer pTabIndex)
Sets the desired tab index. If several editors have the same tab index, or it is null the behaviour is technology dependend.

Specified by:
setTabIndex in interface IComponent
Parameters:
pTabIndex - the desired tab index.

requestFocus

public void requestFocus()
Requests that this Component get the input focus, and that this Component's top-level ancestor become the focused Window. This component must be displayable, visible, and focusable for the request to be granted. Every effort will be made to honor the request; however, in some cases it may be impossible to do so. Developers must never assume that this Component is the focus owner until this Component receives a FOCUS_GAINED event. If this request is denied because this Component's top-level Window cannot become the focused Window, the request will be remembered and will be granted when the Window is later focused by the user.

This method cannot be used to set the focus owner to no Component at all. Use KeyboardFocusManager.clearGlobalFocusOwner() instead.

Because the focus behavior of this method is platform-dependent, developers are strongly encouraged to use requestFocusInWindow when possible.

Specified by:
requestFocus in interface IComponent

getParent

public IContainer getParent()
Gets the parent of this component.

Specified by:
getParent in interface IComponent
Returns:
the parent container of this component

setParent

public void setParent(IContainer pParent)
Sets the parent of this component.

Specified by:
setParent in interface IComponent
Parameters:
pParent - the parent container of this component

isVisible

public boolean isVisible()
Determines whether this component should be visible when its parent is visible. Components are initially visible, with the exception of top level components such as Frame objects.

Specified by:
isVisible in interface IComponent
Returns:
true if the component is visible, false otherwise
See Also:
IComponent.setVisible(boolean)

setVisible

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

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

isEnabled

public boolean isEnabled()
Determines whether this component is enabled. An enabled component can respond to user input and generate events. Components are enabled initially by default. A component may be enabled or disabled by calling its setEnabled method.

Specified by:
isEnabled in interface IComponent
Returns:
true if the component is enabled, false otherwise
See Also:
IComponent.setEnabled(boolean)

setEnabled

public void setEnabled(boolean pEnable)
Enables or disables this component, depending on the value of the parameter pEnable. An enabled component can respond to user input and generate events. Components are enabled initially by default.

Specified by:
setEnabled in interface IComponent
Parameters:
pEnable - if true, this component is enabled; otherwise this component is disabled
See Also:
IComponent.isEnabled()

getLocationRelativeTo

public IPoint getLocationRelativeTo(IComponent pComponent)
Gets the location relative to the given component.

Specified by:
getLocationRelativeTo in interface IComponent
Parameters:
pComponent - the component in relation to which the window's location is determined.
Returns:
the location.

setLocationRelativeTo

public void setLocationRelativeTo(IComponent pComponent,
                                  IPoint pLocation)
Sets the location relative to the given component.

Specified by:
setLocationRelativeTo in interface IComponent
Parameters:
pComponent - the component in relation to which the window's location is determined.
pLocation - the location.

getLocation

public IPoint getLocation()
Gets the location of this component in the form of a point specifying the component's top-left corner. The location will be relative to the parent's coordinate space.

Due to the asynchronous nature of native event handling, this method can return outdated values (for instance, after several calls of setLocation() in rapid succession). For this reason, the recommended method of obtaining a component's position is within java.awt.event.ComponentListener.componentMoved(), which is called after the operating system has finished moving the component.

Specified by:
getLocation in interface IComponent
Returns:
an instance of IPoint representing the top-left corner of the component's bounds in the coordinate space of the component's parent
See Also:
IComponent.setLocation(IPoint)

setLocation

public void setLocation(IPoint pLocation)
Moves this component to a new location. The top-left corner of the new location is specified by point p. Point p is given in the parent's coordinate space.

Specified by:
setLocation in interface IComponent
Parameters:
pLocation - the point defining the top-left corner of the new location, given in the coordinate space of this component's parent
See Also:
IComponent.getLocation(), IComponent.setBounds(IRectangle)

getSize

public IDimension getSize()
Returns the size of this component in the form of a IDimension object. The height field of the IDimension object contains this component's height, and the width field of the IDimension object contains this component's width.

Specified by:
getSize in interface IComponent
Returns:
an IDimension object that indicates the size of this component
See Also:
IComponent.setSize(javax.rad.ui.IDimension)

setSize

public void setSize(IDimension pSize)
Resizes this component so that it has width d.width and height d.height.

Specified by:
setSize in interface IComponent
Parameters:
pSize - the IDimension specifying the new size of this component
See Also:
IComponent.setSize(javax.rad.ui.IDimension), IComponent.setBounds(javax.rad.ui.IRectangle)

getBounds

public IRectangle getBounds()
Gets the bounds of this component in the form of a IRectangle object. The bounds specify this component's width, height, and location relative to its parent.

Specified by:
getBounds in interface IComponent
Returns:
a rectangle indicating this component's bounds
See Also:
IComponent.setBounds(javax.rad.ui.IRectangle), IComponent.getLocation(), IComponent.getSize()

setBounds

public void setBounds(IRectangle pBounds)
Moves and resizes this component to conform to the new bounding rectangle pBounds. This component's new position is specified by pBounds.x and pBounds.y, and its new size is specified by pBounds.width and pBounds.height

Specified by:
setBounds in interface IComponent
Parameters:
pBounds - the new bounding rectangle for this component
See Also:
IComponent.getBounds(), IComponent.setLocation(IPoint), IComponent.setSize(IDimension)

getEventSource

public IComponent getEventSource()
Gets the wanted event source for this component. This gives wrapper implementations like genui a simple mechanism to control the source of component events.

Specified by:
getEventSource in interface IComponent
Returns:
the event source

setEventSource

public void setEventSource(IComponent pEventSource)
Sets the wanted event source for this component. This gives wrapper implementations like genui a simple mechanism to control the source of component events.

Specified by:
setEventSource in interface IComponent
Parameters:
pEventSource - the event source

setStyle

public void setStyle(Style pStyle)
Sets the style definition. A style can be used to customize a component.

Specified by:
setStyle in interface IComponent
Parameters:
pStyle - the style

getStyle

public Style getStyle()
Gets the style definition.

Specified by:
getStyle in interface IComponent
Returns:
the style definition
See Also:
IComponent.setStyle(Style)

eventMousePressed

public MouseHandler<IMousePressedListener> eventMousePressed()
The EventHandler for the mouse pressed event.

Specified by:
eventMousePressed in interface IComponent
Returns:
the EventHandler for the mouse pressed event.

eventMouseReleased

public MouseHandler<IMouseReleasedListener> eventMouseReleased()
The EventHandler for the mouse released event.

Specified by:
eventMouseReleased in interface IComponent
Returns:
the EventHandler for the mouse released event.

eventMouseClicked

public MouseHandler<IMouseClickedListener> eventMouseClicked()
The EventHandler for the mouse clicked event.

Specified by:
eventMouseClicked in interface IComponent
Returns:
the EventHandler for the mouse clicked event.

eventMouseEntered

public MouseHandler<IMouseEnteredListener> eventMouseEntered()
The EventHandler for the mouse entered event.

Specified by:
eventMouseEntered in interface IComponent
Returns:
the EventHandler for the mouse entered event.

eventMouseExited

public MouseHandler<IMouseExitedListener> eventMouseExited()
The EventHandler for the mouse exited event.

Specified by:
eventMouseExited in interface IComponent
Returns:
the EventHandler for the mouse exited event.

eventKeyPressed

public KeyHandler<IKeyPressedListener> eventKeyPressed()
The EventHandler for the key pressed event.

Specified by:
eventKeyPressed in interface IComponent
Returns:
the EventHandler for the key pressed event.

eventKeyReleased

public KeyHandler<IKeyReleasedListener> eventKeyReleased()
The EventHandler for the key released event.

Specified by:
eventKeyReleased in interface IComponent
Returns:
the EventHandler for the key released event.

eventKeyTyped

public KeyHandler<IKeyTypedListener> eventKeyTyped()
The EventHandler for the key typed event.

Specified by:
eventKeyTyped in interface IComponent
Returns:
the EventHandler for the key typed event.

eventComponentMoved

public ComponentHandler<IComponentMovedListener> eventComponentMoved()
The ComponentHandler for the moved event.

Specified by:
eventComponentMoved in interface IComponent
Returns:
the ComponentHandler for the moved event.

eventComponentResized

public ComponentHandler<IComponentResizedListener> eventComponentResized()
The ComponentHandler for the resized event.

Specified by:
eventComponentResized in interface IComponent
Returns:
the ComponentHandler for the resized event.

eventFocusGained

public FocusHandler<IFocusGainedListener> eventFocusGained()
The FocusHandler for the focus gained event.

Specified by:
eventFocusGained in interface IComponent
Returns:
the FocusHandler for the focus gained event.

eventFocusLost

public FocusHandler<IFocusLostListener> eventFocusLost()
The FocusHandler for the focus lost event.

Specified by:
eventFocusLost in interface IComponent
Returns:
the FocusHandler for the focus lost event.

capture

public IImage capture(int pWidth,
                      int pHeight)
Creates an image/screenshot of the component.

Specified by:
capture in interface IComponent
Parameters:
pWidth - the expected width
pHeight - the expected height
Returns:
the image/screenshot

mousePressed

public void mousePressed(java.awt.event.MouseEvent pMouseEvent)

Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent pMouseEvent)

Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent pMouseEvent)

Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent pMouseEvent)

Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent pMouseEvent)

Specified by:
mouseExited in interface java.awt.event.MouseListener

keyPressed

public void keyPressed(java.awt.event.KeyEvent pKeyEvent)

Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent pKeyEvent)

Specified by:
keyReleased in interface java.awt.event.KeyListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent pKeyEvent)

Specified by:
keyTyped in interface java.awt.event.KeyListener

componentHidden

public void componentHidden(java.awt.event.ComponentEvent e)

Specified by:
componentHidden in interface java.awt.event.ComponentListener

componentShown

public void componentShown(java.awt.event.ComponentEvent e)

Specified by:
componentShown in interface java.awt.event.ComponentListener

componentMoved

public void componentMoved(java.awt.event.ComponentEvent e)

Specified by:
componentMoved in interface java.awt.event.ComponentListener

componentResized

public void componentResized(java.awt.event.ComponentEvent e)

Specified by:
componentResized in interface java.awt.event.ComponentListener

focusGained

public void focusGained(java.awt.event.FocusEvent e)

Specified by:
focusGained in interface java.awt.event.FocusListener

focusLost

public void focusLost(java.awt.event.FocusEvent e)

Specified by:
focusLost in interface java.awt.event.FocusListener

equals

public boolean equals(java.lang.Object pObject)

Overrides:
equals in class AwtResource<C extends java.awt.Component>

hashCode

public int hashCode()

Overrides:
hashCode in class AwtResource<C extends java.awt.Component>

createMouseEvent

protected UIMouseEvent createMouseEvent(int pId,
                                        java.awt.event.MouseEvent pMouseEvent)
Creates a UIMouseEvent with corrected location.

Parameters:
pId - the new mouse event id.
pMouseEvent - plattform dependent mouse event.
Returns:
the UIMouseEvent.

setFactory

public void setFactory(IFactory pFactory)
Sets the components factory implementation.

Parameters:
pFactory - the IFactory
See Also:
AwtFactory

addMouseListener

protected void addMouseListener()
Adds a mouse listener for this component, if not already added.


addKeyListener

protected void addKeyListener()
Adds a key listener for this component, if not already added.


addComponentListener

protected void addComponentListener()
Adds a component listener for this component, if not already added.


addFocusListener

protected void addFocusListener()
Adds a component listener for this component, if not already added.


invalidateLayout

public void invalidateLayout()
If container is already invalid, the layout is no longer informed about new calculation.


validate

public void validate(java.awt.Component pComponent)
Layouts the component.

Parameters:
pComponent - the component.

createImage

protected java.awt.Image createImage(java.awt.Component pComponent,
                                     int pWidth,
                                     int pHeight)
Creates an image from a component.

Parameters:
pComponent - the component
pWidth - the expected image width
pHeight - the expected image height
Returns:
the component image


Copyright © 2009 SIB Visions GmbH. All Rights Reserved.