protected void maybeCreateNewObject() {
if( getDetailForm().isEditingNewFormObject() ) {
return; // Already creating a new object, just bail
}
final ActionCommand detailNewObjectCommand = detailForm.getNewFormObjectCommand();
if( getDetailForm().isDirty() ) {
String title = getMessage( new String[] { getId() + ".dirtyNew.title", "masterForm.dirtyNew.title" } );
String message = getMessage( new String[] { getId() + ".dirtyNew.message", "masterForm.dirtyNew.message" } );
ConfirmationDialog dlg = new ConfirmationDialog( title, message ) {
protected void onConfirm() {
// Tell both forms that we are creating a new object
detailNewObjectCommand.execute(); // Do subform action first
creatingNewObject();
detailForm.creatingNewObject();
}
};
dlg.showDialog();
} else {
// Tell both forms that we are creating a new object
detailNewObjectCommand.execute(); // Do subform action first
creatingNewObject();
detailForm.creatingNewObject();
}
}