Package io.jmix.ui.action.list
Class RelatedAction
java.lang.Object
io.jmix.ui.action.AbstractAction
io.jmix.ui.action.BaseAction
io.jmix.ui.action.ListAction
io.jmix.ui.action.list.SecuredListAction
io.jmix.ui.action.list.RelatedAction
- All Implemented Interfaces:
Action
,Action.AdjustWhenScreenReadOnly
,Action.ExecutableAction
,Action.HasPrimaryState
,Action.HasSecurityConstraint
,Action.HasTarget
,Action.ScreenOpeningAction
,Action.SecuredAction
@StudioAction(target="io.jmix.ui.component.ListComponent",
description="Opens a browser screen with list of related entities")
@ActionType("related")
public class RelatedAction
extends SecuredListAction
implements Action.AdjustWhenScreenReadOnly, Action.ScreenOpeningAction, Action.ExecutableAction
-
Nested Class Summary
Nested classes/interfaces inherited from class io.jmix.ui.action.BaseAction
BaseAction.EnabledRule
Nested classes/interfaces inherited from interface io.jmix.ui.action.Action
Action.ActionPerformedEvent, Action.AdjustWhenScreenReadOnly, Action.ExecutableAction, Action.HasPrimaryState, Action.HasSecurityConstraint, Action.HasTarget, Action.MainTabSheetAction, Action.OperationResultAction, Action.ScreenAction<S extends Screen>, Action.ScreenOpeningAction, Action.SecuredAction, Action.Status
-
Field Summary
Modifier and TypeFieldDescriptionprotected String
static final String
protected MetaProperty
protected String
protected RelatedEntitiesSupport
protected ActionScreenInitializer
Fields inherited from class io.jmix.ui.action.list.SecuredListAction
accessManager, applicationContext, constraintEntityOp, metadata
Fields inherited from class io.jmix.ui.action.ListAction
target
Fields inherited from class io.jmix.ui.action.AbstractAction
caption, description, enabled, eventHub, icon, id, owners, primary, shortcut, visible
Fields inherited from interface io.jmix.ui.action.Action
PROP_CAPTION, PROP_DESCRIPTION, PROP_ENABLED, PROP_ICON, PROP_SHORTCUT, PROP_VISIBLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
actionPerform
(Component component) Invoked by owning component to execute the action.void
execute()
Executes theAction
Returns the screen open mode if it was set byAction.ScreenOpeningAction.setOpenMode(OpenMode)
or in the screen XML, otherwise returnsnull
.Returns the screen class if it was set byAction.ScreenOpeningAction.setScreenClass(Class)
or in the screen XML, otherwise returnsnull
.Returns the screen id if it was set byAction.ScreenOpeningAction.setScreenId(String)
or in the screen XML, otherwise returnsnull
.void
setAfterCloseHandler
(Consumer<Screen.AfterCloseEvent> afterCloseHandler) Sets the handler to be invoked when the editor screen closes.void
setConfigurationName
(String configurationName) Sets the caption that will be set to filter in opened screen.void
setMetaProperty
(MetaProperty metaProperty) Sets the MetaProperty from which you want to show related entities.void
setOpenMode
(OpenMode openMode) Sets the screen open mode.void
setProperty
(String property) Sets the property from which you want to show related entities.void
setRelatedEntitiesApi
(RelatedEntitiesSupport relatedEntitiesSupport) void
setScreenClass
(Class<? extends Screen> screenClass) Sets the screen class.void
setScreenConfigurer
(Consumer<Screen> screenConfigurer) Sets the screen configurer.void
setScreenId
(String screenId) Sets the screen id.void
setScreenOptionsSupplier
(Supplier<ScreenOptions> screenOptionsSupplier) Sets the screen options supplier.Methods inherited from class io.jmix.ui.action.list.SecuredListAction
getConstraintEntityOp, isApplicable, isPermitted, setAccessManager, setApplicationContext, setConstraintEntityOp, setMetadata
Methods inherited from class io.jmix.ui.action.ListAction
getTarget, setTarget, withCaption, withDescription, withHandler, withIcon, withPrimary, withShortcut
Methods inherited from class io.jmix.ui.action.BaseAction
addActionPerformedListener, addEnabledRule, isEnabledByRule, isEnabledByUiPermissions, isVisibleByUiPermissions, refreshState, removeEnabledRule, setEnabled, setEnabledByUiPermissions, setEnabledInternal, setVisible, setVisibleByUiPermissions, setVisibleInternal
Methods inherited from class io.jmix.ui.action.AbstractAction
addOwner, addPropertyChangeListener, firePropertyChange, getCaption, getDescription, getEventHub, getIcon, getId, getOwner, getOwners, getShortcutCombination, hasSubscriptions, isEnabled, isPrimary, isVisible, removeOwner, removePropertyChangeListener, setCaption, setDescription, setIcon, setPrimary, setShortcut, setShortcutCombination
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.jmix.ui.action.Action
addOwner, addPropertyChangeListener, getCaption, getDescription, getIcon, getId, getOwner, getOwners, getShortcutCombination, isEnabled, isVisible, refreshState, removeOwner, removePropertyChangeListener, setCaption, setDescription, setEnabled, setIcon, setShortcut, setShortcutCombination, setVisible
Methods inherited from interface io.jmix.ui.action.Action.AdjustWhenScreenReadOnly
isDisabledWhenScreenReadOnly
-
Field Details
-
ID
- See Also:
-
screenInitializer
-
metaProperty
-
property
-
configurationName
-
-
Constructor Details
-
RelatedAction
public RelatedAction() -
RelatedAction
-
-
Method Details
-
getOpenMode
Description copied from interface:Action.ScreenOpeningAction
Returns the screen open mode if it was set byAction.ScreenOpeningAction.setOpenMode(OpenMode)
or in the screen XML, otherwise returnsnull
.- Specified by:
getOpenMode
in interfaceAction.ScreenOpeningAction
-
setOpenMode
Description copied from interface:Action.ScreenOpeningAction
Sets the screen open mode.- Specified by:
setOpenMode
in interfaceAction.ScreenOpeningAction
- Parameters:
openMode
- the open mode to set
-
getScreenId
Description copied from interface:Action.ScreenOpeningAction
Returns the screen id if it was set byAction.ScreenOpeningAction.setScreenId(String)
or in the screen XML, otherwise returnsnull
.- Specified by:
getScreenId
in interfaceAction.ScreenOpeningAction
-
setScreenId
Description copied from interface:Action.ScreenOpeningAction
Sets the screen id.- Specified by:
setScreenId
in interfaceAction.ScreenOpeningAction
- Parameters:
screenId
- the screen id to set
-
getScreenClass
Description copied from interface:Action.ScreenOpeningAction
Returns the screen class if it was set byAction.ScreenOpeningAction.setScreenClass(Class)
or in the screen XML, otherwise returnsnull
.- Specified by:
getScreenClass
in interfaceAction.ScreenOpeningAction
-
setScreenClass
Description copied from interface:Action.ScreenOpeningAction
Sets the screen class.- Specified by:
setScreenClass
in interfaceAction.ScreenOpeningAction
- Parameters:
screenClass
- the screen class to set
-
setScreenOptionsSupplier
Description copied from interface:Action.ScreenOpeningAction
Sets the screen options supplier. The supplier providesScreenOptions
to the opened screen.The preferred way to set the supplier is using a controller method annotated with
Install
, e.g.:@Install(to = "petsTable.view", subject = "screenOptionsSupplier") protected ScreenOptions petsTableViewScreenOptionsSupplier() { return new MapScreenOptions(ParamsMap.of("someParameter", 10)); }
- Specified by:
setScreenOptionsSupplier
in interfaceAction.ScreenOpeningAction
-
setScreenConfigurer
Description copied from interface:Action.ScreenOpeningAction
Sets the screen configurer. Use the configurer if you need to provide parameters to the opened screen through setters.The preferred way to set the configurer is using a controller method annotated with
Install
, e.g.:@Install(to = "petsTable.view", subject = "screenConfigurer") protected void petsTableViewScreenConfigurer(Screen editorScreen) { ((PetEdit) editorScreen).setSomeParameter(someValue); }
- Specified by:
setScreenConfigurer
in interfaceAction.ScreenOpeningAction
-
setAfterCloseHandler
Description copied from interface:Action.ScreenOpeningAction
Sets the handler to be invoked when the editor screen closes.The preferred way to set the handler is using a controller method annotated with
Install
, e.g.:@Install(to = "petsTable.view", subject = "afterCloseHandler") protected void petsTableViewAfterCloseHandler(AfterCloseEvent event) { if (event.closedWith(StandardOutcome.COMMIT)) { System.out.println("Committed"); } }
- Specified by:
setAfterCloseHandler
in interfaceAction.ScreenOpeningAction
-
getMetaProperty
- Returns:
- the MetaProperty from which you want to show related entities
-
setMetaProperty
Sets the MetaProperty from which you want to show related entities.- Parameters:
metaProperty
- the MetaProperty to set
-
getProperty
- Returns:
- the property from which you want to show related entities
-
setProperty
Sets the property from which you want to show related entities.- Parameters:
property
- the property to set
-
getConfigurationName
- Returns:
- the caption that will be set to filter in opened screen
-
setConfigurationName
Sets the caption that will be set to filter in opened screen.- Parameters:
configurationName
- the caption to set
-
actionPerform
Description copied from interface:Action
Invoked by owning component to execute the action.- Specified by:
actionPerform
in interfaceAction
- Overrides:
actionPerform
in classBaseAction
- Parameters:
component
- invoking component
-
execute
public void execute()Description copied from interface:Action.ExecutableAction
Executes theAction
- Specified by:
execute
in interfaceAction.ExecutableAction