UNPKG

devexpress-richedit

Version:

DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.

55 lines (54 loc) 2.25 kB
import { FixedInterval } from '@devexpress/utils/lib/intervals/fixed'; import { FormatterManager } from '../layout-formatter/managers/formatter-manager'; import { DocumentLayout } from '../layout/document-layout'; import { LayoutBoxType } from '../layout/main-structures/layout-boxes/layout-box'; import { ISelectionBase } from '../selection/selection-base'; import { ModelManipulator } from './manipulators/model-manipulator'; import { SubDocument } from './sub-document'; export declare class SwitchTextCaseManipulator { dispatcher: ModelManipulator; constructor(dispatcher: ModelManipulator); } export declare class WordPart { position: number; text: string; type: LayoutBoxType; constructor(position: number, text: string, type: LayoutBoxType); merge(pos: number, text: string, type: LayoutBoxType): boolean; getEndPosition(): number; } export declare class SentenceWord { parts: WordPart[]; getLastWordPart(): WordPart; } export declare class Sentence { words: SentenceWord[]; getLastWord(): SentenceWord; } export declare class SentenceStructureBuilder { sentences: Sentence[]; interval: FixedInterval; layout: DocumentLayout; subDocument: SubDocument; selection: ISelectionBase; private layoutBoxIterator; private currSentence; private currWord; private currWordPart; private isSentenceEnd; private isWordEnd; private findEndLastSentence; private lastBox; constructor(subDocument: SubDocument, layout: DocumentLayout, selection: ISelectionBase, interval: FixedInterval); static getBuilder(layoutFormatterManager: FormatterManager, selection: ISelectionBase, subDocument: SubDocument, interval: FixedInterval, splitByInterval: boolean): SentenceStructureBuilder; private static correctFirstSentence; static splitPartsByInterval(sentences: Sentence[], interval: FixedInterval): void; static splitPartsByPosition(sentences: Sentence[], position: number): void; build(): boolean; private collect; private addNewSentence; private addNewWord; private addNewWordPart; private needCalculateMoreLayout; private findFirstSentenceStartPosition; }