diff --git a/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/AddOntologyNodeDialog.java b/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/AddOntologyNodeDialog.java index 4ef0eb7c9..8da8e879f 100644 --- a/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/AddOntologyNodeDialog.java +++ b/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/AddOntologyNodeDialog.java @@ -15,16 +15,6 @@ */ package org.artificer.ui.client.local.pages.ontologies; -import javax.annotation.PostConstruct; -import javax.enterprise.context.Dependent; -import javax.inject.Inject; - -import org.jboss.errai.ui.shared.api.annotations.DataField; -import org.jboss.errai.ui.shared.api.annotations.EventHandler; -import org.jboss.errai.ui.shared.api.annotations.Templated; -import org.overlord.commons.gwt.client.local.widgets.ModalDialog; -import org.artificer.ui.client.shared.beans.OntologyClassBean; - import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.KeyUpEvent; import com.google.gwt.event.dom.client.KeyUpHandler; @@ -36,6 +26,16 @@ import com.google.gwt.user.client.ui.TextArea; import com.google.gwt.user.client.ui.TextBox; +import javax.annotation.PostConstruct; +import javax.enterprise.context.Dependent; +import javax.inject.Inject; + +import org.artificer.ui.client.shared.beans.OntologyClassBean; +import org.jboss.errai.ui.shared.api.annotations.DataField; +import org.jboss.errai.ui.shared.api.annotations.EventHandler; +import org.jboss.errai.ui.shared.api.annotations.Templated; +import org.overlord.commons.gwt.client.local.widgets.ModalDialog; + /** * Dialog that allows the user to create a new ontology tier node. * @@ -53,7 +53,7 @@ public class AddOntologyNodeDialog extends ModalDialog implements HasValueChange protected TextArea comment; @Inject @DataField("add-ontology-node-submit-button") protected Button submitButton; - + /** * Constructor. */ @@ -67,6 +67,7 @@ public AddOntologyNodeDialog() { protected void onPostConstruct() { submitButton.setEnabled(false); KeyUpHandler validationHandler1 = new KeyUpHandler() { + @Override public void onKeyUp(KeyUpEvent event) { submitButton.setEnabled(isValid()); } @@ -77,16 +78,20 @@ public void onValueChange(ValueChangeEvent event) { submitButton.setEnabled(isValid()); } }; + id.addKeyUpHandler(validationHandler1); id.addValueChangeHandler(validationHandler2); + label.addValueChangeHandler(validationHandler2); + label.addKeyUpHandler(validationHandler1); } - + /** * Returns true if the values in the form fields are valid. */ protected boolean isValid() { String idVal = id.getValue(); - return idVal != null && idVal.trim().length() > 0; + String labelValue=label.getValue(); + return idVal != null && idVal.trim().length() > 0 && labelValue != null && labelValue.trim().length() > 0; } /** diff --git a/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/EditOntologyNodeDialog.java b/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/EditOntologyNodeDialog.java index 75e9eb7bd..5af03752a 100644 --- a/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/EditOntologyNodeDialog.java +++ b/ui/src/main/java/org/artificer/ui/client/local/pages/ontologies/EditOntologyNodeDialog.java @@ -16,6 +16,8 @@ package org.artificer.ui.client.local.pages.ontologies; import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.event.dom.client.KeyUpEvent; +import com.google.gwt.event.dom.client.KeyUpHandler; import com.google.gwt.event.logical.shared.HasValueChangeHandlers; import com.google.gwt.event.logical.shared.ValueChangeEvent; import com.google.gwt.event.logical.shared.ValueChangeHandler; @@ -23,16 +25,17 @@ import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.TextArea; import com.google.gwt.user.client.ui.TextBox; + +import javax.annotation.PostConstruct; +import javax.enterprise.context.Dependent; +import javax.inject.Inject; + import org.artificer.ui.client.shared.beans.OntologyClassBean; import org.jboss.errai.ui.shared.api.annotations.DataField; import org.jboss.errai.ui.shared.api.annotations.EventHandler; import org.jboss.errai.ui.shared.api.annotations.Templated; import org.overlord.commons.gwt.client.local.widgets.ModalDialog; -import javax.annotation.PostConstruct; -import javax.enterprise.context.Dependent; -import javax.inject.Inject; - /** * Dialog that allows the user to create a new ontology tier node. * @@ -50,7 +53,7 @@ public class EditOntologyNodeDialog extends ModalDialog implements HasValueChang protected TextArea comment; @Inject @DataField("edit-ontology-node-submit-button") protected Button submitButton; - + /** * Constructor. */ @@ -62,8 +65,32 @@ public EditOntologyNodeDialog() { */ @PostConstruct protected void onPostConstruct() { + KeyUpHandler validationHandler1 = new KeyUpHandler() { + @Override + public void onKeyUp(KeyUpEvent event) { + submitButton.setEnabled(isValid()); + } + }; + ValueChangeHandler validationHandler2 = new ValueChangeHandler() { + @Override + public void onValueChange(ValueChangeEvent event) { + submitButton.setEnabled(isValid()); + } + }; + id.addKeyUpHandler(validationHandler1); + id.addValueChangeHandler(validationHandler2); + label.addValueChangeHandler(validationHandler2); + label.addKeyUpHandler(validationHandler1); } + /** + * Returns true if the values in the form fields are valid. + */ + protected boolean isValid() { + String idVal = id.getValue(); + String labelValue=label.getValue(); + return idVal != null && idVal.trim().length() > 0 && labelValue != null && labelValue.trim().length() > 0; + } /** * @see org.overlord.commons.gwt.client.local.widgets.ModalDialog#show() */