UNPKG

diagram-js

Version:

A toolbox for displaying and modifying diagrams on the web

106 lines (93 loc) 2.56 kB
/** * A popup menu to show a number of actions on the canvas. * */ export default class PopupMenu { static $inject: string[]; /** * @param config * @param eventBus * @param canvas * @param search */ constructor(config: PopupMenuConfig, eventBus: EventBus, canvas: Canvas, search: search); /** * Open the popup menu at the given position. * * @param target * @param providerId * @param position * @param options */ open(target: PopupMenuTarget, providerId: string, position: Point, options?: any): void; /** * Refresh the popup menu entries without changing the target or position. */ refresh(): void; close(): void; reset(): void; /** * Check whether there are no popup menu providers or provided entries for the * given target. * * @param target * @param providerId * * @return */ isEmpty(target: PopupMenuTarget, providerId: string): boolean; /** * Register a popup menu provider with the given priority. See * {@link PopupMenuProvider} for examples. * * @param id * @param priority * @param provider */ registerProvider(id: string, priority: number, provider: PopupMenuProvider): void; /** * * Register a popup menu provider with default priority. See * {@link PopupMenuProvider} for examples. * * @param id * @param provider */ registerProvider(id: string, provider: PopupMenuProvider): void; /** * Check if the popup menu is open. * * @return */ isOpen(): boolean; /** * Trigger an action associated with an entry. * * @param event * @param entry * @param action * * @return */ trigger(event: Event, entry: PopupMenuEntry, action?: string): any; } type Canvas = import("../../core/Canvas").default; type EventBus = import("../../core/EventBus").default; export type search = typeof import("../search/search").default; type Point = import("../../util/Types").Point; type PopupMenuEntries = import("./PopupMenuProvider").PopupMenuEntries; type PopupMenuEntry = import("./PopupMenuProvider").PopupMenuEntry; type PopupMenuHeaderEntries = import("./PopupMenuProvider").PopupMenuHeaderEntries; type PopupMenuHeaderEntry = import("./PopupMenuProvider").PopupMenuHeaderEntry; type PopupMenuProvider = import("./PopupMenuProvider").default; type Element = import("../../model/Types").Element; export type PopupMenuConfig = { scale?: { min?: number; max?: number; } | boolean; }; /** * ; */ export type PopupMenuTarget = Element | Element[];