Set<CdmBase> mergedCandidates = new HashSet<>();
if(editor.isDirty()){
- boolean proceed = MessageDialog.openQuestion(null,
- "Save changes", "You have made changes that must be saved before this query can be executed. Would you like to proceed?");
- if (proceed) {
- BulkEditorQuery lastQuery = editor.getLastQuery();
- editor.setLastQuery(null);
- editor.save(new NullProgressMonitor(), true);
- editor.setLastQuery(lastQuery);
- } else {
- return ;
+ String[] labels = {"Save Changes", "Continue Without Saving", "Cancel"};
+
+ MessageDialog dialog = new MessageDialog(null, "Save changes", null, "You have made changes that must be saved before this query can be executed. Would you like to proceed?",
+ MessageDialog.QUESTION_WITH_CANCEL, 0, labels);
+ dialog.open();
+ int proceed = dialog.getReturnCode();
+
+ boolean save = false;
+ if (proceed == 0) {
+ save = true;
+ } else if (proceed == 2){
+ return;
}
+ BulkEditorQuery lastQuery = editor.getLastQuery();
+ editor.setLastQuery(null);
+ editor.save(new NullProgressMonitor(), save);
+ editor.setLastQuery(lastQuery);
}
// Check whether there are any group annotations