- fixed "dirty marking" of editor
authorPatric Plitzner <p.plitzner@bgbm.org>
Wed, 28 Aug 2013 17:54:21 +0000 (17:54 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Wed, 28 Aug 2013 17:54:21 +0000 (17:54 +0000)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/campanula/basicFields/LanguageTextFieldController.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/campanula/basicFields/TextFieldController.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewer.java

index b94b370ffc04a38cf464dc25b2058514b661d893..fc656f7cc3483952aca246e735fab413eb330d72 100644 (file)
@@ -82,7 +82,7 @@ public class LanguageTextFieldController extends TextFieldController{
     /** {@inheritDoc} */
     @Override
     public void setText(String text) {
-        if(text != null){
+        if(text != null && languageString!=null){
             languageString.setText(text);
             super.setText(text);
         }
index e84907a4a4cee8ceaa95bce139cac285f42f72b8..a306b0e4d62f3ea402bf2c621010f31bafc84dc2 100644 (file)
@@ -74,7 +74,7 @@ public class TextFieldController extends AbstractCdmFormElement implements Modif
         this.text = controlledText;
 //        TableWrapData twd_text_1 = new TableWrapData(TableWrapData.LEFT, TableWrapData.TOP);
 //        twd_text_1.grabHorizontal = true;
-        text.setText(initialText);
+        setText(initialText);
 //        text.setLayoutData(twd_text_1);
 
 
index 7ae4a971478add9941a7c47de09fe156a55ce08c..859e204ca97175c3fc4eb773fd66ef10568ba80c 100644 (file)
@@ -152,7 +152,15 @@ public class DetailsViewer extends AbstractCdmDataViewer {
     @Override
     protected void markViewPartDirty() {
         if (getInput() instanceof DerivedUnitFacade) {
-            getViewPart().changed(((DerivedUnitFacade) getInput()).innerDerivedUnit());
+            DerivedUnitFacade derivedUnitFacade = (DerivedUnitFacade) getInput();
+            DerivedUnit innerDerivedUnit = derivedUnitFacade.innerDerivedUnit();
+            FieldUnit innerFieldUnit = derivedUnitFacade.innerFieldUnit();
+            if(innerDerivedUnit!=null){
+                getViewPart().changed(innerDerivedUnit);
+            }
+            else if(innerFieldUnit!=null){
+                getViewPart().changed(innerFieldUnit);
+            }
         }
 
         super.markViewPartDirty();