java.awt.event
Class HierarchyEvent

java.lang.Object
  extended by java.util.EventObject
      extended by java.awt.AWTEvent
          extended by java.awt.event.HierarchyEvent
All Implemented Interfaces:
Serializable

public class HierarchyEvent
extends AWTEvent

This class represents an event generated for an ancestor component which may affect this component. These events normally do not need to be handled by the application, since the AWT system automatically takes care of them.

There are two types of hierarchy events. The first type is handled by HierarchyListener, and includes addition or removal of an ancestor, or an ancestor changing its on-screen status (visible and/or displayble). The second type is handled by HierarchyBoundsListener, and includes resizing or moving of an ancestor.

Since:
1.3
See Also:
HierarchyListener, HierarchyBoundsAdapter, HierarchyBoundsListener, Serialized Form

Field Summary
static int ANCESTOR_MOVED
          This id indicates that an ancestor was moved.
static int ANCESTOR_RESIZED
          This id indicates that an ancestor was resized.
static int DISPLAYABILITY_CHANGED
          This indicates that the HIERARCHY_CHANGED is caused by a change in displayability.
static int HIERARCHY_CHANGED
          This id indicates that the hierarchy tree changed.
static int HIERARCHY_FIRST
          This is the first id in the range of ids used by this class.
static int HIERARCHY_LAST
          This is the last id in the range of ids used by this class.
static int PARENT_CHANGED
          This indicates that the HIERARCHY_CHANGED is a changed parent.
static int SHOWING_CHANGED
          This indicates that the HIERARCHY_CHANGED is a changed visibility.
 
Fields inherited from class java.awt.AWTEvent
ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK
 
Fields inherited from class java.util.EventObject
source
 
Constructor Summary
HierarchyEvent(Component source, int id, Component changed, Container changedParent)
          Initializes a new instance of HierarchyEvent with the specified parameters.
HierarchyEvent(Component source, int id, Component changed, Container changedParent, long changeFlags)
          Initializes a new instance of HierarchyEvent with the specified parameters.
 
Method Summary
 Component getChanged()
          Returns the component at the top of the hierarchy which changed.
 Container getChangedParent()
          Returns the parent of the component listed in getChanged().
 long getChangeFlags()
          If this is a HIERARCHY_CHANGED event, this returns a bitmask of the types of changes that took place.
 Component getComponent()
          This method returns the event source as a Component.
 String paramString()
          This method returns a string identifying this event.
 
Methods inherited from class java.awt.AWTEvent
consume, getID, isConsumed, setSource, toString
 
Methods inherited from class java.util.EventObject
getSource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

HIERARCHY_FIRST

public static final int HIERARCHY_FIRST
This is the first id in the range of ids used by this class.

See Also:
Constant Field Values

HIERARCHY_CHANGED

public static final int HIERARCHY_CHANGED
This id indicates that the hierarchy tree changed.

See Also:
Constant Field Values

ANCESTOR_MOVED

public static final int ANCESTOR_MOVED
This id indicates that an ancestor was moved.

See Also:
Constant Field Values

ANCESTOR_RESIZED

public static final int ANCESTOR_RESIZED
This id indicates that an ancestor was resized.

See Also:
Constant Field Values

HIERARCHY_LAST

public static final int HIERARCHY_LAST
This is the last id in the range of ids used by this class.

See Also:
Constant Field Values

PARENT_CHANGED

public static final int PARENT_CHANGED
This indicates that the HIERARCHY_CHANGED is a changed parent.

See Also:
Constant Field Values

DISPLAYABILITY_CHANGED

public static final int DISPLAYABILITY_CHANGED
This indicates that the HIERARCHY_CHANGED is caused by a change in displayability.

See Also:
Component.isDisplayable(), Component.addNotify(), Component.removeNotify(), Constant Field Values

SHOWING_CHANGED

public static final int SHOWING_CHANGED
This indicates that the HIERARCHY_CHANGED is a changed visibility.

See Also:
Component.isShowing(), Component.addNotify(), Component.removeNotify(), Component.show(), Component.hide(), Constant Field Values
Constructor Detail

HierarchyEvent

public HierarchyEvent(Component source,
                      int id,
                      Component changed,
                      Container changedParent)
Initializes a new instance of HierarchyEvent with the specified parameters. Note that an invalid id leads to unspecified results.

Parameters:
source - the component whose hierarchy changed
id - the event id
changed - the top component in the tree of changed hierarchy
changedParent - the updated parent of this object
Throws:
IllegalArgumentException - if source is null

HierarchyEvent

public HierarchyEvent(Component source,
                      int id,
                      Component changed,
                      Container changedParent,
                      long changeFlags)
Initializes a new instance of HierarchyEvent with the specified parameters. Note that an invalid id leads to unspecified results.

Parameters:
source - the component whose hierarchy changed
id - the event id
changed - the top component in the tree of changed hierarchy
changedParent - the updated parent of this object
changeFlags - the bitmask of specific HIERARCHY_CHANGED events
Throws:
IllegalArgumentException - if source is null
Method Detail

getComponent

public Component getComponent()
This method returns the event source as a Component. If the source has subsequently been modified to a non-Component, this returns null.

Returns:
the event source as a Component, or null

getChanged

public Component getChanged()
Returns the component at the top of the hierarchy which changed.

Returns:
the top changed component

getChangedParent

public Container getChangedParent()
Returns the parent of the component listed in getChanged(). If the cause of this event was Container.add, this is the new parent; if the cause was Container.remove, this is the old parent; otherwise it is the unchanged parent.

Returns:
the parent container of the changed component

getChangeFlags

public long getChangeFlags()
If this is a HIERARCHY_CHANGED event, this returns a bitmask of the types of changes that took place.

Returns:
the bitwise or of hierarchy change types, or 0
See Also:
PARENT_CHANGED, DISPLAYABILITY_CHANGED, SHOWING_CHANGED

paramString

public String paramString()
This method returns a string identifying this event. This is the field name of the id type, followed by a parenthesized listing of the changed component and its parent container. In addition, if the type is HIERARCHY_CHANGED, the flags preceed the changed component, in the order PARENT_CHANGED, DISPLAYABILITY_CHANGED, and SHOWING_CHANGED.

Overrides:
paramString in class AWTEvent
Returns:
a string identifying this event