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.33 kB
TypeScript
import { ICloneable } from '@devexpress/utils/lib/types';
import { RulerControls } from '../manager';
import { RulerModelData } from '../model-data';
export interface IRulerSubControl {
dispose(): void;
showShadow(): void;
hideShadow(): void;
lineControlSetPosition(): void;
}
export declare abstract class RulerMultiControl<TSubControl extends IRulerSubControl, TModelState extends ICloneable<TModelState>, TVisualState> {
protected modelData: RulerModelData;
protected controls: RulerControls;
protected subControls: TSubControl[];
currModelState: TModelState;
protected prevModelState: TModelState;
protected handleControlIndex: number;
protected get activeSubControl(): TSubControl;
protected viewState: TVisualState[];
protected abstract getModelState(): TModelState;
abstract updateView(): void;
protected abstract createSubControl(): TSubControl;
protected abstract calculateNewModelState(distance: number): void;
constructor(modelData: RulerModelData, controls: RulerControls);
dispose(): void;
update(): void;
updateModelState(): void;
onMouseMove(distance: number, _source: HTMLElement): void;
onEscPress(): void;
protected finishHandle(): void;
protected setCount(count: number): void;
}