Author: bobtarling
Date: 2011-07-13 16:18:34-0700
New Revision: 19586

Modified:
   
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
   
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/StateMachinesHelperEUMLImpl.java
   
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml

Log:
Issue 6270: Place submachine combo on state panel

Modified: 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java?view=diff&pathrev=19586&r1=19585&r2=19586
==============================================================================
--- 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
    (original)
+++ 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/FacadeEUMLImpl.java
    2011-07-13 16:18:34-0700
@@ -1521,13 +1521,11 @@
     }
 
     public Object getSubmachine(Object handle) {
-        throw new NotYetImplementedException();
-
+        return ((State) handle).getSubmachine();
     }
 
     public Collection getSubmachineStates(Object handle) {
-        throw new NotYetImplementedException();
-
+        throw new NotImplementedException("Not applicable in UML2"); 
//$NON-NLS-1$
     }
 
     public Collection getSubvertices(Object handle) {

Modified: 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/StateMachinesHelperEUMLImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/StateMachinesHelperEUMLImpl.java?view=diff&pathrev=19586&r1=19585&r2=19586
==============================================================================
--- 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/StateMachinesHelperEUMLImpl.java
       (original)
+++ 
trunk/src/argouml-core-model-euml/src/org/argouml/model/euml/StateMachinesHelperEUMLImpl.java
       2011-07-13 16:18:34-0700
@@ -80,9 +80,15 @@
 
     public Collection getAllPossibleStatemachines(Object model,
             Object oSubmachineState) {
-        // TODO: Auto-generated method stub
-        throw new NotYetImplementedException();
-
+        if (oSubmachineState instanceof State) {
+            Collection<StateMachine> statemachines =
+                Model.getModelManagementHelper()
+                    .getAllModelElementsOfKind(model, StateMachine.class);
+            statemachines.remove(getStateMachine(oSubmachineState));
+            return statemachines;
+        } else {
+            throw new IllegalArgumentException("State expected"); //$NON-NLS-1$
+        }
     }
 
     public Collection getAllPossibleSubvertices(Object oState) {

Modified: 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml?view=diff&pathrev=19586&r1=19585&r2=19586
==============================================================================
--- 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml
   (original)
+++ 
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml
   2011-07-13 16:18:34-0700
@@ -2732,6 +2732,8 @@
     <list name="presentation" type="ModelElement" />
     <list name="defaultedParameter" type="ModelElement" />
     <list name="elementResidence" type="ModelElement" />
+    <combo name="submachine" type="StateMachine" />
+    
     <attribute name="parameterTemplate" type="ModelElement" />
     <list name="referenceTag" type="ModelElement" />
     <list name="templateArgument" type="ModelElement" />

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

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

Reply via email to