Package io.jmix.ui.component.impl
Class TreeTableImpl<E>
java.lang.Object
- All Implemented Interfaces:
ActionsHolder
,AttachNotifier
,Component
,Component.BelongToFrame
,Component.Editable
,Component.Focusable
,Component.HasCaption
,Component.HasDescription
,Component.HasIcon
,Component.HasXmlDescriptor
,Component.Wrapper
,HasButtonsPanel
,HasContextHelp
,HasDebugId
,HasHtmlCaption
,HasHtmlDescription
,HasHtmlSanitizer
,HasInnerComponents
,HasMinSize
,HasPagination
,HasSubParts
,HasTablePresentations
,ListComponent<E>
,LookupComponent<E>
,LookupComponent.LookupSelectionChangeNotifier<E>
,SecuredActionsHolder
,Table<E>
,TableItemsEventsDelegate<E>
,TreeTable<E>
,InstallTargetHandler
,org.springframework.beans.factory.InitializingBean
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
Nested classes/interfaces inherited from class io.jmix.ui.component.impl.AbstractTable
AbstractTable.AggregatableSortableDataContainer<I>, AbstractTable.AggregatableTableDataContainer<I>, AbstractTable.ColumnImpl<E>, AbstractTable.InstalledStyleProvider, AbstractTable.ItemDescriptionGenerator, AbstractTable.StyleGeneratorAdapter
Nested classes/interfaces inherited from interface io.jmix.ui.component.Component
Component.Alignment, Component.BelongToFrame, Component.Disposable, Component.Editable, Component.Focusable, Component.HasCaption, Component.HasDescription, Component.HasIcon, Component.HasXmlDescriptor, Component.Wrapper
Nested classes/interfaces inherited from interface io.jmix.ui.component.HasContextHelp
HasContextHelp.ContextHelpIconClickEvent
Nested classes/interfaces inherited from interface io.jmix.ui.component.LookupComponent
LookupComponent.LookupSelectionChangeEvent<T>, LookupComponent.LookupSelectionChangeNotifier<T>
Nested classes/interfaces inherited from interface io.jmix.ui.component.Table
Table.AggregationDistributionContext<E>, Table.AggregationDistributionProvider<E>, Table.AggregationStyle, Table.Column<E>, Table.ColumnAlignment, Table.ColumnCollapseEvent<E>, Table.ColumnGenerator<E>, Table.ColumnReorderEvent<E>, Table.EmptyStateClickEvent<E>, Table.PlainTextCell, Table.Printable<E,
P>, Table.PrintableColumnGenerator<E, P>, Table.RowHeaderMode, Table.SelectionEvent<E>, Table.SortDirection, Table.SortInfo, Table.StyleProvider<E> -
Field Summary
Fields inherited from class io.jmix.ui.component.impl.AbstractTable
accessManager, actions, aggregatableDelegate, aggregationCells, aggregations, BOOLEAN_CELL_STYLE_FALSE, BOOLEAN_CELL_STYLE_TRUE, buttonsPanel, columnCollapseListener, columns, columnsOrder, componentComposition, componentProperties, CUSTOM_STYLE_NAME_PREFIX, dataBinding, dataComponents, datatypeRegistry, defaultTableSettings, distributionProvider, EDIT_ACTION_ID, editable, emptyStateClickLinkHandler, enterPressAction, entityStates, fieldDatasources, HAS_TOP_PANEL_STYLENAME, iconProvider, iconResolver, ignoreUnfetchedAttributes, internalStyles, itemClickAction, itemDescriptionProvider, locale, MAX_TEXT_LENGTH_GAP, messages, messageTools, metadata, metadataTools, pagination, presentations, printables, requiredColumns, ROW_HEADER_PROPERTY_ID, settingsRegistry, sortable, styleProviders, topPanel, uiComponentsGenerator, uiTestIdsSupport, userSettingsTools, VALUE_PROVIDER_GENERATOR, VIEW_ACTION_ID, viewRepository, VOID_COLUMN_GENERATOR
Fields inherited from class io.jmix.ui.component.impl.AbstractActionsHolderComponent
actionButtons, actionList, actionPropertyChangeListener, actionsPermissions, contextMenuPopup, shortcutsDelegate, showIconsForPopupMenuActions
Fields inherited from class io.jmix.ui.component.impl.AbstractComponent
alignment, applicationContext, component, contextHelpIconClickHandler, contextHelpIconClickListener, descriptionAsHtml, element, frame, htmlSanitizerEnabled, icon, ICON_STYLE, id, parent
Fields inherited from interface io.jmix.ui.component.Component
AUTO_SIZE, AUTO_SIZE_PX, FULL_SIZE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
protected JmixTreeTable
protected TableDataContainer<E>
createTableDataContainer
(TableItems<E> tableItems) void
void
void
expandUpTo
(int level) Expand tree table including specified levelgetItemIdsWithChildren
(Map<Object, Object> parentsMapping, Object nullParentItemId) int
getParentsMapping
(TreeTableItems<E> tableSource, Object nullParentItemId) protected TreeTableItems<E>
boolean
isExpanded
(Object itemId) void
setIconProvider
(Function<? super E, String> iconProvider) Sets the row icon provider for the Table.void
setItems
(TableItems<E> tableItems) Sets an instance ofTableItems
as the Table data source.void
setRowHeaderMode
(Table.RowHeaderMode rowHeaderMode) Sets the row header mode.toContainerPreOrder
(Tree<Object> itemIdsTree) toItemIdsTree
(Map<Object, Object> parentsMapping, Object nullParentItemId) Methods inherited from class io.jmix.ui.component.impl.AbstractTable
__aggregate, __aggregateValues, __handleAggregationResults, addAggregationCell, addColumn, addColumn, addColumn, addColumn, addColumnCollapseListener, addColumnInternal, addColumnReorderListener, addGeneratedColumn, addGeneratedColumn, addGeneratedColumn, addGeneratedColumnInternal, addLookupValueChangeListener, addPrintable, addSelectionListener, addStyleProvider, afterPropertiesSet, applyPresentation, applyPresentation, applyPresentationAsDefault, applyPresentationSettings, attachAction, attached, beforeComponentPaint, beforeContextMenuButtonHandlerPerformed, canBeSorted, checkAggregation, clearFieldDatasources, convertAggregationKeyMapToColumnIdKeyMap, createColumn, createColumns, createContextMenuButton, createFieldFactory, createInstallHandler, createLinkCellClickListener, createStubsForGeneratedColumns, createStyleGenerator, createTablePresentations, createTablePresentationsLayout, createTopPanel, detached, disableEditableColumns, distributeAggregation, enableEditableColumns, fireSelectionEvent, focus, formatCellValue, formatFileRef, generateCellDescription, generateCellStyle, generateClickableCellStyles, generateDefaultCellStyle, getAggregatableDelegate, getAggregationDistributionProvider, getAggregationInfos, getAggregationResults, getAggregationStyle, getAutowiredProperties, getButtonsPanel, getCaption, getColumn, getColumnCaption, getColumnCaption, getColumnControlVisible, getColumnReorderingAllowed, getColumns, getColumnsInternal, getColumnsOrderInternal, getColumnType, getComposition, getDefaultPresentationId, getDefaultSettings, getEmptyStateLinkClickHandler, getEmptyStateLinkMessage, getEmptyStateMessage, getEnterAction, getEnterPressAction, getFormattedValue, getGeneratedCellStyle, getInitialVisibleColumnIds, getInnerComponents, getInstanceContainer, getItemClickAction, getItemDescriptionProvider, getItemIcon, getItems, getLookupSelectedItems, getMinHeight, getMinHeightSizeUnit, getMinWidth, getMinWidthSizeUnit, getNotCollapsedColumns, getPagination, getParsedAggregationValue, getPresentations, getPrintable, getPrintable, getPropertyColumns, getRequiredColumnsInternal, getRowHeaderWidth, getSelected, getSelectedItemIds, getSettingsBinder, getSettingsFromPresentation, getSingleSelected, getSortInfo, getStyleName, getTabIndex, getValueExIgnoreUnfetched, handleAggregation, handleClickAction, handleColumnCollapsed, handlePresentationVariables, handleSpecificVariables, initComponent, initEmptyState, internalRemoveColumnCollapseListener, isAggregatable, isCaptionAsHtml, isColumnHeaderVisible, isContextMenuEnabled, isEditable, isMultiLineCells, isMultiSelect, isSettingsAvailable, isShowSelection, isShowTotalAggregation, isSortable, isTextSelectionEnabled, isValueGeneratedColumn, loadPresentations, needUpdatePresentation, onAfterUnregisterComponent, onBeforeRefreshRowCache, onColumnCollapseStateChange, onColumnReorder, refreshActionsState, removeAggregationCell, removeAllClickListeners, removeColumn, removeGeneratedColumn, removeGeneratedColumnInternal, removePrintable, removeStyleProvider, repaint, requestFocus, resetPresentation, scrollTo, selectAll, setAccessManager, setActions, setAggregatable, setAggregationDistributionProvider, setAggregations, setAggregationStyle, setButtonsPanel, setCaption, setCaptionAsHtml, setClientCaching, setColumnAggregationDescriptionByType, setColumnCollapsedUiPermissionsAware, setColumnControlVisible, setColumnHeader, setColumnHeaderVisible, setColumnReorderingAllowed, setContextMenuEnabled, setCurrentAuthentication, setDataComponents, setDatatypeRegistry, setDebugId, setDefaultSettings, setEditable, setEditableColumns, setEmptyStateLinkClickHandler, setEmptyStateLinkMessage, setEmptyStateMessage, setEnterPressAction, setEntityStates, setIconResolver, setId, setItemClickAction, setItemDescriptionProvider, setLookupSelectHandler, setMessages, setMessageTools, setMetadata, setMetadataTools, setMinHeight, setMinWidth, setMultiLineCells, setMultiSelect, setPagination, setRequired, setRowHeaderWidth, setSelected, setSelected, setSelectedIds, setSettingsRegistry, setShowSelection, setShowTotalAggregation, setSortable, setStyleName, setStyleProvider, setTabIndex, setTablePresentationsLayout, setTextSelectionEnabled, setUiComponentProperties, setUiComponentsGenerator, setUiTestId, setUiTestIdsSupport, setupAutowiredColumns, setupColumnSettings, setupPaginationDataSourceProvider, setUserSettingsTools, setViewRepository, setVisibleColumns, showCustomPopup, showCustomPopupActions, showEmptyStateIfPossible, showParseErrorNotification, sort, tableSelectionChanged, tableSourceItemSetChanged, tableSourcePropertyValueChanged, tableSourceSelectedItemChanged, tableSourceStateChanged, updateCompositionStylesTopPanelVisible, updatePresentationSettings
Methods inherited from class io.jmix.ui.component.impl.AbstractActionsHolderComponent
actionPropertyChanged, addAction, addAction, createContextMenuPopup, createShortcutsDelegate, getAction, getActions, getActionsPermissions, initContextMenuButton, initContextMenuPopup, removeAction, removeAction, removeAllActions, setContextMenuButtonAction, setContextMenuButtonCaption, setContextMenuButtonIcon, setThemeConstantsManager
Methods inherited from class io.jmix.ui.component.impl.AbstractComponent
addAttachListener, addDetachListener, addStyleName, assignDebugId, getAlignment, getComponent, getContextHelpIconClickHandler, getContextHelpText, getDebugId, getDescription, getEventHub, getFrame, getHeight, getHeightSizeUnit, getHtmlSanitizer, getIcon, getIconName, getIconResource, getId, getParent, getUiComponentProperties, getUiProperties, getWidth, getWidthSizeUnit, getXmlDescriptor, hasSubscriptions, hasValidationError, isAttached, isContextHelpTextHtmlEnabled, isDescriptionAsHtml, isEnabled, isEnabledRecursive, isHtmlSanitizerEnabled, isResponsive, isVisible, isVisibleRecursive, onContextHelpIconClick, publish, removeStyleName, sanitize, setAlignment, setApplicationContext, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabled, setDescription, setDescriptionAsHtml, setEnabled, setFrame, setHeight, setHtmlSanitizerEnabled, setIcon, setIconFromSet, setParent, setResponsive, setValidationError, setVisible, setWidth, setXmlDescriptor, unsubscribe, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
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.component.ActionsHolder
addAction, addAction, getAction, getActionNN, getActions, removeAction, removeAction, removeAllActions
Methods inherited from interface io.jmix.ui.component.Component
addStyleName, getAlignment, getHeight, getHeightSizeUnit, getId, getParent, getStyleName, getWidth, getWidthSizeUnit, isEnabled, isEnabledRecursive, isResponsive, isVisible, isVisibleRecursive, removeStyleName, setAlignment, setEnabled, setHeight, setHeightAuto, setHeightFull, setId, setParent, setResponsive, setSizeAuto, setSizeFull, setStyleName, setVisible, setWidth, setWidthAuto, setWidthFull, unwrap, unwrapComposition, unwrapCompositionOrNull, unwrapOrNull, withUnwrapped, withUnwrappedComposition
Methods inherited from interface io.jmix.ui.component.Component.BelongToFrame
getFrame, setFrame
Methods inherited from interface io.jmix.ui.component.Component.Editable
isEditable, isEditableWithParent, setEditable
Methods inherited from interface io.jmix.ui.component.Component.Focusable
focus, getTabIndex, isFocusable, setFocusable, setTabIndex
Methods inherited from interface io.jmix.ui.component.Component.HasCaption
getCaption, setCaption
Methods inherited from interface io.jmix.ui.component.Component.HasDescription
getDescription, setDescription
Methods inherited from interface io.jmix.ui.component.Component.HasIcon
getIcon, setIcon, setIconFromSet
Methods inherited from interface io.jmix.ui.component.HasButtonsPanel
getButtonsPanel, setButtonsPanel
Methods inherited from interface io.jmix.ui.component.HasContextHelp
getContextHelpIconClickHandler, getContextHelpText, isContextHelpTextHtmlEnabled, setContextHelpIconClickHandler, setContextHelpText, setContextHelpTextHtmlEnabled
Methods inherited from interface io.jmix.ui.component.HasHtmlCaption
isCaptionAsHtml, setCaptionAsHtml
Methods inherited from interface io.jmix.ui.component.HasHtmlDescription
isDescriptionAsHtml, setDescriptionAsHtml
Methods inherited from interface io.jmix.ui.component.HasHtmlSanitizer
isHtmlSanitizerEnabled, setHtmlSanitizerEnabled
Methods inherited from interface io.jmix.ui.component.HasPagination
getPagination, setPagination
Methods inherited from interface io.jmix.ui.component.HasTablePresentations
applyPresentation, applyPresentationAsDefault, getDefaultPresentationId, getDefaultSettings, getPresentations, loadPresentations, resetPresentation, setDefaultSettings
Methods inherited from interface io.jmix.ui.component.ListComponent
getSelected, getSingleSelected, isMultiSelect, setSelected, setSelected
Methods inherited from interface io.jmix.ui.component.LookupComponent
getLookupSelectedItems, setLookupSelectHandler
Methods inherited from interface io.jmix.ui.component.Table
addColumn, addColumn, addColumn, addColumn, addColumnCollapseListener, addColumnReorderListener, addGeneratedColumn, addGeneratedColumn, addGeneratedColumn, addPrintable, addSelectionListener, addStyleProvider, getAggregationDistributionProvider, getAggregationResults, getAggregationStyle, getColumn, getColumnControlVisible, getColumnReorderingAllowed, getColumns, getEmptyStateLinkClickHandler, getEmptyStateLinkMessage, getEmptyStateMessage, getEnterPressAction, getInstanceContainer, getItemClickAction, getItemDescriptionProvider, getItems, getMinHeight, getMinHeightSizeUnit, getMinWidth, getMinWidthSizeUnit, getNotCollapsedColumns, getPrintable, getPrintable, getRowHeaderWidth, getSortInfo, getSubPart, isAggregatable, isColumnHeaderVisible, isContextMenuEnabled, isMultiLineCells, isShowSelection, isShowTotalAggregation, isSortable, isTextSelectionEnabled, removeColumn, removeGeneratedColumn, removePrintable, removeStyleProvider, repaint, requestFocus, scrollTo, selectAll, setAggregatable, setAggregationDistributionProvider, setAggregationStyle, setColumnControlVisible, setColumnHeaderVisible, setColumnReorderingAllowed, setContextMenuEnabled, setEmptyStateLinkClickHandler, setEmptyStateLinkMessage, setEmptyStateMessage, setEnterPressAction, setItemClickAction, setItemDescriptionProvider, setMinHeight, setMinWidth, setMultiLineCells, setMultiSelect, setRequired, setRowHeaderWidth, setShowSelection, setShowTotalAggregation, setSortable, setStyleProvider, setTextSelectionEnabled, showCustomPopup, showCustomPopupActions, sort
-
Constructor Details
-
TreeTableImpl
public TreeTableImpl()
-
-
Method Details
-
createComponent
-
setRowHeaderMode
Description copied from interface:Table
Sets the row header mode.- Specified by:
setRowHeaderMode
in interfaceTable<E>
- Overrides:
setRowHeaderMode
in classAbstractTable<JmixTreeTable,
E> - Parameters:
rowHeaderMode
- row header mode
-
setItems
Description copied from interface:Table
Sets an instance ofTableItems
as the Table data source.- Specified by:
setItems
in interfaceTable<E>
- Overrides:
setItems
in classAbstractTable<JmixTreeTable,
E> - Parameters:
tableItems
- the Table data source
-
createTableDataContainer
- Overrides:
createTableDataContainer
in classAbstractTable<JmixTreeTable,
E>
-
getTreeTableSource
-
setIconProvider
Description copied from interface:Table
Sets the row icon provider for the Table.- Specified by:
setIconProvider
in interfaceTable<E>
- Overrides:
setIconProvider
in classAbstractTable<JmixTreeTable,
E> - Parameters:
iconProvider
- an icon provider to set- See Also:
-
expandAll
public void expandAll() -
getParentsMapping
-
getItemIdsWithChildren
-
toItemIdsTree
-
toContainerPreOrder
-
getCollapsedItemIds
-
expand
-
collapseAll
public void collapseAll()- Specified by:
collapseAll
in interfaceTreeTable<E>
-
collapse
-
expandUpTo
public void expandUpTo(int level) Description copied from interface:TreeTable
Expand tree table including specified level- Specified by:
expandUpTo
in interfaceTreeTable<E>
- Parameters:
level
- level of TreeTable nodes to expand, if passed level = 1 then root items will be expanded
-
getLevel
-
isExpanded
- Specified by:
isExpanded
in interfaceTreeTable<E>
-