Class used to create a set of options to pass to the AlertWindow and NativeMessageBox methods for showing dialog boxes.
You can chain together a series of calls to this class's methods to create a set of whatever options you want to specify.
E.g.
Public Member Functions | |
| MessageBoxOptions ()=default | |
| MessageBoxOptions (const MessageBoxOptions &)=default | |
| MessageBoxOptions & | operator= (const MessageBoxOptions &)=default |
| MessageBoxOptions | withIconType (MessageBoxIconType type) const |
| Sets the type of icon that should be used for the dialog box. | |
| MessageBoxOptions | withTitle (const String &boxTitle) const |
| Sets the title of the dialog box. | |
| MessageBoxOptions | withMessage (const String &boxMessage) const |
| Sets the message that should be displayed in the dialog box. | |
| MessageBoxOptions | withButton (const String &text, int resultCode) const |
| This will add a button to the dialog box with the specified text and result code. | |
| MessageBoxOptions | withButton (MessageBoxButtonOptions opt) const |
| This will add a button to the dialog box with the specified properties. | |
| MessageBoxOptions | withAssociatedComponent (Component *component) const |
| The component that the dialog box should be associated with. | |
| MessageBoxOptions | withParentComponent (Component *component) const |
| The component that will contain the message box (e.g. | |
| MessageBoxIconType | getIconType () const noexcept |
| Returns the icon type of the dialog box. | |
| String | getTitle () const |
| Returns the title of the dialog box. | |
| String | getMessage () const |
| Returns the message of the dialog box. | |
| int | getNumButtons () const noexcept |
| Returns the number of buttons that have been added to the dialog box. | |
| String | getButtonText (int buttonIndex) const |
| Returns the text that has been set for one of the buttons of the dialog box. | |
| int | getButtonResultCode (int buttonIndex) const |
| Returns the result code associated with the button at the given index. | |
| Span< const MessageBoxButtonOptions > | getButtons () const & |
| Returns the properties of all buttons in the message box. | |
| Span< const MessageBoxButtonOptions > | getButtons () const &&=delete |
| Deleted to avoid dangling references. | |
| bool | areAllResultCodesUnique () const |
| Returns true if all buttons have a unique result code, or false otherwise. | |
| Component * | getAssociatedComponent () const noexcept |
| Returns the component that the dialog box is associated with. | |
| Component * | getParentComponent () const noexcept |
| Returns the component that will be used as the parent of the dialog box. | |
Static Public Member Functions | |
| static MessageBoxOptions | makeOptionsOk (MessageBoxIconType iconType, const String &title, const String &message, const String &buttonText=String(), Component *associatedComponent=nullptr) |
| Creates options suitable for a message box with a single button. | |
| static MessageBoxOptions | makeOptionsOkCancel (MessageBoxIconType iconType, const String &title, const String &message, const String &button1Text=String(), const String &button2Text=String(), Component *associatedComponent=nullptr) |
| Creates options suitable for a message box with two buttons. | |
| static MessageBoxOptions | makeOptionsYesNo (MessageBoxIconType iconType, const String &title, const String &message, const String &button1Text=String(), const String &button2Text=String(), Component *associatedComponent=nullptr) |
| Creates options suitable for a message box with two buttons. | |
| static MessageBoxOptions | makeOptionsYesNoCancel (MessageBoxIconType iconType, const String &title, const String &message, const String &button1Text=String(), const String &button2Text=String(), const String &button3Text=String(), Component *associatedComponent=nullptr) |
| Creates options suitable for a message box with three buttons. | |
|
default |
|
default |
References MessageBoxOptions().
|
default |
References MessageBoxOptions().
|
inlinenodiscard |
Sets the type of icon that should be used for the dialog box.
References MessageBoxOptions(), and juce::withMember().
|
inlinenodiscard |
Sets the title of the dialog box.
References MessageBoxOptions(), and juce::withMember().
|
inlinenodiscard |
Sets the message that should be displayed in the dialog box.
References MessageBoxOptions(), and juce::withMember().
|
inlinenodiscard |
This will add a button to the dialog box with the specified text and result code.
Generally up to 3 buttons are supported for dialog boxes, so adding any more than this may have no effect.
Message-boxes with zero or one buttons, or that hold a button with the 'cancel' role, may be cancelled. For example, on Windows, a native message box can be dismissed by pressing alt+f4 or escape, and on Android, a native message box can be dismissed by tapping outside the box or pressing the back button.
On macOS, a preferred "OK" button will be added automatically to native dialogs with no buttons. Such dialogs can be dismissed with the return key, but not with the escape key.
Cancelling a zero-button message box will return "0". Cancelling a single-button message box will return the result code of that button. Cancelling a message box with a different number of buttons will return the code of whichever button has the 'cancel' role.
References MessageBoxOptions().
|
nodiscard |
This will add a button to the dialog box with the specified properties.
Generally up to 3 buttons are supported for dialog boxes, so adding any more than this may have no effect.
Message-boxes with zero or one buttons, or that hold a button with the 'cancel' role, may be cancelled. For example, on Windows, a native message box can be dismissed by pressing alt+f4 or escape, and on Android, a native message box can be dismissed by tapping outside the box or pressing the back button.
On macOS, a preferred "OK" button will be added automatically to native dialogs with no buttons. Such dialogs can be dismissed with the return key, but not with the escape key.
Cancelling a zero-button message box will return "0". Cancelling a single-button message box will return the result code of that button. Cancelling a message box with a different number of buttons will return the code of whichever button has the 'cancel' role.
References MessageBoxOptions().
|
inlinenodiscard |
The component that the dialog box should be associated with.
An AlertWindow is kept above the window containing this component. See TopLevelWindow::setAssociatedComponent().
References MessageBoxOptions(), and juce::withMember().
|
inlinenodiscard |
The component that will contain the message box (e.g.
the AudioProcessorEditor in a plugin).
This will only affect JUCE AlertWindows. It won't affect the drawing of native message boxes. This is mainly intended for use in AU plugins, where opening additional windows can be problematic.
References MessageBoxOptions(), and juce::withMember().
|
inlinenoexcept |
Returns the icon type of the dialog box.
|
inline |
Returns the title of the dialog box.
|
inline |
Returns the message of the dialog box.
|
inlinenoexcept |
Returns the number of buttons that have been added to the dialog box.
Referenced by areAllResultCodesUnique().
|
inline |
Returns the text that has been set for one of the buttons of the dialog box.
References juce::isPositiveAndBelow(), and jassertfalse.
|
inline |
Returns the result code associated with the button at the given index.
References juce::isPositiveAndBelow(), and jassertfalse.
|
inline |
Returns the properties of all buttons in the message box.
|
delete |
Deleted to avoid dangling references.
|
inline |
Returns true if all buttons have a unique result code, or false otherwise.
References areAllResultCodesUnique(), and getNumButtons().
Referenced by areAllResultCodesUnique().
|
inlinenoexcept |
Returns the component that the dialog box is associated with.
|
inlinenoexcept |
Returns the component that will be used as the parent of the dialog box.
|
static |
Creates options suitable for a message box with a single button.
If no button text is supplied, "OK" will be used.
References MessageBoxOptions().
Referenced by juce::StandalonePluginHolder::askUserToLoadState(), and juce::StandalonePluginHolder::askUserToSaveState().
|
static |
Creates options suitable for a message box with two buttons.
If no button text is supplied, "OK" and "Cancel" will be used.
References MessageBoxOptions().
|
static |
Creates options suitable for a message box with two buttons.
If no button text is supplied, "Yes" and "No" will be used.
References MessageBoxOptions().
|
static |
Creates options suitable for a message box with three buttons.
If no button text is supplied, "Yes", "No", and "Cancel" will be used.
References juce::InfoIcon, and MessageBoxOptions().