devexpress-richedit
Version:
DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.
76 lines (75 loc) • 2.95 kB
TypeScript
import { FixedInterval } from '@devexpress/utils/lib/intervals/fixed';
import { LayoutBoxIteratorBase } from '../layout-engine/layout-box-iterator/layout-box-iterator-base';
import { FormatterManager } from '../layout-formatter/managers/formatter-manager';
import { DocumentLayout } from '../layout/document-layout';
import { IModelManager } from '../model-manager';
import { SubDocument } from './sub-document';
export declare enum FindReplaceState {
Start = 0,
Found = 1,
DocumentBegin = 2,
DocumentEnd = 3,
SearchEnd = 4
}
export declare enum SearchDirection {
Up = 1,
Down = 2,
All = 3
}
export declare class FindReplaceHelper {
private subDocument;
private layout;
private modelManager;
private template;
private replaceWith;
private searchDirection;
private matchCase;
private regularExpression;
private wholeWordsOnly;
private findWithPosition;
private currentPos;
private lastFound;
private supportFunction;
private templateLength;
private state;
private beginOrStartDocumentReach;
private layoutFormatterManager;
private pageIndex;
private storeSelection;
constructor(modelManager: IModelManager, layoutFormatterManager: FormatterManager, pageIndex: number, subDocument: SubDocument, layout: DocumentLayout, storeSelection: (interval: FixedInterval) => void);
setSearchParams(whatFind: string, replaceWith: string, searchDirection: SearchDirection, matchCase: boolean, regularExpression: boolean, findWithPosition: number, wholeWordsOnly: boolean): void;
static isCanSetWholeWordsOnlyForThisExpression(expression: string): number;
findNext(): FindReplaceState;
private shouldSkipSearchInterval;
private findNextDown;
private findNextUp;
private findNextAll;
private findNextDownInternal;
private findNextDownWholeWordsOnly;
private findNextUpInternal;
private findNextUpWholeWordsOnly;
private isCharCanBeInWord;
getLastFound(): FixedInterval;
replaceLastFound(): void;
replaceAll(startWithPos: number): number;
private crateSupportFunction;
private static calcOneElemSuppFunc;
}
export declare class CharacterIteratorBase {
subDocument: SubDocument;
iterator: LayoutBoxIteratorBase;
modelManager: IModelManager;
char: string;
charIndexInBox: number;
constructor(modelManager: IModelManager, layoutFormatterManager: FormatterManager, pageIndex: number, subDocument: SubDocument, startPosition: number, endPosition: number);
getCurrLogPosition(): number;
getCharInternal(): void;
}
export declare class ForwardCharacterIterator extends CharacterIteratorBase {
getCharInternal(): boolean;
nextChar(): boolean;
}
export declare class BackwardCharacterIterator extends CharacterIteratorBase {
getCharInternal(): boolean;
prevChar(): boolean;
}