public abstract class AbstractAction extends java.lang.Object implements Action, Action.HasPrimaryState
Action.ActionPerformedEvent, Action.AdjustWhenScreenReadOnly, Action.ExecutableAction, Action.HasPrimaryState, Action.HasSecurityConstraint, Action.HasTarget, Action.MainTabSheetAction, Action.ScreenOpeningAction, Action.SecuredAction, Action.Status| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
caption |
protected java.lang.String |
description |
protected boolean |
enabled |
protected io.jmix.core.common.event.EventHub |
eventHub |
protected java.lang.String |
icon |
protected java.lang.String |
id |
protected java.util.List<ActionOwner> |
owners |
protected boolean |
primary |
protected KeyCombination |
shortcut |
protected boolean |
visible |
PROP_CAPTION, PROP_DESCRIPTION, PROP_ENABLED, PROP_ICON, PROP_SHORTCUT, PROP_VISIBLE| Modifier | Constructor and Description |
|---|---|
protected |
AbstractAction() |
protected |
AbstractAction(java.lang.String id) |
protected |
AbstractAction(java.lang.String id,
Action.Status status) |
protected |
AbstractAction(java.lang.String id,
java.lang.String shortcut) |
| Modifier and Type | Method and Description |
|---|---|
void |
addOwner(ActionOwner actionOwner)
Add an owner component.
|
void |
addPropertyChangeListener(java.util.function.Consumer<java.beans.PropertyChangeEvent> listener)
Adds a listener to be notified about Enabled, Caption or Icon property changes.
|
protected void |
firePropertyChange(java.lang.String propertyName,
java.lang.Object oldValue,
java.lang.Object newValue) |
java.lang.String |
getCaption() |
java.lang.String |
getDescription() |
protected io.jmix.core.common.event.EventHub |
getEventHub() |
java.lang.String |
getIcon() |
java.lang.String |
getId() |
ActionOwner |
getOwner() |
java.util.Collection<ActionOwner> |
getOwners() |
KeyCombination |
getShortcutCombination() |
protected boolean |
hasSubscriptions(java.lang.Class<?> eventClass) |
boolean |
isEnabled() |
boolean |
isPrimary() |
boolean |
isVisible() |
void |
refreshState()
Refresh internal state of the action to initialize enabled, visible, caption, icon, etc.
|
void |
removeOwner(ActionOwner actionOwner)
Remove the owner component.
|
void |
removePropertyChangeListener(java.util.function.Consumer<java.beans.PropertyChangeEvent> listener)
Removes the listener.
|
void |
setCaption(java.lang.String caption) |
void |
setDescription(java.lang.String description) |
void |
setEnabled(boolean enabled) |
void |
setIcon(java.lang.String icon) |
void |
setPrimary(boolean primary)
Sets whether action is primary or not.
|
void |
setShortcut(java.lang.String shortcut)
Set shortcut from string representation.
|
void |
setShortcutCombination(KeyCombination shortcut) |
void |
setVisible(boolean visible) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitactionPerformprotected java.lang.String id
protected java.lang.String caption
protected java.lang.String description
protected java.lang.String icon
protected boolean enabled
protected boolean visible
protected java.util.List<ActionOwner> owners
protected KeyCombination shortcut
protected boolean primary
protected io.jmix.core.common.event.EventHub eventHub
protected AbstractAction()
protected AbstractAction(java.lang.String id)
protected AbstractAction(java.lang.String id,
@Nullable
java.lang.String shortcut)
protected AbstractAction(java.lang.String id,
Action.Status status)
protected io.jmix.core.common.event.EventHub getEventHub()
protected boolean hasSubscriptions(java.lang.Class<?> eventClass)
public java.lang.String getId()
@Nullable public java.lang.String getCaption()
getCaption in interface Actionpublic void setCaption(@Nullable
java.lang.String caption)
setCaption in interface Action@Nullable public java.lang.String getDescription()
getDescription in interface Actionpublic void setDescription(@Nullable
java.lang.String description)
setDescription in interface Action@Nullable public KeyCombination getShortcutCombination()
getShortcutCombination in interface Actionpublic void setShortcutCombination(@Nullable
KeyCombination shortcut)
setShortcutCombination in interface Actionpublic void setShortcut(@Nullable
java.lang.String shortcut)
ActionsetShortcut in interface Actionshortcut - string of type "Modifiers-Key", e.g. "Alt-N". Case-insensitive.@Nullable public java.lang.String getIcon()
public void setIcon(@Nullable
java.lang.String icon)
public boolean isEnabled()
public void setEnabled(boolean enabled)
setEnabled in interface Actionpublic boolean isVisible()
public void setVisible(boolean visible)
setVisible in interface Actionpublic java.util.Collection<ActionOwner> getOwners()
@Nullable public ActionOwner getOwner()
public void addOwner(ActionOwner actionOwner)
Actionpublic void removeOwner(ActionOwner actionOwner)
ActionremoveOwner in interface ActionactionOwner - owner componentpublic void addPropertyChangeListener(java.util.function.Consumer<java.beans.PropertyChangeEvent> listener)
ActionaddPropertyChangeListener in interface Actionlistener - a listener objectpublic void removePropertyChangeListener(java.util.function.Consumer<java.beans.PropertyChangeEvent> listener)
ActionremovePropertyChangeListener in interface Actionlistener - a listener objectAction.addPropertyChangeListener(java.util.function.Consumer<java.beans.PropertyChangeEvent>)protected void firePropertyChange(java.lang.String propertyName,
java.lang.Object oldValue,
java.lang.Object newValue)
public void refreshState()
ActionFor example, this method is called by visual components holding actions when they are bound to data. At this moment the action can find out what entity it is connected to and change its state according to the user permissions.
refreshState in interface Actionpublic boolean isPrimary()
isPrimary in interface Action.HasPrimaryStatepublic void setPrimary(boolean primary)
Action.HasPrimaryStatesetPrimary in interface Action.HasPrimaryStateprimary - primary