@Inject public DocumentDetailPresenterImpl( final DocumentDetailView view, final DocumentManagerLiaison documentManagerLiaison) { this.view = checkNotNull(view); this.documentManagerLiaison = checkNotNull(documentManagerLiaison); view.setPresenter(this); // Hook up the data provider for attributes attributesDataProvider = new ListDataProvider<DocumentAttributeDTO>(); view.getAttributesDataContainer() .setSelectionModel(new NoSelectionModel<DocumentAttributeDTO>()); attributesDataProvider.addDataDisplay(view.getAttributesDataContainer()); }
public void doSave() { checkNotNull(current); // FIXME: Should not allow a record w/o a "name" to be saved. // FIXME: Need to implement some sort of form validation // Copy the view details into the current document current.setId(view.getId()); current.setType(view.getType()); current.setName(view.getName()); current.setDescription(view.getDescription()); current.setContent(view.getContent()); // Save the document documentManagerLiaison.save(current); }
public void doCancel() { if (current == null) { return; } if (current.isNew()) { // clear temporal document and hide the view documentManagerLiaison.remove(current); view.clear(); view.asWidget().setVisible(false); attributesDataProvider.getList().clear(); current = null; } else { // reset the view to the current data setDocument(current); } }
public void setDocument(final Document document) { current = document; if (document != null) { // Fill up the form with the document details view.setId(document.getId()); view.setType(document.getType()); view.setName(document.getName()); view.setDescription(document.getDescription()); view.setContent(document.getContent()); view.setNewDocument(document.isNew()); attributesDataProvider.setList(document.getAttributes()); // Make the view visible view.asWidget().setVisible(true); } else { // Clear the form and hide the view view.asWidget().setVisible(false); } }