|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.vaadin.ui.AbstractComponent
public abstract class AbstractComponent
An abstract class that defines default implementation for the
Component
interface. Basic UI components that are not derived from an
external component can inherit this class to easily qualify as Vaadin
components. Most components in Vaadin do just that.
Nested Class Summary | |
---|---|
static interface |
AbstractComponent.ComponentErrorEvent
|
static interface |
AbstractComponent.ComponentErrorHandler
|
Nested classes/interfaces inherited from interface com.vaadin.ui.Component |
---|
Component.ErrorEvent, Component.ErrorListener, Component.Event, Component.Focusable, Component.Listener |
Nested classes/interfaces inherited from interface com.vaadin.terminal.Paintable |
---|
Paintable.RepaintRequestEvent, Paintable.RepaintRequestListener |
Field Summary |
---|
Fields inherited from interface com.vaadin.terminal.Sizeable |
---|
SIZE_UNDEFINED, UNIT_SYMBOLS, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS |
Constructor Summary | |
---|---|
AbstractComponent()
Constructs a new Component. |
Method Summary | |
---|---|
void |
addListener(Class<?> eventType,
Object target,
Method method)
Registers a new listener with the specified activation method to listen events generated by this component. |
void |
addListener(Class<?> eventType,
Object target,
String methodName)
Convenience method for registering a new listener with the specified activation method to listen events generated by this component. |
void |
addListener(Component.Listener listener)
Registers a new (generic) component event listener for the component. |
void |
addListener(Paintable.RepaintRequestListener listener)
Adds repaint request listener. |
protected void |
addListener(String eventIdentifier,
Class<?> eventType,
Object target,
Method method)
Registers a new listener with the specified activation method to listen events generated by this component. |
void |
addStyleName(String style)
Adds a style name to component. |
void |
attach()
Notifies the component that it is connected to an application. |
void |
changeVariables(Object source,
Map<String,Object> variables)
Called when one or more variables handled by the implementing class are changed. |
void |
childRequestedRepaint(Collection<Paintable.RepaintRequestListener> alreadyNotified)
The child components of the component must call this method when they need repainting. |
void |
detach()
Notifies the component that it is detached from the application. |
protected void |
fireComponentErrorEvent()
Emits the component error event. |
protected void |
fireComponentEvent()
Emits the component event. |
protected void |
fireEvent(Component.Event event)
Sends the event to all listeners. |
protected void |
focus()
Sets the focus for this component if the component is Focusable . |
Application |
getApplication()
Gets the application object to which the component is attached. |
String |
getCaption()
Gets the caption of the component. |
ErrorMessage |
getComponentError()
Gets the component's error message. |
Object |
getData()
Gets the application specific data. |
String |
getDebugId()
Get's currently set debug identifier |
String |
getDescription()
Gets the component's description, used in tooltips and can be displayed directly in certain other components such as forms. |
AbstractComponent.ComponentErrorHandler |
getErrorHandler()
Gets the error handler for the component. |
ErrorMessage |
getErrorMessage()
Gets the error message for this component. |
float |
getHeight()
Gets the height of the object. |
int |
getHeightUnits()
Gets the height property units. |
Resource |
getIcon()
Gets the icon resource of the component. |
Collection<?> |
getListeners(Class<?> eventType)
Returns all listeners that are registered for the given event type or one of its subclasses. |
Locale |
getLocale()
Gets the locale of the component. |
Component |
getParent()
Gets the parent component of the component. |
String |
getStyle()
Deprecated. Use getStyleName() instead; renamed for consistency and to indicate that "style" should not be used to switch client side implementation, only to style the component. |
String |
getStyleName()
Gets all user-defined CSS style names of a component. |
float |
getWidth()
Gets the width of the object. |
int |
getWidthUnits()
Gets the width property units. |
Window |
getWindow()
Gets the parent window of the component. |
boolean |
handleError(AbstractComponent.ComponentErrorEvent error)
Handle the component error event. |
protected boolean |
hasListeners(Class<?> eventType)
Checks if the given AbstractComponent.ComponentErrorEvent type is listened for this component. |
boolean |
isEnabled()
Tests if the variable owner is enabled or not. |
boolean |
isImmediate()
Tests if the variable owner is in immediate mode or not. |
boolean |
isReadOnly()
Tests whether the component is in the read-only mode. |
boolean |
isVisible()
Tests the visibility property of the component. |
void |
paint(PaintTarget target)
Paints the Paintable into a UIDL stream. |
void |
paintContent(PaintTarget target)
Paints any needed component-specific things to the given UIDL stream. |
void |
removeListener(Class<?> eventType,
Object target)
Removes all registered listeners matching the given parameters. |
void |
removeListener(Class<?> eventType,
Object target,
Method method)
Removes one registered listener method. |
void |
removeListener(Class<?> eventType,
Object target,
String methodName)
Removes one registered listener method. |
void |
removeListener(Component.Listener listener)
Removes a previously registered component event listener from this component. |
void |
removeListener(Paintable.RepaintRequestListener listener)
Removes repaint request listener. |
protected void |
removeListener(String eventIdentifier,
Class<?> eventType,
Object target)
Removes all registered listeners matching the given parameters. |
void |
removeStyleName(String style)
Removes one or more style names from component. |
void |
requestRepaint()
Requests that the paintable should be repainted as soon as possible. |
void |
requestRepaintRequests()
Request sending of repaint events on any further visible changes. |
void |
setCaption(String caption)
Sets the component's caption String . |
void |
setComponentError(ErrorMessage componentError)
Sets the component's error message. |
void |
setData(Object data)
Sets the data object, that can be used for any application specific data. |
void |
setDebugId(String id)
Adds an unique id for component that get's transferred to terminal for testing purposes. |
void |
setDescription(String description)
Sets the component's description. |
void |
setEnabled(boolean enabled)
Enables or disables the component. |
void |
setErrorHandler(AbstractComponent.ComponentErrorHandler errorHandler)
Sets the error handler for the component. |
void |
setHeight(float height)
Deprecated. |
void |
setHeight(float height,
int unit)
Sets the height of the object. |
void |
setHeight(String height)
Sets the height of the component using String presentation. |
void |
setHeightUnits(int unit)
Deprecated. |
void |
setIcon(Resource icon)
Sets the component's icon. |
void |
setImmediate(boolean immediate)
Sets the component's immediate mode to the specified status. |
void |
setLocale(Locale locale)
Sets the locale of this component. |
void |
setParent(Component parent)
Sets the parent component of the component. |
void |
setReadOnly(boolean readOnly)
Sets the read-only mode of the component to the specified mode. |
void |
setSizeFull()
Sets the size to 100% x 100%. |
void |
setSizeUndefined()
Clears any size settings. |
void |
setStyle(String style)
Deprecated. Use setStyleName() instead; renamed for consistency and to indicate that "style" should not be used to switch client side implementation, only to style the component. |
void |
setStyleName(String style)
Sets one or more user-defined style names of the component, replacing any previous user-defined styles. |
void |
setVisible(boolean visible)
Sets the visibility of the component. |
void |
setWidth(float width)
Deprecated. |
void |
setWidth(float width,
int unit)
Sets the width of the object. |
void |
setWidth(String width)
Sets the width of the component using String presentation. |
void |
setWidthUnits(int unit)
Deprecated. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AbstractComponent()
Method Detail |
---|
public void setDebugId(String id)
Paintable
Note, that with the current terminal implementation the identifier cannot be changed while the component is visible. This means that the identifier should be set before the component is painted for the first time and kept the same while visible in the client.
setDebugId
in interface Paintable
id
- A short (< 20 chars) alphanumeric idpublic String getDebugId()
Paintable
getDebugId
in interface Paintable
@Deprecated public String getStyle()
@Deprecated public void setStyle(String style)
RepaintRequestEvent
.
style
- the new style of the component.public String getStyleName()
Component
The style names are returned only in the basic form in which they were added; each user-defined style name shows as two CSS style class names in the rendered HTML: one as it was given and one prefixed with the component-specific style name. Only the former is returned.
getStyleName
in interface Component
Component.setStyleName(String)
,
Component.addStyleName(String)
,
Component.removeStyleName(String)
public void setStyleName(String style)
Component
Label label = new Label("This text has a lot of style"); label.setStyleName("myonestyle myotherstyle");
Each style name will occur in two versions: one as specified and one that
is prefixed with the style name of the component. For example, if you
have a Button
component and give it "mystyle
" style, the
component will have both "mystyle
" and "v-button-mystyle
"
styles. You could then style the component either with:
.myonestyle {background: blue;}
or
.v-button-myonestyle {background: blue;}
It is normally a good practice to use addStyleName()
rather than this setter, as different software
abstraction layers can then add their own styles without accidentally
removing those defined in other layers.
This method will trigger a
RepaintRequestEvent
.
setStyleName
in interface Component
style
- the new style or styles of the component as a space-separated
listComponent.getStyleName()
,
Component.addStyleName(String)
,
Component.removeStyleName(String)
public void addStyleName(String style)
Component
Label label = new Label("This text has style"); label.addStyleName("mystyle");
Each style name will occur in two versions: one as specified and one that
is prefixed wil the style name of the component. For example, if you have
a Button
component and give it "mystyle
" style, the
component will have both "mystyle
" and "v-button-mystyle
"
styles. You could then style the component either with:
.mystyle {font-style: italic;}
or
.v-button-mystyle {font-style: italic;}
This method will trigger a
RepaintRequestEvent
.
addStyleName
in interface Component
style
- the new style to be added to the componentComponent.getStyleName()
,
Component.setStyleName(String)
,
Component.removeStyleName(String)
public void removeStyleName(String style)
Component
The parameter must be a valid CSS style name. Only user-defined style
names added with addStyleName()
or
setStyleName()
can be removed; built-in
style names defined in Vaadin or GWT can not be removed.
RepaintRequestEvent
.
removeStyleName
in interface Component
style
- the style name or style names to be removedComponent.getStyleName()
,
Component.setStyleName(String)
,
Component.addStyleName(String)
public String getCaption()
Component
See Component.setCaption(String)
for a detailed description of the
caption.
getCaption
in interface Component
null
if the caption is
not set.Component.setCaption(String)
public void setCaption(String caption)
String
. Caption is the visible
name of the component. This method will trigger a
RepaintRequestEvent
.
setCaption
in interface Component
caption
- the new caption String
for the component.public Locale getLocale()
Component
If a component does not have a locale set, the locale of its parent is
returned, and so on. Eventually, if no parent has locale set, the locale
of the application is returned. If the application does not have a locale
set, it is determined by Locale.getDefault()
.
As the component must be attached before its locale can be acquired, using this method in the internationalization of component captions, etc. is generally not feasible. For such use case, we recommend using an otherwise acquired reference to the application locale.
getLocale
in interface Component
null
if the component and
none of its parents has a locale set and the component is not yet
attached to an application.public void setLocale(Locale locale)
// Component for which the locale is meaningful InlineDateField date = new InlineDateField("Datum"); // German language specified with ISO 639-1 language // code and ISO 3166-1 alpha-2 country code. date.setLocale(new Locale("de", "DE")); date.setResolution(DateField.RESOLUTION_DAY); layout.addComponent(date);
locale
- the locale to become this component's locale.public Resource getIcon()
Component
See Component.setIcon(Resource)
for a detailed description of the icon.
getIcon
in interface Component
null
if the
component has no iconComponent.setIcon(Resource)
public void setIcon(Resource icon)
RepaintRequestEvent
.
setIcon
in interface Component
icon
- the icon to be shown with the component's caption.Component.getIcon()
,
Component.setCaption(String)
public boolean isEnabled()
VariableOwner
Tests if the variable owner is enabled or not. The terminal should not send any variable changes to disabled variable owners.
isEnabled
in interface VariableOwner
isEnabled
in interface Component
true
if the variable owner is enabled,
false
if notVariableOwner.isEnabled()
public void setEnabled(boolean enabled)
Component
Button enabled = new Button("Enabled"); enabled.setEnabled(true); // The default layout.addComponent(enabled); Button disabled = new Button("Disabled"); disabled.setEnabled(false); layout.addComponent(disabled);
This method will trigger a
RepaintRequestEvent
for the component and, if it is a
ComponentContainer
, for all its children recursively.
setEnabled
in interface Component
enabled
- a boolean value specifying if the component should be enabled
or notpublic boolean isImmediate()
VariableOwner
Tests if the variable owner is in immediate mode or not. Being in immediate mode means that all variable changes are required to be sent back from the terminal immediately when they occur.
Note: VariableOwner
does not include a set-
method for the immediateness property. This is because not all
VariableOwners wish to offer the functionality. Such VariableOwners are
never in the immediate mode, thus they always return false
in VariableOwner.isImmediate()
.
isImmediate
in interface VariableOwner
true
if the component is in immediate mode,
false
if not.public void setImmediate(boolean immediate)
RepaintRequestEvent
.
immediate
- the boolean value specifying if the component should be in the
immediate mode after the call.VariableOwner.isImmediate()
public boolean isVisible()
Component
Visible components are drawn in the user interface, while invisible ones are not. The effect is not merely a cosmetic CSS change, but the entire HTML element will be empty. Making a component invisible through this property can alter the positioning of other components.
A component is visible only if all its parents are also visible. Notice that if a child component is explicitly set as invisible, changes in the visibility status of its parents do not change its status.
This method does not check whether the component is attached (see
Component.attach()
). The component and all its parents may be considered
"visible", but not necessarily attached to application. To test if
component will actually be drawn, check both its visibility and that
Component.getApplication()
does not return null
.
isVisible
in interface Component
true
if the component is visible in the user
interface, false
if notComponent.setVisible(boolean)
,
Component.attach()
public void setVisible(boolean visible)
Component
Visible components are drawn in the user interface, while invisible ones are not. The effect is not merely a cosmetic CSS change, but the entire HTML element will be empty.
TextField readonly = new TextField("Read-Only"); readonly.setValue("You can't see this!"); readonly.setVisible(false); layout.addComponent(readonly);
A component is visible only if all of its parents are also visible. If a component is explicitly set to be invisible, changes in the visibility of its parents will not change the visibility of the component.
setVisible
in interface Component
visible
- the boolean value specifying if the component should be
visible after the call or not.Component.isVisible()
public String getDescription()
Gets the component's description, used in tooltips and can be displayed directly in certain other components such as forms. The description can be used to briefly describe the state of the component to the user. The description string may contain certain XML tags:
Tag | Description | Example |
<b> | bold | bold text |
<i> | italic | italic text |
<u> | underlined | underlined text |
<br> | linebreak | N/A |
<ul> <li>item1 <li>item1 </ul> |
item list |
|
These tags may be nested.
String
public void setDescription(String description)
getDescription()
for more
information on what the description is. This method will trigger a
RepaintRequestEvent
.
The description is displayed as HTML/XHTML in tooltips or directly in
certain components so care should be taken to avoid creating the
possibility for HTML injection and possibly XSS vulnerabilities.
description
- the new description string for the component.public Component getParent()
Component
Components can be nested but a component can have only one parent. A
component that contains other components, that is, can be a parent,
should usually inherit the ComponentContainer
interface.
getParent
in interface Component
Component.setParent(Component)
public void setParent(Component parent)
Component
This method automatically calls Component.attach()
if the parent becomes
attached to the application, regardless of whether it was attached
previously. Conversely, if the parent is null
and the component
is attached to the application, Component.detach()
is called for the
component.
This method is rarely called directly. The
ComponentContainer.addComponent(Component)
method is normally
used for adding components to a container and it will call this method
implicitly.
It is not possible to change the parent without first setting the parent
to null
.
setParent
in interface Component
parent
- the parent componentpublic ErrorMessage getErrorMessage()
public ErrorMessage getComponentError()
public void setComponentError(ErrorMessage componentError)
componentError
- the new ErrorMessage
of the component.public boolean isReadOnly()
Component
Field
components normally have a value that can be input or changed by the
user, this is mostly relevant only to field components, though not
restricted to them.
Notice that the read-only mode only affects whether the user can change the value of the component; it is possible to, for example, scroll a read-only table.
The method will return true
if the component or any of its
parents is in the read-only mode.
isReadOnly
in interface Component
true
if the component or any of its parents is in
read-only mode, false
if not.Component.setReadOnly(boolean)
public void setReadOnly(boolean readOnly)
Component
As only Field
components normally have a value that can be input
or changed by the user, this is mostly relevant only to field components,
though not restricted to them.
Notice that the read-only mode only affects whether the user can change the value of the component; it is possible to, for example, scroll a read-only table.
This method will trigger a
RepaintRequestEvent
.
setReadOnly
in interface Component
readOnly
- a boolean value specifying whether the component is put
read-only mode or notpublic Window getWindow()
Component
If the component is not attached to a window through a component
containment hierarchy, null
is returned.
The window can be either an application-level window or a sub-window. If the component is itself a window, it returns a reference to itself, not to its containing window (of a sub-window).
getWindow
in interface Component
null
if it is
not attached to a window or is itself a windowpublic void attach()
Component
The caller of this method is Component.setParent(Component)
if the parent
is itself already attached to the application. If not, the parent will
call the Component.attach()
for all its children when it is attached to
the application. This method is always called before the component is
painted for the first time.
Reimplementing the attach()
method is useful for tasks that need
to get a reference to the parent, window, or application object with the
Component.getParent()
, Component.getWindow()
, and Component.getApplication()
methods. A component does not yet know these objects in the constructor,
so in such case, the methods will return null
. For example, the
following is invalid:
public class AttachExample extends CustomComponent { public AttachExample() { // ERROR: We can't access the application object yet. ClassResource r = new ClassResource("smiley.jpg", getApplication()); Embedded image = new Embedded("Image:", r); setCompositionRoot(image); } }
Adding a component to an application triggers calling the
Component.attach()
method for the component. Correspondingly, removing a
component from a container triggers calling the Component.detach()
method.
If the parent of an added component is already connected to the
application, the attach()
is called immediately from
Component.setParent(Component)
.
public class AttachExample extends CustomComponent { public AttachExample() { } @Override public void attach() { super.attach(); // Must call. // Now we know who ultimately owns us. ClassResource r = new ClassResource("smiley.jpg", getApplication()); Embedded image = new Embedded("Image:", r); setCompositionRoot(image); } }
The attachment logic is implemented in AbstractComponent
.
attach
in interface Component
Component.getApplication()
public void detach()
Component
The Component.getApplication()
and Component.getWindow()
methods might
return null
after this method is called.
The caller of this method is Component.setParent(Component)
if the parent
is in the application. When the parent is detached from the application
it is its response to call Component.detach()
for all the children and to
detach itself from the terminal.
detach
in interface Component
protected void focus()
Focusable
.
public Application getApplication()
The method will return null
if the component is not currently
attached to an application. This is often a problem in constructors of
regular components and in the initializers of custom composite
components. A standard workaround is to move the problematic
initialization to attach()
, as described in the documentation of
the method.
This method is not meant to be overridden. Due to CDI requirements we cannot declare it as final even though it should be final.
getApplication
in interface Component
null
.attach()
public void requestRepaintRequests()
Paintable
This method is normally used only by the terminals to note paintables about implicit repaints (painting the component without actually invoking paint method).
requestRepaintRequests
in interface Paintable
public void paint(PaintTarget target) throws PaintException
Paints the Paintable into a UIDL stream. This method creates the UIDL sequence describing it and outputs it to the given UIDL stream.
It is called when the contents of the component should be painted in response to the component first being shown or having been altered so that its visual representation is changed.
Do not override this to paint your component. Override
paintContent(PaintTarget)
instead.
paint
in interface Paintable
target
- the target UIDL stream where the component should paint itself
to.
PaintException
- if the paint operation failed.public void paintContent(PaintTarget target) throws PaintException
paint(PaintTarget)
method handles all general
attributes common to all components, and it calls this method to paint
any component-specific attributes to the UIDL stream.
target
- the target UIDL stream where the component should paint itself
to
PaintException
- if the paint operation failed.public void requestRepaint()
Paintable
requestRepaint
in interface Paintable
public void childRequestedRepaint(Collection<Paintable.RepaintRequestListener> alreadyNotified)
Component
A repaint request is ignored if the component is invisible.
This method is called automatically by AbstractComponent
, which
also provides a default implementation of it. As this is a somewhat
internal feature, it is rarely necessary to reimplement this or call it
explicitly.
childRequestedRepaint
in interface Component
alreadyNotified
- the collection of repaint request listeners that have been
already notified by the child. This component should not
re-notify the listed listeners again. The container given as
parameter must be modifiable as the component might modify it
and pass it forward. A null
parameter is interpreted
as an empty collection.public void addListener(Paintable.RepaintRequestListener listener)
Paintable
addListener
in interface Paintable
listener
- the listener to be added.public void removeListener(Paintable.RepaintRequestListener listener)
Paintable
removeListener
in interface Paintable
listener
- the listener to be removed.public void changeVariables(Object source, Map<String,Object> variables)
VariableOwner
changeVariables
in interface VariableOwner
source
- the Source of the variable change. This is the origin of the
event. For example in Web Adapter this is the request.variables
- the Mapping from variable names to new variable values.protected void addListener(String eventIdentifier, Class<?> eventType, Object target, Method method)
Registers a new listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.
This method additionally informs the event-api to route events with the given eventIdentifier to the components handleEvent function call.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
eventIdentifier
- the identifier of the event to listen foreventType
- the type of the listened event. Events of this type or its
subclasses activate the listener.target
- the object instance who owns the activation method.method
- the activation method.protected boolean hasListeners(Class<?> eventType)
AbstractComponent.ComponentErrorEvent
type is listened for this component.
eventType
- the event type to be checked
protected void removeListener(String eventIdentifier, Class<?> eventType, Object target)
object
's methods that are
registered to listen to events of type eventType
generated
by this component.
This method additionally informs the event-api to stop routing events with the given eventIdentifier to the components handleEvent function call.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
eventIdentifier
- the identifier of the event to stop listening foreventType
- the exact event type the object
listens to.target
- the target object that has registered to listen to events of
type eventType
with one or more methods.public void addListener(Class<?> eventType, Object target, Method method)
Registers a new listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
addListener
in interface MethodEventSource
eventType
- the type of the listened event. Events of this type or its
subclasses activate the listener.target
- the object instance who owns the activation method.method
- the activation method.public void addListener(Class<?> eventType, Object target, String methodName)
Convenience method for registering a new listener with the specified activation method to listen events generated by this component. If the activation method does not have any arguments the event object will not be passed to it when it's called.
This version of addListener
gets the name of the activation
method as a parameter. The actual method is reflected from
object
, and unless exactly one match is found,
java.lang.IllegalArgumentException
is thrown.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
Note: Using this method is discouraged because it cannot be checked
during compilation. Use addListener(Class, Object, Method)
or
addListener(com.vaadin.ui.Component.Listener)
instead.
addListener
in interface MethodEventSource
eventType
- the type of the listened event. Events of this type or its
subclasses activate the listener.target
- the object instance who owns the activation method.methodName
- the name of the activation method.public void removeListener(Class<?> eventType, Object target)
object
's methods that are
registered to listen to events of type eventType
generated
by this component.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
removeListener
in interface MethodEventSource
eventType
- the exact event type the object
listens to.target
- the target object that has registered to listen to events of
type eventType
with one or more methods.public void removeListener(Class<?> eventType, Object target, Method method)
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
removeListener
in interface MethodEventSource
eventType
- the exact event type the object
listens to.target
- target object that has registered to listen to events of type
eventType
with one or more methods.method
- the method owned by target
that's registered to
listen to events of type eventType
.public void removeListener(Class<?> eventType, Object target, String methodName)
Removes one registered listener method. The given method owned by the given object will no longer be called when the specified events are generated by this component.
This version of removeListener
gets the name of the
activation method as a parameter. The actual method is reflected from
target
, and unless exactly one match is found,
java.lang.IllegalArgumentException
is thrown.
For more information on the inheritable event mechanism see the
com.vaadin.event package documentation
.
removeListener
in interface MethodEventSource
eventType
- the exact event type the object
listens to.target
- the target object that has registered to listen to events of
type eventType
with one or more methods.methodName
- the name of the method owned by target
that's
registered to listen to events of type eventType
.public Collection<?> getListeners(Class<?> eventType)
eventType
- The type of event to return listeners for.
protected void fireEvent(Component.Event event)
event
- the Event to be sent to all listeners.public void addListener(Component.Listener listener)
Component
class Listening extends CustomComponent implements Listener { // Stored for determining the source of an event Button ok; Label status; // For displaying info about the event public Listening() { VerticalLayout layout = new VerticalLayout(); // Some miscellaneous component TextField name = new TextField("Say it all here"); name.addListener(this); name.setImmediate(true); layout.addComponent(name); // Handle button clicks as generic events instead // of Button.ClickEvent events ok = new Button("OK"); ok.addListener(this); layout.addComponent(ok); // For displaying information about an event status = new Label(""); layout.addComponent(status); setCompositionRoot(layout); } public void componentEvent(Event event) { // Act according to the source of the event if (event.getSource() == ok) getWindow().showNotification("Click!"); status.setValue("Event from " + event.getSource().getClass().getName() + ": " + event.getClass().getName()); } } Listening listening = new Listening(); layout.addComponent(listening);
addListener
in interface Component
listener
- the new Listener to be registered.Component.Event
,
Component.removeListener(Listener)
public void removeListener(Component.Listener listener)
Component
removeListener
in interface Component
listener
- the listener to be removed.Component.addListener(Listener)
protected void fireComponentEvent()
protected void fireComponentErrorEvent()
public void setData(Object data)
data
- the Application specific data.public Object getData()
setData(Object)
.
public float getHeight()
Sizeable
getHeight
in interface Sizeable
public int getHeightUnits()
Sizeable
getHeightUnits
in interface Sizeable
public float getWidth()
Sizeable
getWidth
in interface Sizeable
public int getWidthUnits()
Sizeable
getWidthUnits
in interface Sizeable
@Deprecated public void setHeight(float height)
Sizeable
setHeight
in interface Sizeable
height
- the height of the object in units specified by heightUnits
property.@Deprecated public void setHeightUnits(int unit)
Sizeable
setHeightUnits
in interface Sizeable
unit
- the units used in height property.public void setHeight(float height, int unit)
Sizeable
setHeight
in interface Sizeable
height
- the height of the object.unit
- the unit used for the width. Possible values include
Sizeable.UNITS_PIXELS
, Sizeable.UNITS_POINTS
,
Sizeable.UNITS_PICAS
, Sizeable.UNITS_EM
, Sizeable.UNITS_EX
,
Sizeable.UNITS_MM
, Sizeable.UNITS_CM
, Sizeable.UNITS_INCH
,
Sizeable.UNITS_PERCENTAGE
.public void setSizeFull()
Sizeable
setSizeFull
in interface Sizeable
public void setSizeUndefined()
Sizeable
setSizeUndefined
in interface Sizeable
@Deprecated public void setWidth(float width)
Sizeable
setWidth
in interface Sizeable
width
- the width of the object in units specified by widthUnits
property.@Deprecated public void setWidthUnits(int unit)
Sizeable
setWidthUnits
in interface Sizeable
unit
- the units used in width property.public void setWidth(float width, int unit)
Sizeable
setWidth
in interface Sizeable
width
- the width of the object.unit
- the unit used for the width. Possible values include
Sizeable.UNITS_PIXELS
, Sizeable.UNITS_POINTS
,
Sizeable.UNITS_PICAS
, Sizeable.UNITS_EM
, Sizeable.UNITS_EX
,
Sizeable.UNITS_MM
, Sizeable.UNITS_CM
, Sizeable.UNITS_INCH
,
Sizeable.UNITS_PERCENTAGE
.public void setWidth(String width)
Sizeable
setWidth
in interface Sizeable
width
- in CSS style string representation, null or empty string to
resetpublic void setHeight(String height)
Sizeable
setHeight
in interface Sizeable
height
- in CSS style string representationpublic AbstractComponent.ComponentErrorHandler getErrorHandler()
public void setErrorHandler(AbstractComponent.ComponentErrorHandler errorHandler)
errorHandler
- AbstractField specific error handlerpublic boolean handleError(AbstractComponent.ComponentErrorEvent error)
error
- Error event to handle
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |