svn commit: r19154 - trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: thn
Date: 2011-03-30 22:28:41-0700
New Revision: 19154

Modified:
   trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionLanguageField.java
   trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionModel.java
   trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionPanel.java

Log:
simple fix for issue 6215: initial values is created as OpaqueExpression, but when imported from other models, it can be of another type but is readonly then

Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionLanguageField.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionLanguageField.java?view=diff&pathrev=19154&r1=19153&r2=19154
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionLanguageField.java	(original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionLanguageField.java	2011-03-30 22:28:41-0700
@@ -8,6 +8,7 @@
  *
  * Contributors:
  *    mvw
+ *    Thomas Neustupny
  *****************************************************************************
  *
  * Some portions of this file was previously release using the BSD License:
@@ -79,6 +80,9 @@
                 setText(newText);
             }
         }
+        if (newText == null) {
+            setEditable(false);
+        }
     }
 
     /*

Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionModel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionModel.java?view=diff&pathrev=19154&r1=19153&r2=19154
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionModel.java	(original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionModel.java	2011-03-30 22:28:41-0700
@@ -8,6 +8,7 @@
  *
  * Contributors:
  *    mvw
+ *    Thomas Neustupny
  *****************************************************************************
  *
  * Some portions of this file was previously release using the BSD License:
@@ -155,7 +156,14 @@
         if (expression == null) {
             return EMPTYSTRING;
         }
-        return Model.getDataTypesHelper().getLanguage(expression);
+        String language = null;
+        try {
+            language = Model.getDataTypesHelper().getLanguage(expression);
+        } catch (Exception ex) {
+            // if it has no language, then we assume it is not an instance of
+            // OpaqueExpression, so we leave it null and handle elsewhere
+        }
+        return language;
     }
 
     /**
@@ -166,7 +174,7 @@
         if (expression == null) {
             return EMPTYSTRING;
         }
-        return Model.getDataTypesHelper().getBody(expression);
+        return Model.getFacade().getBody(expression).toString();
     }
 
     /**
@@ -202,7 +210,7 @@
 	Object expression = getExpression();
         boolean mustChange = true;
         if (expression != null) {
-            Object oldValue = Model.getDataTypesHelper().getBody(expression);
+            Object oldValue = Model.getFacade().getBody(expression).toString();
             if (oldValue != null && oldValue.equals(body)) {
                 mustChange = false;
             }

Modified: trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionPanel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionPanel.java?view=diff&pathrev=19154&r1=19153&r2=19154
==============================================================================
--- trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionPanel.java	(original)
+++ trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLExpressionPanel.java	2011-03-30 22:28:41-0700
@@ -8,6 +8,7 @@
  *
  * Contributors:
  *    mvw
+ *    Thomas Neustupny
  *****************************************************************************
  *
  * Some portions of this file was previously release using the BSD License:
@@ -78,7 +79,12 @@
         this.bodyField = new UMLExpressionBodyField(
                 model, true);
 
-        add(languageField);
+        boolean isReadOnly = !languageField.isEditable();
+        if (isReadOnly) {
+            bodyField.setEditable(false);
+        } else {
+            add(languageField);
+        }
         add(new JScrollPane(bodyField));
 
         model.addChangeListener(this);

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2715515

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.