@eclipse-scout/core
Version:
Eclipse Scout runtime
49 lines • 2.43 kB
TypeScript
import { GridData, Tile } from '..';
export declare const tileUtil: {
/**
* Creates a matrix containing references to the given tiles at the points where these tiles are.
* If the tiles span some columns or rows, the spanned cells reference the tiles as well.
*
* Example: If a tile has a `gridData` with `x = 2`, `y = 4`, `w = 2`, `h = 1` it will be at position `matrix[2][4]` and `matrix[3][4]`.
*
* It uses gridDataHints if x/y are set explicitly. Otherwise, gridData is used.
* Tiles with no gridData set or whose gridData.x or y is < 0 are ignored.
*
* @returns a two-dimensional array where the first dimension is the x-axis and the second the y-axis.
*/
buildMatrix(tiles: Tile[]): TileMatrix;
/**
* Moves the tiles down that intersect with the resized tile to make space for the resized tile.
* Existing tiles on the bottom will be pushed down as well if they are in the way.
*
* This only works for tiles with an explicit position which means it only works if gridDataHints.x and gridDataHints.y are greater than or equal to 0.
* Tiles without an explicit position are ignored because they are arranged automatically by the logical grid.
*
* @param ignore If the function returns true the passed tile will be ignored and never be moved. This is typically used for placeholder tiles.
*/
moveOtherTilesDown(tiles: Tile[], resizedTile: Tile, newGridData: GridData, ignore?: (tile: Tile) => boolean): void;
};
/**
* A two-dimensional array where the first dimension is the x-axis and the second the y-axis.
*/
export type TileMatrix = Tile[][] & {
/**
* The starting point of the x-axis array. It is the lowest x of all grid datas in the matrix, never smaller than 0.
*/
x: number;
/**
* The starting point of the y-axis array. It is the lowest y of all grid datas in the matrix, never smaller than 0.
*/
y: number;
/**
* The length of the x-axis array adjusted by {@link x}.
* It is the number of columns between the left most tile and the right side of the right most tile in the matrix.
*/
width: number;
/**
* The length of the y-axis array adjusted by {@link y}.
* It is the number of rows between the uppermost tile and the bottom side of the lowest tile in the matrix.
*/
height: number;
};
//# sourceMappingURL=tileUtil.d.ts.map