Skip to main content

Dialog

Dialog is a UI widget for displaying both modal and non-modal dialog boxes.

Learn more about the Dialog plugin.

constructor​

constructor(options: Dialog.Options);

The ui.Dialog constructor accepts several parameters:

width​

[optional] The width of the dialog in pixels.

title​

[optional] The title of the dialog.

content​

[optional] The content of the dialog. It can be a string, HTML, or even a DOM element.

type​

[optional] The type of the dialog. This effectively sets a CSS class on the dialog HTML container. The predefined dialog types are: 'info', 'alert', 'warning', 'success', and 'neutral'.

buttons​

[optional] Buttons of the dialog. buttons is an array of objects of the form { action: String, content: String [, position: String] }.

action​

[optional] The name of the action the button represents. When the button is clicked, the dialog object triggers an event action:[name], allowing you to react.

content​

[optional] The label of the button (it can be HTML, as well).

position​

[optional] It can be 'left', 'right', or 'center'. If position is not specified, it is considered to be 'right'. If multiple buttons are provided with the same position, they are placed left-to-right according to the order in which they were provided.

draggable​

[optional] If draggable is true, the dialog window will be draggable by the user. It defaults to false.

closeButton​

[optional] If closeButton is false, the dialog window will not display the default "cross" button in the top right corner allowing the user to close the dialog. It defaults to true.

closeButtonContent​

[optional] The HTML content of the little close button in the top right corner of the dialog window. It defaults to a "cross" (x).

[optional] If false, the dialog window will not be made modal. In other words, the user will still be able to interact with other elements on the page. It defaults to true.

inlined​

[optional] If true, the dialog window will be inlined in a container that you can pass to the open() method.

Methods​

open()​

dialog.open(el?: mvc.$HTMLElement): this;

Open the dialog window.

close()​

dialog.close(): this;

Close the dialog window.

on()​

dialog.on(eventName: string, callback: EventHandler, context?: any): this;

Register a handler function that will be called whenever eventName is triggered. The optional context is an object that will be the context of the handler function (the this).

Events​

The Dialog object triggers events when the user clicks one of its buttons. Events can be handled by using the on() method.

action:[name]​

Triggered when the user clicks a button in the dialog with action named [name].

close​

Triggered when the dialog gets closed.

Types​

Options​

interface Options extends mvc.ViewOptions<undefined> {
draggable?: boolean;
closeButtonContent?: mvc.$HTMLElement;
closeButton?: boolean;
inlined?: boolean;
modal?: boolean;
width?: number | string;
title?: string;
buttons?: Array<{
content?: mvc.$HTMLElement;
position?: string;
action?: string;
}>;
type?: string;
content?: mvc.$HTMLElement;
}