svn commit: r19399 - trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model
[email protected] Wed, 11 May 2011 05:53:13 -0700 (PDT)
Newsgroups
gmane.comp.lang.uml.argouml.cvs
Message-ID
<[email protected] >
Author: bobtarling
Date: 2011-05-11 05:53:12-0700
New Revision: 19399
Modified:
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/GetterSetterManagerImpl.java
trunk/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/model/metamodel2.xml
Log:
Panel and control for Regions
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=19399&r1=19398&r2=19399
==============================================================================
--- 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 2011-05-11 05:53:12-0700
@@ -103,6 +103,7 @@
addGetterSetter("raisedSignal", new RaisedExceptionGetterSetter());
addGetterSetter("receiver", new ReceiverGetterSetter());
addGetterSetter("reception", new ReceptionGetterSetter());
+ addGetterSetter("region", new RegionGetterSetter());
addGetterSetter("residentElement", new ResidentElementGetterSetter());
addGetterSetter("sender", new SenderGetterSetter());
addGetterSetter("subvertex", new SubvertexGetterSetter());
@@ -1651,6 +1652,32 @@
}
}
+ private class RegionGetterSetter extends ListGetterSetter {
+
+ public Collection getOptions(
+ final Object modelElement,
+ final Collection<Class<?>> types) {
+ return Model.getStateMachinesHelper().getRegions(modelElement);
+ }
+
+ 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, Collection<Class<?>> types) {
+ return getOptions(element, types).contains(element);
+ }
+
+ public Object getMetaType() {
+ return Model.getMetaTypes().getRegion();
+ }
+ }
+
private class ResidentElementGetterSetter extends ListGetterSetter implements Addable, Removeable {
public Collection getOptions(Object modelElement, Collection<Class<?>> types) {
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=19399&r1=19398&r2=19399
==============================================================================
--- 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-05-11 05:53:12-0700
@@ -23,13 +23,15 @@
<class name="DestroyObjectAction">org.eclipse.uml2.uml.DestroyObjectAction</class>
<class name="Element">org.eclipse.uml2.uml.Element</class>
<class name="Expression">org.eclipse.uml2.uml.Expression</class>
+ <class name="Feature">org.eclipse.uml2.uml.Feature</class>
+ <class name="Interface">org.eclipse.uml2.uml.Interface</class>
<class name="Namespace">org.eclipse.uml2.uml.Namespace</class>
<class name="ObjectFlow">org.eclipse.uml2.uml.ObjectFlow</class>
+ <class name="Region">org.eclipse.uml2.uml.Region</class>
<class name="SendSignalAction">org.eclipse.uml2.uml.SendSignalAction</class>
<class name="TimeExpression">org.eclipse.uml2.uml.TimeExpression</class>
- <class name="Feature">org.eclipse.uml2.uml.Feature</class>
+ <class name="State">org.eclipse.uml2.uml.State</class>
<class name="StructuralFeature">org.eclipse.uml2.uml.StructuralFeature</class>
- <class name="Interface">org.eclipse.uml2.uml.Interface</class>
<class name="Constraint">org.eclipse.uml2.uml.Constraint</class>
<class name="Relationship">org.eclipse.uml2.uml.Relationship</class>
<class name="Association">org.eclipse.uml2.uml.Association</class>
@@ -58,7 +60,6 @@
<class name="ExtensionPoint">org.eclipse.uml2.uml.ExtensionPoint</class>
<class name="StateMachine">org.eclipse.uml2.uml.StateMachine</class>
<class name="Event">org.eclipse.uml2.uml.Event</class>
- <class name="State">org.eclipse.uml2.uml.State</class>
<class name="TimeEvent">org.eclipse.uml2.uml.TimeEvent</class>
<class name="CallEvent">org.eclipse.uml2.uml.CallEvent</class>
<class name="SignalEvent">org.eclipse.uml2.uml.SignalEvent</class>
@@ -75,6 +76,9 @@
<class name="String">java.lang.String</class>
</classes>
<panels>
+ <panel name="Region">
+ <text name="name" type="Name" />
+ </panel>
<panel name="Multiplicity">
<list name="range" type="MultiplicityRange" />
</panel>
@@ -2626,7 +2630,7 @@
<text name="name" type="Name" />
<combo name="namespace" type="Namespace" />
<combo name="context" type="ModelElement" />
- <list name="top" type="State" label="label.top-state" />
+ <list name="region" type="Region" />
<list name="templateParameter" type="TemplateParameter" new="true" label="label.template-parameters" />
<separator />
<list name="transitions" type="Transition" />
@@ -2725,6 +2729,7 @@
<list name="targetFlow" type="Flow" label="label.target-flows" />
<list name="sourceFlow" type="Flow" label="label.source-flows" />
<list name="comment" type="Comment" />
+ <list name="region" type="Region" />
<separator />
<list name="clientDependency" type="Dependency" label="label.client-dependencies" />
<list name="supplierDependency" type="ModelElement" label="label.supplier-dependencies" />
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2734347
To unsubscribe from this discussion, e-mail: [[email protected] ].