Author: bobtarling
Date: 2010-07-21 08:34:47-0700
New Revision: 18545

Removed:
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityList.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityListModel.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitList.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitListModel.java
Modified:
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java

Log:
Make use of new model element factory method

Modified: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java?view=diff&pathrev=18545&r1=18544&r2=18545
==============================================================================
--- 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java
     (original)
+++ 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java
     2010-07-21 08:34:47-0700
@@ -98,7 +98,9 @@
         addGetterSetter("templateParameter", new 
TemplateParameterGetterSetter());
         addGetterSetter("reception", new ReceptionGetterSetter());
         addGetterSetter("deferrableEvent", new DeferrableEventGetterSetter());
+        addGetterSetter("exit", new ExitActionGetterSetter());
         addGetterSetter("entry", new EntryActionGetterSetter());
+        addGetterSetter("doActivity", new DoActivityActionGetterSetter());
         addGetterSetter("action", new ActionGetterSetter());
         addGetterSetter("subvertex", new SubvertexGetterSetter());
         addGetterSetter("internalTransition", new 
InternalTransitionGetterSetter());
@@ -1077,6 +1079,58 @@
         }
     }
     
+    private class ExitActionGetterSetter extends ListGetterSetter {
+        
+        public Collection getOptions(Object modelElement, Class<?> type) {
+            final ArrayList list = new ArrayList(1);
+            list.add(Model.getFacade().getExit(modelElement));
+            return list;
+        }
+      
+        public Object get(Object modelElement, Class<?> type) {
+            // not needed
+            return null;
+        }
+      
+        public void set(Object element, Object x) {
+            // not needed
+        }
+
+        public boolean isValidElement(Object element, Class<?> type) {
+            return getOptions(element, type).contains(element);
+        }
+        
+        public Object getMetaType() {
+            return Model.getMetaTypes().getAction();
+        }
+    }
+    
+    private class DoActivityActionGetterSetter extends ListGetterSetter {
+        
+        public Collection getOptions(Object modelElement, Class<?> type) {
+            final ArrayList list = new ArrayList(1);
+            list.add(Model.getFacade().getDoActivity(modelElement));
+            return list;
+        }
+      
+        public Object get(Object modelElement, Class<?> type) {
+            // not needed
+            return null;
+        }
+      
+        public void set(Object element, Object x) {
+            // not needed
+        }
+
+        public boolean isValidElement(Object element, Class<?> type) {
+            return getOptions(element, type).contains(element);
+        }
+        
+        public Object getMetaType() {
+            return Model.getMetaTypes().getAction();
+        }
+    }
+    
     private class ActionGetterSetter extends ListGetterSetter {
         
         public Collection getOptions(Object modelElement, Class<?> type) {

Modified: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java?view=diff&pathrev=18545&r1=18544&r2=18545
==============================================================================
--- 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
    (original)
+++ 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/RowSelector.java
    2010-07-21 08:34:47-0700
@@ -256,16 +256,19 @@
         List<Action> newActions = null;
         List<Command> additionalNewCommands = null;
         
+        final String propertyName;
         if (model instanceof UMLModelElementListModel) {
             // Temporary until SimpleListModel is used for all
             target = ((UMLModelElementListModel) model).getTarget();
             metaType = ((UMLModelElementListModel) model).getMetaType();
+            propertyName = null;
             scroll = new OldScrollList(model, 1);
             readonly = Model.getModelManagementHelper().isReadOnly(target);
             metaTypes = null;
             newActions = ((UMLModelElementListModel) model).getNewActions();
         } else if (model instanceof SimpleListModel) {
             target = ((SimpleListModel) model).getUmlElement();
+            propertyName = ((SimpleListModel) model).getPropertyName();
             metaType = ((SimpleListModel) model).getMetaType();
             metaTypes = ((SimpleListModel) model).getMetaTypes();
             additionalNewCommands = ((SimpleListModel) 
model).getAdditionalCommands();
@@ -273,6 +276,7 @@
             readonly = Model.getModelManagementHelper().isReadOnly(target);
         } else {
             // Temporary until SimpleListModel is used for all
+            propertyName = null;
             target = null;
             readonly = true;
         }
@@ -343,6 +347,7 @@
                             new ActionCreateContainedModelElement(
                                 meta,
                                 target,
+                                propertyName,
                                 label);
                         actions.add(createAction);
                     }

Modified: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java?view=diff&pathrev=18545&r1=18544&r2=18545
==============================================================================
--- 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java
      (original)
+++ 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SingleListFactory.java
      2010-07-21 08:34:47-0700
@@ -115,10 +115,6 @@
             model = new UMLTemplateParameterTemplateListModel(modelElement, 
propName);
         } else if ("parameter".equals(propName)) {
             model = new UMLTemplateParameterParameterListModel(modelElement, 
propName);
-        } else if ("exit".equals(propName)) {
-            model = new UMLStateExitListModel(modelElement);
-        } else if ("doActivity".equals(propName)) {
-            model = new UMLStateDoActivityListModel(modelElement);
         }
         
         if (model == null) {

Removed: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityList.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityList.java?view=markup&pathrev=18544

Removed: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityListModel.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateDoActivityListModel.java?view=markup&pathrev=18544

Removed: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitList.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitList.java?view=markup&pathrev=18544

Removed: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitListModel.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLStateExitListModel.java?view=markup&pathrev=18544

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

To unsubscribe from this discussion, e-mail: 
[[email protected]].

Reply via email to