in src/sampleSlicer.ts [516:553]
private initTableView(): void {
const slicerText = this.settings.slicerText,
rows = this.settings.general.rows,
columns = this.settings.general.columns,
viewport = SampleSlicer.getSlicerBodyViewport(this.currentViewport),
slicerBody = this.slicerBody;
let rowEnterHandler = (rowSelection: Selection<any>) => {
this.enterSelection(rowSelection);
};
let rowUpdateHandler = (rowSelection: Selection<any>) => {
this.updateSelection(rowSelection);
};
let rowExitHandler = (rowSelection: Selection<any>) => {
rowSelection.remove();
};
const rowHeight = slicerText.height !== 0
? slicerText.height
: textMeasurementService.estimateSvgTextHeight(SampleSlicer.getSampleTextProperties(slicerText.textSize))
const tableViewOptions: TableViewOptions = {
rowHeight,
columnWidth: slicerText.width,
rows,
columns,
onEnter: rowEnterHandler,
onExit: rowExitHandler,
onUpdate: rowUpdateHandler,
scrollEnabled: true,
viewport,
baseContainer: slicerBody,
};
this.tableView = TableViewFactory.createTableView(tableViewOptions);
}