@UiHandler("btnOk") void saveChanges(ClickEvent e) { if (separator.isVisible()) { editMode(false); } if (removedRecs.size() > 0) { final InputItem rec = removedRecs.entrySet().iterator().next().getValue(); MethodCallback<Void> cb = new MethodCallback<Void>() { @Override public void onFailure(Method method, Throwable exception) { askRetry(rec, "Error removing record " + rec.getName() + ". Retry ?"); } @Override public void onSuccess(Method method, Void response) { removedRecs.remove(rec.getId()); saveChanges(null); } }; md.info(MDS, "Removing record " + rec.getName()); clientApi.iitemsApi().delete(rec.getId(), cb); } else if (changedRecs.size() > 0) { final InputItem rec = changedRecs.entrySet().iterator().next().getValue(); MethodCallback<Void> cb = new MethodCallback<Void>() { @Override public void onFailure(Method method, Throwable exception) { askRetry(rec, "Error updating user " + rec.getName() + ". Retry ?"); } @Override public void onSuccess(Method method, Void response) { changedRecs.remove(rec.getId()); saveChanges(null); } }; if (rec.getId() == 0) { md.info(MDS, "Creating user " + rec); clientApi.iitemsApi().create(rec, cb); } else { md.info(MDS, "Updating user " + rec); clientApi.iitemsApi().update(rec.getId(), rec, cb); } } else { refreshRecords(e); md.clear(MDS); } }
public static void sendSimpleMessage(String message) { // Pop up a text-based message if (display != null) { if (!awaitingInput) { display.showSimpleMessage(message); } } }
public static void sendInterruptingMessage(String message) { // Pop up a message which awaits action key input before vanishing if (display != null) { if (!awaitingInput) { display.showInterruptingMessage(message); awaitingInput = true; } } }
@UiHandler("btnCancel") void cancelChanges(ClickEvent e) { recordStore.getList().clear(); changedRecs.clear(); removedRecs.clear(); editMode(false); refreshRecords(e); md.clear(MDS); }
public static void askYesNo(String question, MessageSender theReturnObject) { // Ask a yes/no question if (display != null) { if (!awaitingInput) { display.askYesNo(question); awaitingInput = true; returnObject = theReturnObject; } } }
private void markChange(InputItem rec) { if (!changedRecs.containsKey(rec.getId())) { changedRecs.put(rec.getId(), rec); if (!separator.isVisible()) { md.info( MDS, "Some data has been changed. Click 'Save' or 'Cancel' when editing is finished."); editMode(true); } dataGrid.redraw(); } }