title | Title for dialog. |
message | Purpose for the dialog. |
ok | Dialog function chosen. |
alt | Choose alternative dialog purpose. |
cancel | Close dialog with no operation. |
int The id of the chosen button.
Displays a modal dialog with three buttons.
Use it for displaying message boxes in the editor.DisplayDialogComplex
is similar to DisplayDialog. This DisplayDialogComplex
member
shows a dialog with three buttons. These buttons represent ok
, alt
and cancel
.
DisplayDialogComplex
returns an integer 0, 1 or 2 corresponding to the ok
, alt
and cancel
buttons.
The first button will be the default, and can also be activated by simply pressing Enter.
The third button will be considered the "cancel" button. On a PC this can also be activated
by pressing Escape or clicking the dialog window close button.
For compliance with normal platform UI guidelines the actual display order of the buttons
is platform-dependent. On Windows, the order is ok
, alt
, alt
; on macOS, the order is alt
,
cancel
, ok
.
See Also: DisplayDialog.
macOS display dialog buttons for the example below.
PC display dialog buttons for the example below.
The script reference example below creates a complex display dialog. The chosen button causes a Unity EditorApplication static function to be called.
#pragma strict public class DisplayDlgComplexExample extends EditorWindow { // Lets you save, save and quit or quit without saving @MenuItem("Example/Enhanced Save") static function Init() { var option: int = EditorUtility.DisplayDialogComplex("What do you want to do?", "Please choose one of the following options.", "Save Scene", "Save and Quit", "Quit without saving"); switch (option) { // Save Scene case 0: EditorApplication.SaveScene(EditorApplication.currentScene);
break; // Save and Quit. case 1: EditorApplication.SaveScene(EditorApplication.currentScene);
EditorApplication.Exit(0);
break; // Quit Without saving. case 2: EditorApplication.Exit(0);
break; default: Debug.LogError("Unrecognized option.");
break; } } }
using UnityEngine; using UnityEditor;
public class DisplayDlgComplexExample : EditorWindow { // Lets you save, save and quit or quit without saving
[MenuItem( "Example/Enhanced Save" )] static void Init( ) { int option = EditorUtility.DisplayDialogComplex( "What do you want to do?", "Please choose one of the following options.", "Save Scene", "Save and Quit", "Quit without saving" );
switch( option ) { // Save Scene case 0: EditorApplication.SaveScene( EditorApplication.currentScene ); break;
// Save and Quit. case 1: EditorApplication.SaveScene( EditorApplication.currentScene ); EditorApplication.Exit( 0 ); break;
// Quit Without saving. case 2: EditorApplication.Exit( 0 ); break;
default: Debug.LogError( "Unrecognized option." ); break; } }
}