I'm wondering how to use the new QUESTION_WITH_CANCEL dialog kind when opened with MessageDialog.open(int kind, Shell parent, String title, String message,int style)
.
Since the open method is returning boolean and now we have 3 possible state from Yes, No, or Cancel.
You can't use the static method MessageDialog.open(bunch of parameters)
, you'll have to create the Dialog and call the non-static open()
yourself to check its return value.
MessageDialog dg = new MessageDialog(
window.getShell(),
"My title",
null,
"My question",
MessageDialog.QUESTION_WITH_CANCEL,
new String[]{
IDialogConstants.YES_LABEL,
IDialogConstants.NO_LABEL,
IDialogConstants.CANCEL_LABEL},
0
);
switch(dg.open()) {
case 0:
//yes
System.out.println("yes");
break;
case 1:
//no
System.out.println("no");
break;
case 2:
//cancel
System.out.println("cancel");
break;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With