devexpress-richedit
Version:
DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.
32 lines (31 loc) • 1.46 kB
JavaScript
import { ListUtils } from '@devexpress/utils/lib/utils/list';
import { NumberMapUtils } from '@devexpress/utils/lib/utils/map/number';
import { DebugBaseVisualizer } from './debug-base-visualizer';
import { DebugVisualizerType } from './debug-visualizer-type';
export class LayoutBoundsInfoHelper extends DebugBaseVisualizer {
getType() {
return DebugVisualizerType.LayoutBounds;
}
getContainerClassName() {
return "dxreDebugLayoutBoundsContainer";
}
fillPageContainer(layout, pageContainer, pageIndex) {
const page = layout.pages[pageIndex];
ListUtils.forEach(page.mainSubDocumentPageAreas, (pa) => this.drawPageArea(pageContainer, pa));
NumberMapUtils.forEach(page.otherPageAreas, (pa) => this.drawPageArea(pageContainer, pa));
}
drawPageArea(pageContainer, pa) {
const elem = this.createElement("dxreDebugPageAreaBounds", pa);
ListUtils.forEach(pa.columns, (col) => this.drawColumn(elem, col));
pageContainer.appendChild(elem);
}
drawColumn(pageAreaContainer, column) {
const elem = this.createElement("dxreDebugColumnBounds", column);
ListUtils.forEach(column.rows, (row) => this.drawRow(elem, row));
pageAreaContainer.appendChild(elem);
}
drawRow(columnContainer, row) {
const elem = this.createElement("dxreDebugRowBounds", row);
columnContainer.appendChild(elem);
}
}