@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
78 lines (77 loc) • 5.05 kB
TypeScript
import { StateButtonsImpl, StateButtonsState } from "@docsvision/webclient/BackOffice/StateButtonsImpl";
import { GenModels } from "@docsvision/webclient/Generated/DocsVision.WebClient.Models";
import { BaseControl, BaseControlParams } from "@docsvision/webclient/System/BaseControl";
import { $Layout } from "@docsvision/webclient/System/$Layout";
import { $CardInfo, $EditOperationStore, $LayoutInfo } from "@docsvision/webclient/System/LayoutServices";
import { CancelableApiEvent, BasicApiEvent } from '@docsvision/webclient/System/ApiEvent';
import { $LayoutController } from '@docsvision/webclient/Generated/DocsVision.WebClient.Controllers';
import { $LayoutManager } from '@docsvision/webclient/System/$LayoutManager';
import { $RouterNavigation } from '@docsvision/webclient/System/$Router';
import { OperationExecutingEventArgs } from '@docsvision/webclient/BackOffice/OperationExecutingEventArgs';
import { OperationParametersPanelEventArgs } from '@docsvision/webclient/BackOffice/OperationParametersPanelEventArgs';
/**
* Содержит публичные свойства элемента управления [Автомат состояния]{@link StateButtons}.
*/
export declare class StateButtonsParams extends BaseControlParams {
/** Стандартный CSS класс со стилями элемента управления. */
standardCssClass?: string;
/** Список операций. */
operations: GenModels.OperationDataModel[];
/** Включена ли вертикальная ориентация. */
verticalOrientation?: boolean;
/** Ограничение количества отображаемых кнопок (остальные кнопки будут доступны по кнопке "..."). */
buttonsLimit?: number;
/** Функция, генерирующая сообщение для диалогового окна о подтверждении операции */
textGenerator?: (sender: StateButtons, operationDataModel: GenModels.OperationDataModel) => string;
services?: $EditOperationStore & $Layout & $LayoutInfo & $CardInfo & $LayoutController & $LayoutManager & $RouterNavigation;
/** Событие возникает перед отображением диалогового окна запроса параметров. */
buttonClicking?: CancelableApiEvent<GenModels.OperationDataModel>;
/** Событие возникает перед отображением диалогового окна запроса параметров. */
parametersPanelOpening?: CancelableApiEvent<OperationParametersPanelEventArgs>;
/** Событие возникает после отображения диалогового окна запроса параметров. */
parametersPanelOpened?: BasicApiEvent<OperationParametersPanelEventArgs>;
/** Событие возникает перед выполнением операции */
operationExecuting?: CancelableApiEvent<OperationExecutingEventArgs>;
/** Событие возникает перед перед изменение состояния карточки. */
cardStateChanging?: CancelableApiEvent<GenModels.OperationDataModel>;
/** Событие возникает после изменения состояния карточки. */
cardStateChanged?: CancelableApiEvent<GenModels.OperationDataModel>;
}
/**
* Класс элемента управления Автомат состояния
*
* Добавляет в web-разметку элемент управления для изменения состояния карточки.
*/
export declare class StateButtons extends BaseControl<StateButtonsParams, StateButtonsState> {
/** @internal */
protected createParams(): StateButtonsParams;
/** @internal */
protected createImpl(): StateButtonsImpl;
private get stateButtonsImpl();
private set bindingStateButtons(value);
/**
* Показать меню со всеми кнопками.
*/
showMenu(): void;
/**
* Скрыть меню со всеми кнопками.
*/
hideMenu(): void;
/**
* Выполнить нажатие по кнопке с указанной операцией
* @param operation Идентификатор операции или данные об операции
*/
performClick(operation: string | GenModels.OperationDataModel): void;
/**
* Добавить операцию.
* @param operationData Данные об операции.
*/
add(operationData: GenModels.OperationDataModel): void;
/**
* Удалить операцию.
* @param operation Идентификатор операции или данные об операции.
*/
remove(operation: string | GenModels.OperationDataModel): void;
/** @internal */
protected processEditOperations(operationsData?: GenModels.OperationDataModel[]): GenModels.OperationDataModel[];
}