|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.rad.genui.UIResource<C>
javax.rad.genui.UIComponent<C>
C - instance of IComponentpublic abstract class UIComponent<C extends IComponent>
Platform and technology independent component. It is designed for use with AWT, Swing, SWT, JSP, JSF,... .
| Field Summary | |
|---|---|
protected long |
lLastTranslationModified
the time of the last translation modification. |
protected IContainer |
parent
the UIParent of this UICompoennt. |
| Fields inherited from class javax.rad.genui.UIResource |
|---|
uiResource |
| Constructor Summary | |
|---|---|
protected |
UIComponent(C pComponent)
Creates a new instance of UIComponent. |
| Method Summary | |
|---|---|
void |
addNotify()
Makes this UIComponent displayable by adding it to an UIContainer. |
void |
beforeAddNotify(IComponent pParent)
Invoked before this component is added. |
IImage |
capture(int iWidth,
int iHeight)
Creates an image/screenshot of the component. |
static ICellFormatter |
createCellFormatter(Object pCellFormatter,
String pMethodName)
Creates a cell formatter instance with the given object and method name. |
static INodeFormatter |
createNodeFormatter(Object pNodeFormatter,
String pMethodName)
Creates a node formatter instance with the given object and method name. |
void |
debug(Object... pInfo)
Logs debug information. |
void |
error(Object... pInfo)
Logs error information. |
ComponentHandler |
eventComponentMoved()
The ComponentHandler for the moved event. |
ComponentHandler |
eventComponentResized()
The ComponentHandler for the resized event. |
KeyHandler |
eventKeyPressed()
The EventHandler for the key pressed event. |
KeyHandler |
eventKeyReleased()
The EventHandler for the key released event. |
KeyHandler |
eventKeyTyped()
The EventHandler for the key typed event. |
MouseHandler |
eventMouseClicked()
The EventHandler for the mouse clicked event. |
MouseHandler |
eventMouseEntered()
The EventHandler for the mouse entered event. |
MouseHandler |
eventMouseExited()
The EventHandler for the mouse exited event. |
MouseHandler |
eventMousePressed()
The EventHandler for the mouse pressed event. |
MouseHandler |
eventMouseReleased()
The EventHandler for the mouse released event. |
IColor |
getBackground()
Gets the background color of this component. |
IRectangle |
getBounds()
Gets the bounds of this component in the form of a IRectangle object. |
protected IComponent |
getComponentUIResource()
Gets the component which will be added/removed to an UIContainer instead
of this component. |
protected TranslationMap |
getCurrentTranslation()
Gets the current translation mapping usable for this UIComponent. |
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. |
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. |
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. |
Object |
getResource()
Gets the original resource corresponding with this wrapper object. |
IDimension |
getSize()
Returns the size of this component in the form of a IDimension object. |
String |
getToolTipText()
Returns the tooltip string that has been set with setToolTipText. |
TranslationMap |
getTranslation()
Gets the possible translation mapping for this UIComponent. |
void |
info(Object... pInfo)
Logs information. |
static void |
invokeAndWait(Object pRunnable,
String pMethod)
Causes pRunnable.run() to be executed synchronously on the event dispatching thread. |
static void |
invokeAndWait(Runnable pRunnable)
Causes pRunnable.run() to be executed synchronously on the event dispatching thread. |
static void |
invokeInThread(Object pRunnable,
String pMethod)
Causes pRunnable.run() to be executed asynchronously in a new thread. |
static void |
invokeInThread(Runnable pRunnable)
Causes pRunnable.run() to be executed asynchronously in a new thread. |
static void |
invokeLater(Object pObject,
String pMethod)
Causes pRunnable.run() to be executed asynchronously on the event dispatching thread. |
static void |
invokeLater(Runnable pRunnable)
Causes pRunnable.run() to be executed asynchronously on the event dispatching thread. |
boolean |
isBackgroundSet()
Returns whether the background color has been explicitly set for this Component. |
boolean |
isBeforeNotified()
Gets whether this component is notified before it was added. |
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 |
isNotified()
Determines whether this UIComponent is displayable. |
boolean |
isPreferredSizeSet()
Returns true if the preferred size has been set to a non- null value otherwise returns false. |
protected boolean |
isTranslationChanged()
Gets whether the translation was changed. |
boolean |
isTranslationEnabled()
Gets whether the translation is en- or disabled. |
boolean |
isVisible()
Determines whether this component should be visible when its parent is visible. |
void |
removeNotify()
Makes this UIComponent undisplayable by removing it to an UIContainer. |
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(int pX,
int pY,
int pWidth,
int pHeight)
Set the bounds with primitive types. |
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 |
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 |
setLocation(int pX,
int pY)
Set the location with primitive types. |
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 |
setMaximumSize(int pWidth,
int pHeight)
Set the maximum size with primitive types. |
void |
setMinimumSize(IDimension pMinimumSize)
Sets the minimum size of this component to a constant value. |
void |
setMinimumSize(int pWidth,
int pHeight)
Set the minimum size with primitive types. |
void |
setName(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 |
setPreferredSize(int pWidth,
int pHeight)
Set the preferred size with primitive types. |
void |
setSize(IDimension pSize)
Resizes this component so that it has width d.width
and height d.height. |
void |
setSize(int pWidth,
int pHeight)
Set the size with primitive types. |
void |
setToolTipText(String pText)
Registers the text to display in a tool tip. |
void |
setTranslation(TranslationMap pTranslation)
Sets the possible translations for this UIComponent. |
void |
setTranslationEnabled(boolean pEnabled)
Sets the translation en- or disabled for this component. |
void |
setVisible(boolean pVisible)
Shows or hides this component depending on the value of parameter b. |
String |
translate(String pText)
Translates the given text with the avaliable translation. |
void |
updateTranslation()
Notification for updating the translation. |
| Methods inherited from class javax.rad.genui.UIResource |
|---|
equals, getUIResource, hashCode, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected IContainer parent
protected long lLastTranslationModified
| Constructor Detail |
|---|
protected UIComponent(C pComponent)
UIComponent.
pComponent - the Component.IComponent| Method Detail |
|---|
public String getName()
getName in interface IComponentgetName in interface INamedObjectIComponent.setName(java.lang.String)public void setName(String pName)
setName in interface IComponentsetName in interface INamedObjectpName - the string that is to be this
component's nameIComponent.getName()public IFactory getFactory()
getFactory in interface IComponentpublic IDimension getPreferredSize()
getPreferredSize in interface IComponentIDimension object indicating this component's preferred sizeIComponent.getMinimumSize(),
LayoutManagerpublic void setPreferredSize(IDimension pPreferredSize)
getPreferredSize will always
return this value. Setting the preferred size to null
restores the default behavior.
setPreferredSize in interface IComponentpPreferredSize - the new preferred size, or nullIComponent.getPreferredSize(),
IComponent.isPreferredSizeSet()
public void setPreferredSize(int pWidth,
int pHeight)
pWidth - the width.pHeight - the height.public boolean isPreferredSizeSet()
null value otherwise returns false.
isPreferredSizeSet in interface IComponentsetPreferredSize has been invoked
with a non-null value.public IDimension getMinimumSize()
getMinimumSize in interface IComponentIDimension object indicating this component's minimum sizeIComponent.getPreferredSize(),
LayoutManagerpublic void setMinimumSize(IDimension pMinimumSize)
getMinimumSize will always
return this value. Setting the minimum size to null
restores the default behavior.
setMinimumSize in interface IComponentpMinimumSize - the new minimum size of this componentIComponent.getMinimumSize(),
IComponent.isMinimumSizeSet()
public void setMinimumSize(int pWidth,
int pHeight)
pWidth - the width.pHeight - the height.public boolean isMinimumSizeSet()
setMinimumSize has been
invoked with a non-null value.
isMinimumSizeSet in interface IComponentsetMinimumSize has been invoked with a
non-null value.public IDimension getMaximumSize()
getMaximumSize in interface IComponentIDimension object indicating this component's maximum sizeIComponent.getMinimumSize(),
IComponent.getPreferredSize(),
LayoutManagerpublic void setMaximumSize(IDimension pMaximumSize)
getMaximumSize will always
return this value. Setting the maximum size to null
restores the default behavior.
setMaximumSize in interface IComponentpMaximumSize - a IDimension containing the
desired maximum allowable sizeIComponent.getMaximumSize(),
IComponent.isMaximumSizeSet()
public void setMaximumSize(int pWidth,
int pHeight)
pWidth - the width.pHeight - the height.public boolean isMaximumSizeSet()
null
value otherwise returns false.
isMaximumSizeSet in interface IComponentmaximumSize is non-null,
false otherwisepublic IColor getBackground()
getBackground in interface IComponentIComponent.setBackground(javax.rad.ui.IColor)public void setBackground(IColor pBackground)
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.
setBackground in interface IComponentpBackground - the color to become this component's color;
if this parameter is null, then this
component will inherit the background color of its parentIComponent.getBackground()public boolean isBackgroundSet()
false, this Component is
inheriting its background color from an ancestor.
isBackgroundSet in interface IComponenttrue if the background color has been explicitly
set for this Component; false otherwise.public IColor getForeground()
getForeground in interface IComponentIComponent.setForeground(javax.rad.ui.IColor)public void setForeground(IColor pForeground)
setForeground in interface IComponentpForeground - the color to become this component's
foreground color; if this parameter is null
then this component will inherit the foreground color of
its parentIComponent.getForeground()public boolean isForegroundSet()
false, this Component is
inheriting its foreground color from an ancestor.
isForegroundSet in interface IComponenttrue if the foreground color has been explicitly
set for this Component; false otherwise.public ICursor getCursor()
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.
getCursor in interface IComponentICursor set in the componentIComponent.setCursor(javax.rad.ui.ICursor)public void setCursor(ICursor pCursor)
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.
setCursor in interface IComponentpCursor - One of the constants defined by the Cursor
class; if this parameter is null then this component
will inherit the cursor of its parentIComponent.isEnabled(),
IComponent.getCursor(),
Toolkit.createCustomCursor(java.awt.Image, java.awt.Point, java.lang.String),
ICursorpublic boolean isCursorSet()
false, this Component is inheriting
its cursor from an ancestor.
isCursorSet in interface IComponenttrue if the cursor has been explicitly set for this
Component; false otherwise.public IFont getFont()
getFont in interface IComponentIComponent.setFont(javax.rad.ui.IFont)public void setFont(IFont pFont)
IFont of this component.
setFont in interface IComponentpFont - the IFont to become this component's font;
if this parameter is null then this
component will inherit the font of its parentIComponent.getFont()public boolean isFontSet()
false, this Component is inheriting its
font from an ancestor.
isFontSet in interface IComponenttrue if the font has been explicitly set for this
Component; false otherwise.public String getToolTipText()
setToolTipText.
getToolTipText in interface IComponentIComponent.setToolTipText(String)public void setToolTipText(String pText)
setToolTipText in interface IComponentpText - the string to display; if the text is null,
the tool tip is turned off for this componentpublic void setFocusable(boolean pFocusable)
setFocusable in interface IComponentpFocusable - indicates whether this Component is focusablepublic boolean isFocusable()
isFocusable in interface IComponenttrue if this Component is focusable,
false otherwise.public void requestFocus()
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.
requestFocus in interface IComponentpublic IContainer getParent()
getParent in interface IComponentpublic void setParent(IContainer pParent)
setParent in interface IComponentpParent - the parent container of this componentpublic boolean isVisible()
Frame objects.
isVisible in interface IComponenttrue if the component is visible,
false otherwiseIComponent.setVisible(boolean)public void setVisible(boolean pVisible)
b.
setVisible in interface IComponentpVisible - if true, shows this component; otherwise,
hides this componentIComponent.isVisible()public void setEnabled(boolean pEnable)
pEnable. An enabled component can respond to user
input and generate events. Components are enabled initially by default.
setEnabled in interface IComponentpEnable - if true, this component is
enabled; otherwise this component is disabledIComponent.isEnabled()public boolean isEnabled()
setEnabled method.
isEnabled in interface IComponenttrue if the component is enabled, false otherwiseIComponent.setEnabled(boolean)public IPoint getLocationRelativeTo(IComponent pComponent)
getLocationRelativeTo in interface IComponentpComponent - the component in relation to which the window's location is determined.
public void setLocationRelativeTo(IComponent pComponent,
IPoint pLocation)
setLocationRelativeTo in interface IComponentpComponent - the component in relation to which the window's location is determined.pLocation - the location.public IPoint getLocation()
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.
getLocation in interface IComponentIPoint representing
the top-left corner of the component's bounds in
the coordinate space of the component's parentIComponent.setLocation(IPoint)public void setLocation(IPoint pLocation)
p. Point
p is given in the parent's coordinate space.
setLocation in interface IComponentpLocation - the point defining the top-left corner
of the new location, given in the coordinate space of this
component's parentIComponent.getLocation(),
IComponent.setBounds(IRectangle)
public void setLocation(int pX,
int pY)
pX - the width.pY - the width.public IDimension getSize()
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.
getSize in interface IComponentIDimension object that indicates the
size of this componentIComponent.setSize(javax.rad.ui.IDimension)public void setSize(IDimension pSize)
d.width
and height d.height.
setSize in interface IComponentpSize - the IDimension specifying the new size
of this componentIComponent.setSize(javax.rad.ui.IDimension),
IComponent.setBounds(javax.rad.ui.IRectangle)
public void setSize(int pWidth,
int pHeight)
pWidth - the width.pHeight - the height.public IRectangle getBounds()
IRectangle object. The bounds specify this
component's width, height, and location relative to
its parent.
getBounds in interface IComponentIComponent.setBounds(javax.rad.ui.IRectangle),
IComponent.getLocation(),
IComponent.getSize()public void setBounds(IRectangle pBounds)
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
setBounds in interface IComponentpBounds - the new bounding rectangle for this componentIComponent.getBounds(),
IComponent.setLocation(IPoint),
IComponent.setSize(IDimension)
public void setBounds(int pX,
int pY,
int pWidth,
int pHeight)
pX - the width.pY - the width.pWidth - the width.pHeight - the height.public Object getResource()
getResource in interface IResourcegetResource in class UIResource<C extends IComponent>public IComponent getEventSource()
getEventSource in interface IComponentpublic void setEventSource(IComponent pEventSource)
setEventSource in interface IComponentpEventSource - the event sourcepublic MouseHandler eventMousePressed()
eventMousePressed in interface IComponentpublic MouseHandler eventMouseReleased()
eventMouseReleased in interface IComponentpublic MouseHandler eventMouseClicked()
eventMouseClicked in interface IComponentpublic MouseHandler eventMouseEntered()
eventMouseEntered in interface IComponentpublic MouseHandler eventMouseExited()
eventMouseExited in interface IComponentpublic KeyHandler eventKeyPressed()
eventKeyPressed in interface IComponentpublic KeyHandler eventKeyReleased()
eventKeyReleased in interface IComponentpublic KeyHandler eventKeyTyped()
eventKeyTyped in interface IComponentpublic ComponentHandler eventComponentResized()
eventComponentResized in interface IComponentpublic ComponentHandler eventComponentMoved()
eventComponentMoved in interface IComponent
public IImage capture(int iWidth,
int iHeight)
capture in interface IComponentiWidth - the expected widthiHeight - the expected height
public static void invokeLater(Runnable pRunnable)
pRunnable.run() to be executed asynchronously on the event dispatching thread.
This will happen after all pending events have been processed. This method
should be used when an application thread needs to update the GUI.
pRunnable - the asynchronous callinvokeAndWait(Runnable)
public static void invokeLater(Object pObject,
String pMethod)
pRunnable.run() to be executed asynchronously on the event dispatching thread.
This will happen after all pending events have been processed. This method
should be used when an application thread needs to update the GUI.
pObject - the objectpMethod - the asynchronous callinvokeAndWait(Runnable)
public static void invokeAndWait(Runnable pRunnable)
throws Exception
pRunnable.run() to be executed synchronously on the event dispatching thread. This call blocks
until all pending events have been processed and (then) pRunnable.run() returns.
This method should be used when an application thread needs to update the GUI.
pRunnable - the call
Exception - if the call caueses an exception
public static void invokeAndWait(Object pRunnable,
String pMethod)
throws Exception
pRunnable.run() to be executed synchronously on the event dispatching thread. This call blocks
until all pending events have been processed and (then) pRunnable.run() returns.
This method should be used when an application thread needs to update the GUI.
pRunnable - the objectpMethod - the call
Exception - if the call caueses an exceptionpublic static void invokeInThread(Runnable pRunnable)
pRunnable.run() to be executed asynchronously in a new thread.
Action calls and UI Calls in the thread should be synchronized with the event dispatching thread
by using invokeLater or invokeAndWait.
This gives the IFactory implementation a chance to decide how and when to run the threads.
pRunnable - the call
public static void invokeInThread(Object pRunnable,
String pMethod)
pRunnable.run() to be executed asynchronously in a new thread.
Action calls and UI Calls in the thread should be synchronized with the event dispatching thread
by using invokeLater or invokeAndWait.
This gives the IFactory implementation a chance to decide how and when to run the threads.
pRunnable - the objectpMethod - the call
public static ICellFormatter createCellFormatter(Object pCellFormatter,
String pMethodName)
pCellFormatter - the object.pMethodName - the method name.
public static INodeFormatter createNodeFormatter(Object pNodeFormatter,
String pMethodName)
pNodeFormatter - the object.pMethodName - the method name.
protected IComponent getComponentUIResource()
UIContainer instead
of this component. Thats needed to create complex Controls.
Example Control: an extended Table Control with Toolbar.
So a ToolbarPanel with Table inside ->
Table is uiResource,
ToolbarPanel is the componentUIResource
The ToolbarPanel is used for add, so visibility, location, bounds, ... should address the componentUIResource
The Table is the control, so focus, enable, font, ... should address the uiResource.
public void debug(Object... pInfo)
pInfo - the debug informationpublic void info(Object... pInfo)
pInfo - the informationpublic void error(Object... pInfo)
pInfo - the error informationpublic void beforeAddNotify(IComponent pParent)
pParent - the parentpublic boolean isBeforeNotified()
true this component is notified, false otherwisepublic void addNotify()
UIComponent displayable by adding it to an UIContainer.
This method is called internally by the genui and should not be called directly.
removeNotify(),
isNotified()public boolean isNotified()
UIComponent is displayable. A component is
displayable when it is added to an UIContainer.
An UIComponent is made displayable either when it is added to
a displayable containment hierarchy or when its containment
hierarchy is made displayable.
A containment hierarchy is made displayable when its ancestor
UIWindow is either packed or made visible.
An UIComponent is made undisplayable either when it is removed from
a displayable containment hierarchy or when its containment hierarchy
is made undisplayable. A containment hierarchy is made
undisplayable when its ancestor UIWindow is disposed.
true if the component is displayable, false otherwiseUIContainer.add(IComponent, Object, int),
UIContainer.remove(int),
AbstractWindow.setVisible(boolean),
AbstractWindow.pack(),
AbstractWindow.dispose()public void removeNotify()
UIComponent undisplayable by removing it to an UIContainer.
This method is called by the genui internally and should not be called directly.
Code overriding this method should call super.removeNotify as the first line
of the overriding method.
addNotify(),
isNotified()public void setTranslation(TranslationMap pTranslation)
UIComponent.
setTranslation in interface ITranslatablepTranslation - the translation mappingpublic TranslationMap getTranslation()
UIComponent.
getTranslation in interface ITranslatablepublic void setTranslationEnabled(boolean pEnabled)
pEnabled - true to enable the translation, false to disablepublic boolean isTranslationEnabled()
true if translation is performed, false otherwiseprotected TranslationMap getCurrentTranslation()
UIComponent.
public String translate(String pText)
pText - the text to translate
pText if no translation was foundpublic void updateTranslation()
UIComponent will be added to a displayable containment hierarchy,
when its containment hierarchy is made displayable or the translation table will
be changed.
setTranslation(TranslationMap),
addNotify()protected boolean isTranslationChanged()
true if translation was changed, false otherwise
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||