devexpress-richedit
Version:
DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.
74 lines (73 loc) • 3.57 kB
TypeScript
import { Flag } from '@devexpress/utils/lib/class/flag';
import { Offset } from '@devexpress/utils/lib/geometry/point';
import { LayoutAnchoredObjectBox } from '../../layout/main-structures/layout-boxes/layout-anchored-object-box';
import { LayoutColumn } from '../../layout/main-structures/layout-column';
import { LayoutTableCellInfo } from '../../layout/table/layout-table-cell-info';
import { TablePosition } from '../../model/tables/main-structures/table';
import { TableWidthUnit } from '../../model/tables/secondary-structures/table-units';
import { BoxWrapInfo } from '../box/box-wrap';
import { RowFormatter } from '../row/formatter';
import { RowFormatterResult } from '../row/result';
import { TableInfo } from './info/table-info';
export declare enum AddRowToTableResult {
None = 0,
RowAdded = 1,
TableFinished = 2,
GoToNextColumn = 4
}
export declare class Formatter {
private readonly _posToWaitingContinuedFormatterMap;
private parentFormatter;
tableInfo: TableInfo;
private column;
protected isFullyFormatted: boolean;
protected _columnWasEmpty: boolean;
protected get posToWaitingContinuedFormatterMap(): any;
protected get needAddSomeLayoutRows(): boolean;
private get noReadyTableRows();
protected get columnWasEmpty(): boolean;
get isCurrTableCellFirstInRow(): boolean;
get isCurrTableRowIsFirstInTable(): boolean;
get currLayoutRowOffset(): Offset;
get currLayoutRowContentWidth(): number;
get nestedTableMaxWidth(): number;
private get nestedLevel();
get isCurrLayoutRowIsFirstInCell(): boolean;
get actualFormatter(): Formatter;
private get position();
private get grid();
constructor(rowFormatter: RowFormatter, tablePositions: TablePosition[], column: LayoutColumn, tableMaxWidth: number, offset: Offset, parentCell: LayoutTableCellInfo, index: number, avaliableHeight: number, parentFormatter: Formatter, pageIndexFromWhichTableWasMoved?: number | null);
private getNestedTablePosition;
private createInnerFormatter;
private createNextCellFormatter;
private resetPosition;
initColumn(column: LayoutColumn, parentCell: LayoutTableCellInfo, avaliableHeight: number): void;
columnStart(column: LayoutColumn, weNeedToGoDeeper?: boolean, yPos?: number, parentCell?: LayoutTableCellInfo, avaliableHeight?: number): void;
findNextCell(result: Flag, info: BoxWrapInfo): void;
private isCellFinished;
private isLayoutRowIsLastOnCell;
resetCaseInTextAnchorObject(info: BoxWrapInfo, obj: LayoutAnchoredObjectBox): boolean;
applyResultOfTopLevelFormatters(result: Flag, info: BoxWrapInfo, lowLevelFormatters?: Formatter[]): void;
private processResultOfTopLevelFormatter;
private getRowHeight;
addLayoutRow(rowResult: RowFormatterResult, info: BoxWrapInfo): Flag;
private cantPlaceRow;
private resetFromRow;
private setNextCell;
private finishCell;
private cancelPlaceRow;
private finishRow;
columnEnd(): void;
finishTable(): void;
private getAvaliableSpaceForCellContent;
private getCellContentMaxBottom;
private setCellsHeight;
private static getCellHeight;
private setRowsVerticalBounds;
private static setRowHeightInternal;
private setRowHeightWhenRowBelongsToManyColumns;
private setRowHeight;
private extendCellHeightToRowHeight;
private applyBottomHorizontalBordersChangesForPrevRow;
static getCellMargin(cellMargin: TableWidthUnit): number;
}