UNPKG

@syncfusion/ej2-richtexteditor

Version:
170 lines (160 loc) 5.05 kB
import { RenderType } from '../base/enum'; import { IRichTextEditor, IQuickToolbar } from '../base/interface'; import { IToolbarItems } from '../../common/interface'; import { ServiceLocator } from '../services/service-locator'; import { BaseQuickToolbar } from './base-quick-toolbar'; import { BaseToolbar } from './base-toolbar'; import { RichTextEditorModel } from '../base/rich-text-editor-model'; import { QuickToolbarType } from '../../common/types'; /** * `Quick toolbar` module is used to handle Quick toolbar actions. */ export declare class QuickToolbar implements IQuickToolbar { private offsetX; private offsetY; private deBouncer; private target; private locator; private parent; private contentRenderer; linkQTBar: BaseQuickToolbar; textQTBar: BaseQuickToolbar; imageQTBar: BaseQuickToolbar; audioQTBar: BaseQuickToolbar; videoQTBar: BaseQuickToolbar; tableQTBar: BaseQuickToolbar; inlineQTBar: BaseQuickToolbar; debounceTimeout: number; isDestroyed: boolean; private escapeKeyPressed; constructor(parent?: IRichTextEditor, locator?: ServiceLocator); private formatItems; private getQTBarOptions; /** * createQTBar method * * @param {string} popupType - specifies the string value * @param {string} mode - specifies the string value. * @param {string} items - specifies the string. * @param {RenderType} type - specifies the render type. * @returns {BaseQuickToolbar} - specifies the quick toolbar * @hidden */ createQTBar(popupType: QuickToolbarType, mode: string, items: (string | IToolbarItems)[], type: RenderType): BaseQuickToolbar; private initializeQuickToolbars; private onMouseDown; private keyUpQT; private renderQuickToolbars; private renderInlineQuickToolbar; /** * Method for showing the inline quick toolbar * * @param {number} x -specifies the value of x. * @param {number} y - specifies the y valu. * @param {HTMLElement} target - specifies the target element. * @param {KeyboardEvent | MouseEvent} originalEvent - specifies the original event. * @returns {void} * @hidden */ showInlineQTBar(x: number, y: number, target: HTMLElement, originalEvent?: KeyboardEvent | MouseEvent): void; /** * Method for hidding the inline quick toolbar * * @returns {void} * @hidden */ hideInlineQTBar(): void; /** * Method for hidding the quick toolbar * * @returns {void} * @hidden */ hideQuickToolbars(): void; private deBounce; private mouseUpHandler; private hasResizeElement; private isEmbedVidElem; private keyDownHandler; private inlineQTBarMouseDownHandler; private keyUpHandler; private selectionChangeHandler; private onSelectionChange; /** * getInlineBaseToolbar method * * @returns {void} * @hidden */ getInlineBaseToolbar(): BaseToolbar; /** * Destroys the ToolBar. * * @function destroy * @returns {void} * @hidden */ destroy(): void; private wireInlineQTBarEvents; private unWireInlineQTBarEvents; private toolbarUpdated; /** * addEventListener * * @returns {void} * @hidden */ addEventListener(): void; private preventQuickToolbarClose; private onKeyDown; private onIframeMouseDown; private updateCss; private setCssClass; private setRtl; /** * removeEventListener * * @returns {void} * @hidden */ removeEventListener(): void; /** * Called internally if any of the property value changed. * * @param {RichTextEditorModel} e - specifies the element. * @returns {void} * @hidden */ protected onPropertyChanged(e: { [key: string]: RichTextEditorModel; }): void; /** * For internal use only - Get the module name. * * @returns {void} * @hidden */ private getModuleName; /** * * @returns {BaseQuickToolbar[]} - specifies the quick toolbar instance. * @hidden * @private */ getQuickToolbarInstance(): BaseQuickToolbar[]; onScroll(e: MouseEvent): void; /** * Refreshes the quick toolbar popups by hiding and then displaying them again * at a target element's location. This method iterates over all available quick * toolbars, checking their rendered state and visibility. If a toolbar is * currently visible, it is hidden and then shown again to refresh its position * based on the specified mouse event. Additionally, for text toolbars, any * previously stored status is restored after the refresh. * * @param {MouseEvent} e - The mouse event that triggers the refresh, used to * determine the new position for the toolbars. * @returns {void} */ refreshQuickToolbarPopup(e?: MouseEvent): void; private onWindowResize; }