Package io.jmix.ui.app.bulk
Class BulkEditorWindow<E>
java.lang.Object
io.jmix.ui.screen.Screen
io.jmix.ui.app.bulk.BulkEditorWindow<E>
- All Implemented Interfaces:
BulkEditorController<E>
,FrameOwner
@UiController("bulkEditorWindow")
@UiDescriptor("bulk-editor-window.xml")
public class BulkEditorWindow<E>
extends Screen
implements BulkEditorController<E>
-
Nested Class Summary
Nested classes/interfaces inherited from class io.jmix.ui.screen.Screen
Screen.AfterCloseEvent, Screen.AfterDetachEvent, Screen.AfterInitEvent, Screen.AfterShowEvent, Screen.BeforeCloseEvent, Screen.BeforeShowEvent, Screen.InitEvent
Nested classes/interfaces inherited from interface io.jmix.ui.app.bulk.BulkEditorController
BulkEditorController.BulkEditorContext<V>
-
Field Summary
Modifier and TypeFieldDescriptionprotected AccessManager
protected Button
protected Action
protected BulkEditorDataService
protected static final String
protected boolean
protected BulkEditorController.BulkEditorContext<E>
protected DataComponents
protected DataManager
protected static final ColumnsMode
protected DeviceInfoProvider
protected Dialogs
protected Pattern
protected FetchPlanRepository
protected FetchPlans
protected ScrollBoxLayout
protected InstanceContainer<E>
protected Map<String,
BulkEditorWindow.ManagedField> protected MessageBundle
protected Messages
protected MessageTools
protected Metadata
protected MetadataTools
protected Notifications
protected ScreenValidation
protected UiComponents
protected UiComponentsGenerator
Fields inherited from interface io.jmix.ui.screen.FrameOwner
NO_OPTIONS, WINDOW_CLOSE_ACTION, WINDOW_COMMIT_AND_CLOSE_ACTION, WINDOW_DISCARD_AND_CLOSE_ACTION
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
addFetchPlanProperties
(FetchPlanBuilder builder, MetaProperty metaProperty, String fqn) protected void
applyModelValidators
(ValidationErrors errors) void
protected void
protected Button
protected Consumer<Button.ClickEvent>
createClearButtonClickListener
(Field<?> editField) protected ComponentContainer
protected void
protected FetchPlan
createEmbeddedFetchPlan
(MetaClass metaClass, String fqnPrefix) protected void
createEmbeddedFields
(MetaClass metaClass, Object item, String fqnPrefix) protected FetchPlan
createFetchPlan
(MetaClass metaClass) protected Field<?>
createField
(MetaProperty metaProperty, InstanceContainer<?> fieldDc) protected ComponentContainer
protected Comparator<BulkEditorWindow.ManagedField>
protected void
createNestedDataContainers
(MetaClass metaClass, InstanceContainer<?> parent, String fqnPrefix) protected ComponentContainer
createRow
(List<BulkEditorWindow.ManagedField> editFields, int fieldIndex) protected ComponentContainer
protected void
ensureEmbeddedPropertyCreated
(E item, String propertyPath) protected void
focusFirstPossibleField
(Map<String, Field<?>> dataFields) protected String
generateFqn
(MetaProperty metaProperty, String fqnPrefix) protected String
generatePropertyCaption
(MetaClass metaClass, MetaProperty metaProperty, String localePrefix) protected ColumnsMode
protected int
getFieldsCountForColumn
(int remainFields, int remainColumns) protected List<BulkEditorWindow.ManagedField>
protected List<BulkEditorWindow.ManagedField>
getManagedFields
(MetaClass metaClass, String fqnPrefix, String localePrefix) protected List<BulkEditorWindow.ManagedField>
getManagedFields
(MetaProperty embeddedProperty, String fqnPrefix, String localePrefix) protected boolean
protected boolean
isByteArray
(MetaProperty metaProperty) protected boolean
isCrossDataStoreReference
(MetaProperty metaProperty) protected boolean
isEntityAttributeModifyPermitted
(MetaClass metaClass, MetaProperty metaProperty) protected boolean
isEntityPickerWrapperNeeded
(Field<?> field) protected boolean
isFieldChanged
(Field<?> field) protected boolean
isManagedAttribute
(MetaClass metaClass, MetaProperty metaProperty) protected boolean
isRangeClassPermitted
(MetaProperty metaProperty) protected boolean
isTenantMetaProperty
(MetaProperty metaProperty) protected boolean
isUuid
(MetaProperty metaProperty) protected void
protected void
protected void
protected void
void
protected void
showConfirmDialogOrCommit
(List<String> fields) protected void
updateItemValues
(Map.Entry<String, Field<?>> fieldEntry, Object value) protected ValidationErrors
protected ValidationErrors
Methods inherited from class io.jmix.ui.screen.Screen
addAfterCloseListener, addAfterDetachListener, addAfterInitListener, addAfterShowListener, addBeforeCloseListener, addBeforeShowListener, addInitListener, addUrlParamsChangeListener, close, close, closeWithDefaultAction, fireEvent, getApplicationContext, getEventHub, getExtensions, getId, getScreenData, getUiEventListeners, getWindow, isMultipleOpen, isSameScreen, isScreenAction, setApplicationContext, setExtensions, setId, setScreenData, setUiEventListeners, setWindow, show
-
Field Details
-
COLUMN_COUNT_STYLENAME
- See Also:
-
DEFAULT_COLUMNS_MODE
-
applyButton
-
applyChanges
-
infoLabel
-
fieldsScrollBox
-
accessManager
-
bulkEditorDataService
-
dataComponents
-
dataManager
-
deviceInfoProvider
-
dialogs
-
fetchPlans
-
fetchPlanRepository
-
messages
-
messageTools
-
messageBundle
-
metadata
-
metadataTools
-
notifications
-
screenValidation
-
uiComponents
-
uiComponentsGenerator
-
context
-
excludeRegex
-
managedFields
-
managedEmbeddedProperties
-
dataFields
-
instanceContainer
-
items
-
commitPerformed
protected boolean commitPerformed
-
-
Constructor Details
-
BulkEditorWindow
public BulkEditorWindow()
-
-
Method Details
-
setBulkEditorContext
- Specified by:
setBulkEditorContext
in interfaceBulkEditorController<E>
-
createDataComponents
protected void createDataComponents() -
createRow
protected ComponentContainer createRow(List<BulkEditorWindow.ManagedField> editFields, int fieldIndex) -
createClearButtonClickListener
-
createClearButton
-
createField
-
createLabel
-
createRowLayout
-
createColumnLayout
-
getColumnsMode
-
createFieldsLayout
-
focusFirstPossibleField
-
createManagedFieldComparator
protected Comparator<BulkEditorWindow.ManagedField> createManagedFieldComparator(List<BulkEditorWindow.ManagedField> editFields) -
getFieldsCountForColumn
protected int getFieldsCountForColumn(int remainFields, int remainColumns) -
isEntityPickerWrapperNeeded
-
createNestedDataContainers
protected void createNestedDataContainers(MetaClass metaClass, InstanceContainer<?> parent, @Nullable String fqnPrefix) -
loadItems
-
createFetchPlan
-
createEmbeddedFetchPlan
-
addFetchPlanProperties
protected void addFetchPlanProperties(FetchPlanBuilder builder, MetaProperty metaProperty, String fqn) -
createEmbeddedFields
-
generateFqn
-
getManagedFields
-
getManagedFields
protected List<BulkEditorWindow.ManagedField> getManagedFields(MetaProperty embeddedProperty, String fqnPrefix, String localePrefix) -
getManagedFields
protected List<BulkEditorWindow.ManagedField> getManagedFields(MetaClass metaClass, @Nullable String fqnPrefix, @Nullable String localePrefix) -
generatePropertyCaption
protected String generatePropertyCaption(MetaClass metaClass, MetaProperty metaProperty, @Nullable String localePrefix) -
isManagedAttribute
-
isCrossDataStoreReference
-
isEntityAttributeModifyPermitted
-
isRangeClassPermitted
-
isByteArray
-
isUuid
-
onCancelChanges
-
onBeforeClose
-
preventUnsavedChanges
-
hasChanges
protected boolean hasChanges() -
closeWithDiscard
-
onApplyChanges
-
closeWithCommit
public void closeWithCommit() -
showConfirmDialogOrCommit
-
commitBulkChanges
protected void commitBulkChanges() -
updateItemValues
-
ensureEmbeddedPropertyCreated
-
isFieldChanged
-
validateScreen
-
validateUiComponents
-
applyModelValidators
-
isTenantMetaProperty
-