UNPKG

@eclipse-scout/core

Version:
161 lines 8.06 kB
import { Accordion, Comparator, Event, EventDelegator, EventHandler, Filter, FilterOrFunction, FilterResult, FilterSupport, Group, InitModelOf, KeyStrokeContext, ObjectOrChildModel, ObjectOrModel, PropertyChangeEvent, TextFilter, Tile, TileAccordionEventMap, TileAccordionLayout, TileAccordionModel, TileAccordionSelectionHandler, TileGrid, TileGridLayoutConfig } from '../../index'; export declare class TileAccordion<TTile extends Tile = Tile> extends Accordion implements TileAccordionModel { model: TileAccordionModel; eventMap: TileAccordionEventMap; self: TileAccordion<TTile>; groups: Group<TileGrid<TTile>>[]; gridColumnCount: number; multiSelect: boolean; selectable: boolean; takeTileFiltersFromGroup: boolean; tileComparator: Comparator<TTile>; filters: Filter<TTile>[]; tileGridLayoutConfig: TileGridLayoutConfig; tileGridSelectionHandler: TileAccordionSelectionHandler; withPlaceholders: boolean; virtual: boolean; textFilterEnabled: boolean; filterSupport: FilterSupport<TTile>; createTextFilter: () => TextFilter<TTile>; updateTextFilterText: string; $filterFieldContainer: JQuery; protected _selectionUpdateLocked: boolean; protected _tileGridPropertyChangeHandler: EventHandler<PropertyChangeEvent>; protected _groupBodyHeightChangeHandler: EventHandler<Event<Group<TileGrid<TTile>>>>; constructor(); protected _render(): void; protected _createLayout(): TileAccordionLayout; protected _renderProperties(): void; protected _remove(): void; protected _init(model: InitModelOf<this>): void; protected _createKeyStrokeContext(): KeyStrokeContext; protected _initGroup(group: Group<TileGrid<TTile>> & { body: TileGrid<TTile> & { __tileAccordionEventDelegator?: EventDelegator; }; }): void; protected _deleteGroup(group: Group<TileGrid<TTile>> & { body: TileGrid<TTile> & { __tileAccordionEventDelegator?: EventDelegator; }; }): void; setGroups(groups: Group<TileGrid<TTile>>[]): void; /** @see TileAccordionModel.gridColumnCount */ setGridColumnCount(gridColumnCount: number): void; /** @see TileAccordionModel.tileGridLayoutConfig */ setTileGridLayoutConfig(layoutConfig: ObjectOrModel<TileGridLayoutConfig>): void; protected _setTileGridLayoutConfig(layoutConfig: ObjectOrModel<TileGridLayoutConfig>): void; /** @see TileAccordionModel.withPlaceholders */ setWithPlaceholders(withPlaceholders: boolean): void; /** @see TileAccordionModel.virtual */ setVirtual(virtual: boolean): void; /** @see TileAccordionModel.selectable */ setSelectable(selectable: boolean): void; /** @see TileAccordionModel.multiSelect */ setMultiSelect(multiSelect: boolean): void; getGroupById(id: string): Group<TileGrid<TTile>>; getGroupByTile(tile: TTile): Group<TileGrid<TTile>>; /** * Distribute the tiles to the corresponding groups and returns an object with group id as key and array of tiles as value. * Always returns all current groups even if the given tiles may not be distributed to all groups. */ protected _groupTiles(tiles: TTile[]): Record<string, TTile[]>; deleteTile(tile: TTile): void; deleteTiles(tilesToDelete: TTile[] | TTile): void; deleteAllTiles(): void; /** * Distributes the given tiles to their corresponding groups. * * If the list contains new tiles not assigned to a group yet, an exception will be thrown. */ setTiles(tilesOrModels: ObjectOrChildModel<TTile> | ObjectOrChildModel<TTile>[]): void; getTiles(): TTile[]; getTileCount(): number; /** * @param filter The filters to add. * @param applyFilter Whether to apply the filters after modifying the filter list or not. Default is true. */ addFilter(filter: FilterOrFunction<TTile> | FilterOrFunction<TTile>[], applyFilter?: boolean): void; /** * @param filter The filters to remove. * @param applyFilter Whether to apply the filters after modifying the filter list or not. Default is true. */ removeFilter(filter: FilterOrFunction<TTile> | FilterOrFunction<TTile>[], applyFilter?: boolean): void; /** * @param filter The new filters. * @param applyFilter Whether to apply the filters after modifying the filter list or not. Default is true. */ setFilters(filters: FilterOrFunction<TTile> | FilterOrFunction<TTile>[], applyFilter?: boolean): void; protected _setFilters(filter: FilterOrFunction<TTile> | FilterOrFunction<TTile>[]): void; filter(): void; protected _filter(): FilterResult<TTile>; protected _createFilterSupport(): FilterSupport<TTile>; protected _createTextFilter(): TextFilter<TTile>; protected _updateTextFilterText(filter: Filter<TTile>, text: string): boolean; /** @see TileAccordionModel.textFilterEnabled */ setTextFilterEnabled(textFilterEnabled: boolean): void; isTextFilterFieldVisible(): boolean; protected _renderTextFilterEnabled(): void; getFilteredTiles(): TTile[]; getFilteredTileCount(): number; /** * Compared to {@link getFilteredTiles()}, this function considers the collapsed state of the group as well, meaning only filtered tiles of expanded groups are returned. */ getVisibleTiles(): TTile[]; /** * Compared to {@link getFilteredTiles()}, this function considers the collapsed state of the group as well, meaning only filtered tiles of expanded groups are counted. */ getVisibleTileCount(): number; findVisibleTileIndexAt(x: number, y: number, startIndex?: number, reverse?: boolean): number; /** * Selects the given tiles and deselects the previously selected ones. * * Tiles, that are currently invisible due to an active filter, are excluded and won't be selected. */ selectTiles(tiles: TTile[]): void; /** @see selectTiles */ selectTile(tile: TTile): void; /** * Selects all tiles. As for every selection operation: only considers filtered tiles and tiles of expanded groups */ selectAllTiles(): void; deselectTiles(tiles: TTile[]): void; deselectTile(tile: TTile): void; deselectAllTiles(): void; addTilesToSelection(tiles: TTile[]): void; addTileToSelection(tile: TTile): void; getSelectedTiles(): TTile[]; getSelectedTile(): TTile; getSelectedTileCount(): number; /** * Deselects every tile if all tiles are selected. Otherwise, selects all tiles. */ toggleSelection(): void; /** @see TileAccordionModel.tileComparator */ setTileComparator(comparator: Comparator<TTile>): void; sortTiles(): void; setFocusedTile(tile: TTile): void; getFocusedTile(): TTile; getVisibleGridRowCount(): number; getVisibleGridX(tile: TTile): number; getVisibleGridY(tile: TTile): number; getGroupByVisibleRow(rowToFind: number): Group<TileGrid<TTile>>; /** * @returns the index of the row where the group is located.<p> * Example: There are 3 rows and 2 groups. The first group contains 2 rows, the second 1 row. * The index of the first group is 0, the index of the second group is 2. */ getVisibleRowByGroup(groupToFind: Group<TileGrid<TTile>>): number; expandedGroups(): Group<TileGrid<TTile>>[]; protected _handleSelectionChanged(tileGrid: TileGrid<TTile>): void; protected _onTileGridPropertyChange(event: PropertyChangeEvent<any, TileGrid<TTile>>): void; protected _onGroupCollapsedChange(event: PropertyChangeEvent<boolean, Group<TileGrid<TTile>>>): void; protected _handleCollapsed(group: Group<TileGrid<TTile>>): void; protected _onGroupBodyHeightChange(event: Event<Group<TileGrid<TTile>>>): void; protected _onGroupBodyHeightChangeDone(event: Event<Group<TileGrid<TTile>>>): void; /** * @returns the first fully visible tile at the scrollTop. */ tileAtScrollTop(scrollTop: number): TTile; } //# sourceMappingURL=TileAccordion.d.ts.map