devexpress-richedit
Version:
DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.
27 lines (26 loc) • 1.93 kB
TypeScript
import dxButton from 'devextreme/ui/button';
import dxButtonGroup from 'devextreme/ui/button_group';
import dxColorBox from 'devextreme/ui/color_box';
import dxMenu from 'devextreme/ui/menu';
import dxNumberBox from 'devextreme/ui/number_box';
import dxSelectBox from 'devextreme/ui/select_box';
import { IToolbarButtonGroupItemOptions, IToolbarButtonItemOptions, IToolbarColorBoxItemOptions, IToolbarMenuItemOptions, IToolbarNumberBoxItemOptions, IToolbarSelectBoxItemOptions } from '../i-toolbar-item-options';
import { IRibbonItem, OnCommandExecutedHandler } from '../ribbon';
import { ToolbarItemBase } from './toolbar-item-base';
export type InteractiveItemOptions = IToolbarButtonItemOptions | IToolbarButtonGroupItemOptions | IToolbarSelectBoxItemOptions | IToolbarMenuItemOptions | IToolbarNumberBoxItemOptions | IToolbarColorBoxItemOptions;
type WidgetTypeByOptionsType<T extends InteractiveItemOptions> = T extends IToolbarButtonItemOptions ? dxButton : T extends IToolbarButtonItemOptions ? dxButtonGroup : T extends IToolbarSelectBoxItemOptions ? dxSelectBox : T extends IToolbarNumberBoxItemOptions ? dxNumberBox : T extends IToolbarColorBoxItemOptions ? dxColorBox : dxMenu;
export declare abstract class ToolbarInteractiveItem<OptionsType extends InteractiveItemOptions> extends ToolbarItemBase implements IRibbonItem {
protected options: OptionsType;
protected onCommandExecuted: OnCommandExecutedHandler;
protected widget: WidgetTypeByOptionsType<OptionsType>;
readonly name: string | number;
constructor(options: OptionsType, onCommandExecuted: OnCommandExecutedHandler);
setEnabled(enabled: boolean): void;
setVisible(visible: boolean): void;
abstract setValue(_value: any): void;
protected getOnInitializedHandler(): (e: {
component: WidgetTypeByOptionsType<OptionsType>;
}) => void;
protected applyWidget(e: any): void;
}
export {};