Package io.guise.framework.component
Class TreeControl
java.lang.Object
- All Implemented Interfaces:
com.globalmentor.beans.PropertyBindable
,com.globalmentor.beans.PropertyConstrainable
,io.clogr.Clogged
,Component
,CompositeComponent
,Control
,InputFocusableComponent
,ActionListenable
,ActionModel
,Displayable
,Enableable
,InfoModel
,LabelModel
,Model
,TreeModel
,PresentationModel
,DepictedObject
public class TreeControl
extends AbstractCompositeStateControl<TreeNodeModel<?>,TreeControl.TreeNodeComponentState>
implements TreeModel
A tree control. Property change events and action events on one tree node will be repeated to this object's listeners, with the tree node initiating the
event accessible via
TargetedEvent.getTarget()
.- Author:
- Garret Wilson
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
An abstract tree node representation strategy.static class
A default tree node representation strategy.static class
A tree node representation strategy for a label model, generating a label component.static class
protected static class
An encapsulation of a component for a tree node along with other metadata, such as whether the component was editable when created.static interface
A strategy for generating components to represent tree node models.protected static class
The transferable object for a tree node.Nested classes/interfaces inherited from class io.guise.framework.component.AbstractCompositeStateComponent
AbstractCompositeStateComponent.ComponentState
Nested classes/interfaces inherited from class io.guise.framework.component.AbstractComponent
AbstractComponent.AbstractFlyoverFrameStrategy<S extends Component>, AbstractComponent.AbstractFlyoverStrategy<S extends Component>, AbstractComponent.DefaultFlyoverStrategy<S extends Component>
Nested classes/interfaces inherited from interface io.guise.framework.component.Component
Component.FlyoverStrategy<S extends Component>
Nested classes/interfaces inherited from interface io.guise.framework.component.Control
Control.Status
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The bound property of whether the root node is displayed.static final String
The bound property of whether the tree node components have dragging enabled.Fields inherited from class com.globalmentor.beans.BoundPropertyObject
NO_PROPERTY_CHANGE_LISTENERS, NO_VETOABLE_CHANGE_LISTENERS
Fields inherited from interface io.guise.framework.component.Component
BOOKMARK_ENABLED_PROPERTY, CONSTRAINTS_PROPERTY, DRAG_ENABLED_PROPERTY, DROP_ENABLED_PROPERTY, FLYOVER_ENABLED_PROPERTY, FLYOVER_STRATEGY_PROPERTY, INPUT_STRATEGY_PROPERTY, NAME_PROPERTY, NOTIFICATION_PROPERTY, ORIENTATION_PROPERTY, THEME_APPLIED_PROPERTY, VALID_PROPERTY
Fields inherited from interface io.guise.framework.component.Control
STATUS_PROPERTY
Fields inherited from interface io.guise.framework.model.Displayable
DISPLAYED_PROPERTY
Fields inherited from interface io.guise.framework.model.Enableable
ENABLED_PROPERTY
Fields inherited from interface io.guise.framework.model.InfoModel
DESCRIPTION_CONTENT_TYPE_PROPERTY, DESCRIPTION_PROPERTY, INFO_CONTENT_TYPE_PROPERTY, INFO_PROPERTY
Fields inherited from interface io.guise.framework.model.LabelModel
GLYPH_URI_PROPERTY, LABEL_CONTENT_TYPE_PROPERTY, LABEL_PROPERTY
Fields inherited from interface io.guise.framework.model.ui.PresentationModel
BACKGROUND_COLOR_PROPERTY, BORDER_LINE_FAR_COLOR_PROPERTY, BORDER_LINE_FAR_EXTENT_PROPERTY, BORDER_LINE_FAR_STYLE_PROPERTY, BORDER_LINE_NEAR_COLOR_PROPERTY, BORDER_LINE_NEAR_EXTENT_PROPERTY, BORDER_LINE_NEAR_STYLE_PROPERTY, BORDER_PAGE_FAR_COLOR_PROPERTY, BORDER_PAGE_FAR_EXTENT_PROPERTY, BORDER_PAGE_FAR_STYLE_PROPERTY, BORDER_PAGE_NEAR_COLOR_PROPERTY, BORDER_PAGE_NEAR_EXTENT_PROPERTY, BORDER_PAGE_NEAR_STYLE_PROPERTY, CORNER_LINE_FAR_PAGE_FAR_ARC_SIZE_PROPERTY, CORNER_LINE_FAR_PAGE_NEAR_ARC_SIZE_PROPERTY, CORNER_LINE_NEAR_PAGE_FAR_ARC_SIZE_PROPERTY, CORNER_LINE_NEAR_PAGE_NEAR_ARC_SIZE_PROPERTY, CURSOR_PROPERTY, FONT_FAMILIES_PROPERTY, FONT_SIZE_PROPERTY, FONT_STYLE_PROPERTY, FONT_WEIGHT_BOLD, FONT_WEIGHT_NORMAL, FONT_WEIGHT_PROPERTY, LABEL_FONT_FAMILIES_PROPERTY, LABEL_FONT_SIZE_PROPERTY, LABEL_FONT_STYLE_PROPERTY, LABEL_FONT_WEIGHT_PROPERTY, LABEL_TEXT_COLOR_PROPERTY, LINE_EXTENT_PROPERTY, MARGIN_LINE_FAR_EXTENT_PROPERTY, MARGIN_LINE_NEAR_EXTENT_PROPERTY, MARGIN_PAGE_FAR_EXTENT_PROPERTY, MARGIN_PAGE_NEAR_EXTENT_PROPERTY, OPACITY_PROPERTY, PADDING_LINE_FAR_EXTENT_PROPERTY, PADDING_LINE_NEAR_EXTENT_PROPERTY, PADDING_PAGE_FAR_EXTENT_PROPERTY, PADDING_PAGE_NEAR_EXTENT_PROPERTY, PAGE_EXTENT_PROPERTY, ROUNDED_CORNER_ARC_SIZE, STYLE_ID_PROPERTY, TEXT_COLOR_PROPERTY, TOOLTIP_ENABLED_PROPERTY, VISIBLE_PROPERTY
Fields inherited from interface io.guise.framework.model.TreeModel
ROOT_NODE_PROPERTY
-
Constructor Summary
ConstructorDescriptionDefault constructor with a default tree model.TreeControl
(TreeModel treeModel) Tree model constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addActionListener
(ActionListener actionListener) Adds an action listener.protected TreeControl.TreeNodeComponentState
createComponentState
(TreeNodeModel<?> treeNode) Creates a component state to represent the given object.protected void
fireActionPerformed
(int force, int option) Fires an action event to all registered action listeners.protected void
fireActionPerformed
(ActionEvent actionEvent) Fires a given action event to all registered action listeners.getComponent
(TreeNodeModel<?> treeNode) Retrieves the component for the given object.protected TreeModel
<V> TreeControl.TreeNodeRepresentationStrategy<? super V>
getTreeNodeRepresentationStrategy
(Class<V> valueClass) Returns the given tree node representation strategy assigned to produce representation components for the given value class.boolean
boolean
void
Performs the action with default force and default option.void
performAction
(int force, int option) Performs the action with the given force and option.void
removeActionListener
(ActionListener actionListener) Removes an action listener.void
setAllExpanded
(boolean newAllExpanded) Sets whether all tree nodes are expanded.void
setRootNode
(TreeNodeModel<?> newRootNode) Sets the root node of the tree model.void
setRootNodeDisplayed
(boolean newRootNodeDisplayed) Sets whether the root node is displayed.void
setTreeNodeDragEnabled
(boolean newTreeNodeDragEnabled) Sets whether the tree node components have dragging enabled.<V> TreeControl.TreeNodeRepresentationStrategy<? super V>
setTreeNodeRepresentationStrategy
(Class<V> valueClass, TreeControl.TreeNodeRepresentationStrategy<? super V> treeNodeRepresentationStrategy) Installs the given tree node representation strategy to produce representation components for the given value class.Methods inherited from class io.guise.framework.component.AbstractCompositeStateControl
determineStatus, getEnableable, getStatus, isEnabled, reset, setEnabled, setNotification, setStatus, updateStatus, updateValid
Methods inherited from class io.guise.framework.component.AbstractCompositeStateComponent
clearComponentStates, determineComponentState, getComponentState, getComponentStates, getObject, putComponentState, removeComponentState
Methods inherited from class io.guise.framework.component.AbstractMultipleCompositeComponent
addComponent, getChildComponents, hasChildComponents, removeComponent
Methods inherited from class io.guise.framework.component.AbstractCompositeComponent
addCompositeComponentListener, childComponentValidPropertyChanged, determineChildrenValid, determineValid, dispatchInputEvent, dispatchInputEvent, fireChildComponentAdded, fireChildComponentAdded, fireChildComponentRemoved, fireChildComponentRemoved, initializeChildComponent, loadPreferences, removeCompositeComponentListener, resetTheme, savePreferences, uninitializeChildComponent, updateTheme, validate, validateChildren
Methods inherited from class io.guise.framework.component.AbstractComponent
addCommandListener, addExportStrategy, addImportStrategy, addKeyListener, addMouseListener, addNotificationListener, addPreferenceProperty, applyTheme, applyTheme, depict, equals, exportTransfer, fireInputEvent, fireNotified, fireNotified, getAncestor, getCommandListeners, getComponentByID, getComponentByName, getComponentOrientation, getConstraints, getDepictID, getDepictor, getDescription, getDescriptionContentType, getDirtyComponents, getDirtyComponents, getEventListenerManager, getFlyoverStrategy, getGlyphURI, getInfo, getInfoContentType, getInfoModel, getInputStrategy, getKeyListeners, getLabel, getLabelContentType, getMouseListeners, getName, getNotification, getNotifications, getNotifications, getOrientation, getParent, getPreferenceProperties, getRootComponent, getTheme, hasAncestor, hasCommandListeners, hashCode, hasKeyListeners, hasMouseListeners, importTransfer, initialize, isDragEnabled, isDropEnabled, isFlyoverEnabled, isPreferenceProperty, isThemeApplied, isValid, notify, processEvent, removeCommandListener, removeExportStrategy, removeImportStrategy, removeKeyListener, removeMouseListener, removeNotificationListener, removePreferenceProperty, setConstraints, setDepicted, setDescription, setDescriptionContentType, setDragEnabled, setDropEnabled, setFlyoverEnabled, setFlyoverStrategy, setGlyphURI, setInfo, setInfoContentType, setInputStrategy, setLabel, setLabelContentType, setName, setOrientation, setParent, setThemeApplied, setValid, toString, update
Methods inherited from class io.guise.framework.model.ui.AbstractPresentationModel
BorderLineFarColor, BorderLineFarExtent, BorderLineFarStyle, BorderLineNearColor, BorderLineNearExtent, BorderLineNearStyle, BorderPageFarColor, BorderPageFarExtent, BorderPageFarStyle, BorderPageNearColor, BorderPageNearExtent, BorderPageNearStyle, getBackgroundColor, getBorderColor, getBorderExtent, getBorderStyle, getCornerArcSize, getCornerLineFarPageFarArcSize, getCornerLineFarPageNearArcSize, getCornerLineNearPageFarArcSize, getCornerLineNearPageNearArcSize, getCursor, getExtent, getFontFamilies, getFontSize, getFontStyle, getFontWeight, getLabelFontFamilies, getLabelFontSize, getLabelFontStyle, getLabelFontWeight, getLabelTextColor, getLineExtent, getMarginExtent, getMarginLineFarExtent, getMarginLineNearExtent, getMarginPageFarExtent, getMarginPageNearExtent, getOpacity, getPaddingExtent, getPaddingLineFarExtent, getPaddingLineNearExtent, getPaddingPageFarExtent, getPaddingPageNearExtent, getPageExtent, getStyleID, getTextColor, isDisplayed, isTooltipEnabled, isVisible, setBackgroundColor, setBorderColor, setBorderColor, setBorderExtent, setBorderExtent, setBorderLineFarColor, setBorderLineFarExtent, setBorderLineFarStyle, setBorderLineNearColor, setBorderLineNearExtent, setBorderLineNearStyle, setBorderPageFarColor, setBorderPageFarExtent, setBorderPageFarStyle, setBorderPageNearColor, setBorderPageNearExtent, setBorderPageNearStyle, setBorderStyle, setBorderStyle, setCornerArcSize, setCornerArcSize, setCornerLineFarPageFarArcSize, setCornerLineFarPageNearArcSize, setCornerLineNearPageFarArcSize, setCornerLineNearPageNearArcSize, setCursor, setDisplayed, setExtent, setFontFamilies, setFontSize, setFontStyle, setFontWeight, setLabelFontFamilies, setLabelFontSize, setLabelFontStyle, setLabelFontWeight, setLabelTextColor, setLineExtent, setMarginExtent, setMarginExtent, setMarginLineFarExtent, setMarginLineNearExtent, setMarginPageFarExtent, setMarginPageNearExtent, setOpacity, setPaddingExtent, setPaddingExtent, setPaddingLineFarExtent, setPaddingLineNearExtent, setPaddingPageFarExtent, setPaddingPageNearExtent, setPageExtent, setStyleID, setTextColor, setTooltipEnabled, setVisible
Methods inherited from class io.guise.framework.event.GuiseBoundPropertyObject
getSession
Methods inherited from class com.globalmentor.beans.BoundPropertyObject
addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, createPostponedPropertyChangeEvent, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getForwardPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getRepeatPropertyChangeListener, getRepeatVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, getVetoableChangeSupport, hasPropertyChangeListeners, hasVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.clogr.Clogged
getLogger
Methods inherited from interface io.guise.framework.component.Component
addCommandListener, addExportStrategy, addImportStrategy, addKeyListener, addMouseListener, addNotificationListener, addPreferenceProperty, applyTheme, applyTheme, dispatchInputEvent, exportTransfer, fireInputEvent, getAncestor, getComponentOrientation, getConstraints, getDepictor, getFlyoverStrategy, getInputStrategy, getName, getNotification, getOrientation, getParent, getPreferenceProperties, getTheme, hasCommandListeners, hasKeyListeners, hasMouseListeners, importTransfer, initialize, isDragEnabled, isDropEnabled, isFlyoverEnabled, isPreferenceProperty, isThemeApplied, isValid, loadPreferences, notify, removeCommandListener, removeExportStrategy, removeImportStrategy, removeKeyListener, removeMouseListener, removeNotificationListener, removePreferenceProperty, resetTheme, savePreferences, setConstraints, setDragEnabled, setDropEnabled, setFlyoverEnabled, setFlyoverStrategy, setInputStrategy, setName, setOrientation, setParent, setThemeApplied, updateTheme, validate
Methods inherited from interface io.guise.framework.platform.DepictedObject
depict, getDepictID, getSession, processEvent
Methods inherited from interface io.guise.framework.model.InfoModel
getDescription, getDescriptionContentType, getInfo, getInfoContentType, setDescription, setDescriptionContentType, setInfo, setInfoContentType
Methods inherited from interface io.guise.framework.model.LabelModel
getGlyphURI, getLabel, getLabelContentType, setGlyphURI, setLabel, setLabelContentType
Methods inherited from interface io.guise.framework.model.ui.PresentationModel
BorderLineFarColor, BorderLineFarExtent, BorderLineFarStyle, BorderLineNearColor, BorderLineNearExtent, BorderLineNearStyle, BorderPageFarColor, BorderPageFarExtent, BorderPageFarStyle, BorderPageNearColor, BorderPageNearExtent, BorderPageNearStyle, getBackgroundColor, getBorderColor, getBorderExtent, getBorderStyle, getCornerArcSize, getCornerLineFarPageFarArcSize, getCornerLineFarPageNearArcSize, getCornerLineNearPageFarArcSize, getCornerLineNearPageNearArcSize, getCursor, getExtent, getFontFamilies, getFontSize, getFontStyle, getFontWeight, getLabelFontFamilies, getLabelFontSize, getLabelFontStyle, getLabelFontWeight, getLabelTextColor, getLineExtent, getMarginExtent, getMarginLineFarExtent, getMarginLineNearExtent, getMarginPageFarExtent, getMarginPageNearExtent, getOpacity, getPaddingExtent, getPaddingLineFarExtent, getPaddingLineNearExtent, getPaddingPageFarExtent, getPaddingPageNearExtent, getPageExtent, getSession, getStyleID, getTextColor, isDisplayed, isTooltipEnabled, isVisible, setBackgroundColor, setBorderColor, setBorderColor, setBorderExtent, setBorderExtent, setBorderLineFarColor, setBorderLineFarExtent, setBorderLineFarStyle, setBorderLineNearColor, setBorderLineNearExtent, setBorderLineNearStyle, setBorderPageFarColor, setBorderPageFarExtent, setBorderPageFarStyle, setBorderPageNearColor, setBorderPageNearExtent, setBorderPageNearStyle, setBorderStyle, setBorderStyle, setCornerArcSize, setCornerArcSize, setCornerLineFarPageFarArcSize, setCornerLineFarPageNearArcSize, setCornerLineNearPageFarArcSize, setCornerLineNearPageNearArcSize, setCursor, setDisplayed, setExtent, setFontFamilies, setFontSize, setFontStyle, setFontWeight, setLabelFontFamilies, setLabelFontSize, setLabelFontStyle, setLabelFontWeight, setLabelTextColor, setLineExtent, setMarginExtent, setMarginExtent, setMarginLineFarExtent, setMarginLineNearExtent, setMarginPageFarExtent, setMarginPageNearExtent, setOpacity, setPaddingExtent, setPaddingExtent, setPaddingLineFarExtent, setPaddingLineNearExtent, setPaddingPageFarExtent, setPaddingPageNearExtent, setPageExtent, setStyleID, setTextColor, setTooltipEnabled, setVisible
Methods inherited from interface com.globalmentor.beans.PropertyBindable
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, hasPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
Methods inherited from interface com.globalmentor.beans.PropertyConstrainable
addVetoableChangeListener, addVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, hasVetoableChangeListeners, removeVetoableChangeListener, removeVetoableChangeListener
-
Field Details
-
ROOT_NODE_DISPLAYED_PROPERTY
The bound property of whether the root node is displayed. -
TREE_NODE_DRAG_ENABLED_PROPERTY
The bound property of whether the tree node components have dragging enabled.
-
-
Constructor Details
-
TreeControl
public TreeControl()Default constructor with a default tree model. -
TreeControl
Tree model constructor.- Parameters:
treeModel
- The component tree model.- Throws:
NullPointerException
- if the given tree model isnull
.
-
-
Method Details
-
getTreeModel
- Returns:
- The tree model used by this component.
-
isTreeNodeDragEnabled
public boolean isTreeNodeDragEnabled()- Returns:
- Whether the tree node component have dragging enabled.
-
setTreeNodeDragEnabled
public void setTreeNodeDragEnabled(boolean newTreeNodeDragEnabled) Sets whether the tree node components have dragging enabled. This is a bound property of typeBoolean
.- Parameters:
newTreeNodeDragEnabled
-true
if each tree node component should allow dragging, elsefalse
.- See Also:
-
isRootNodeDisplayed
public boolean isRootNodeDisplayed()- Returns:
- Whether the root node is displayed.
- See Also:
-
setRootNodeDisplayed
public void setRootNodeDisplayed(boolean newRootNodeDisplayed) Sets whether the root node is displayed. This is a bound property of typeBoolean
. If the root is requested not to be displayed, the root is automatically expanded.- Parameters:
newRootNodeDisplayed
-true
if the root node should be displayed, elsefalse
.- See Also:
-
setTreeNodeRepresentationStrategy
public <V> TreeControl.TreeNodeRepresentationStrategy<? super V> setTreeNodeRepresentationStrategy(Class<V> valueClass, TreeControl.TreeNodeRepresentationStrategy<? super V> treeNodeRepresentationStrategy) Installs the given tree node representation strategy to produce representation components for the given value class.- Type Parameters:
V
- The type of value to represent.- Parameters:
valueClass
- The class of value with which the strategy should be associated.treeNodeRepresentationStrategy
- The strategy for generating components to represent values of the given type.- Returns:
- The representation strategy previously associated with the given value type.
-
getTreeNodeRepresentationStrategy
public <V> TreeControl.TreeNodeRepresentationStrategy<? super V> getTreeNodeRepresentationStrategy(Class<V> valueClass) Returns the given tree node representation strategy assigned to produce representation components for the given value class.- Type Parameters:
V
- The type of value to represent.- Parameters:
valueClass
- The class of value with which the strategy should be associated.- Returns:
- The strategy for generating components to represent values of the given type, or
null
if there is no associated representation strategy. - See Also:
-
getComponent
Retrieves the component for the given object. If no component yet exists for the given object, one will be created.This version is provided to allow public access.
- Overrides:
getComponent
in classAbstractCompositeStateComponent<TreeNodeModel<?>,
TreeControl.TreeNodeComponentState> - Parameters:
treeNode
- The object for which a representation component should be returned.- Returns:
- The child component representing the given object.
-
createComponentState
Creates a component state to represent the given object.This implementation delegates to
createTypedComponentState(TreeNodeModel)
.- Specified by:
createComponentState
in classAbstractCompositeStateComponent<TreeNodeModel<?>,
TreeControl.TreeNodeComponentState> - Parameters:
treeNode
- The object with which the component state is to be associated.- Returns:
- The component state to represent the given object.
-
getRootNode
- Specified by:
getRootNode
in interfaceTreeModel
- Returns:
- The root node of the tree model.
-
setRootNode
Sets the root node of the tree model. This is a bound property.If the this control requests that the root not be displayed, this implementation automatically expanded the root node after it is added. This is a bound property.
- Specified by:
setRootNode
in interfaceTreeModel
- Parameters:
newRootNode
- The new root node of the tree model.- See Also:
-
setAllExpanded
public void setAllExpanded(boolean newAllExpanded) Description copied from interface:TreeModel
Sets whether all tree nodes are expanded. This method delegates to the root nodeTreeNodeModel.setAllExpanded(boolean)
.- Specified by:
setAllExpanded
in interfaceTreeModel
- Parameters:
newAllExpanded
-true
if all the nodes should be expanded, orfalse
if they should be collapsed.
-
addActionListener
Description copied from interface:ActionListenable
Adds an action listener.- Specified by:
addActionListener
in interfaceActionListenable
- Parameters:
actionListener
- The action listener to add.
-
removeActionListener
Description copied from interface:ActionListenable
Removes an action listener.- Specified by:
removeActionListener
in interfaceActionListenable
- Parameters:
actionListener
- The action listener to remove.
-
getActionListeners
- Specified by:
getActionListeners
in interfaceActionModel
- Returns:
- all registered action listeners.
-
performAction
public void performAction()Description copied from interface:ActionModel
Performs the action with default force and default option. AnActionEvent
is fired to all registeredActionListener
s. This method delegates toActionModel.performAction(int, int)
.- Specified by:
performAction
in interfaceActionModel
-
performAction
public void performAction(int force, int option) Description copied from interface:ActionModel
Performs the action with the given force and option. AnActionEvent
is fired to all registeredActionListener
s.- Specified by:
performAction
in interfaceActionModel
- Parameters:
force
- The zero-based force, such as 0 for no force or 1 for an action initiated by from a mouse single click.option
- The zero-based option, such as 0 for an event initiated by a mouse left button click or 1 for an event initiated by a mouse right button click.
-
fireActionPerformed
protected void fireActionPerformed(int force, int option) Fires an action event to all registered action listeners. This method delegates tofireActionPerformed(ActionEvent)
.- Parameters:
force
- The zero-based force, such as 0 for no force or 1 for an action initiated by from a mouse single click.option
- The zero-based option, such as 0 for an event initiated by a mouse left button click or 1 for an event initiaged by a mouse right button click.- See Also:
-
fireActionPerformed
Fires a given action event to all registered action listeners.- Parameters:
actionEvent
- The action event to fire.
-