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]].
