Author: linus Date: 2010-04-17 02:42:37-0700 New Revision: 18271 Removed: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalList.java branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalListModel.java Modified: branches/BRANCH_0_30_x/ (props changed) branches/BRANCH_0_30_x/src/argouml-app/ (props changed) branches/BRANCH_0_30_x/src/argouml-app/tests/org/argouml/profile/ (props changed) branches/BRANCH_0_30_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/ListFactory.java branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SimpleListModel.java branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLReceptionSignalComboBoxModel.java
Log: Merging rev 18213 from trunk for Issue 6047. Modified: branches/BRANCH_0_30_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java?view=diff&pathrev=18271&r1=18270&r2=18271 ============================================================================== --- branches/BRANCH_0_30_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java (original) +++ branches/BRANCH_0_30_x/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java 2010-04-17 02:42:37-0700 @@ -535,6 +535,12 @@ }); // specifies valid elements for an AssociationRole to contain + validContainmentMap.put(SignalEvent.class, + new Class<?>[] { + Signal.class + }); + + // specifies valid elements for an AssociationRole to contain validContainmentMap.put(Reception.class, new Class<?>[] { Parameter.class, @@ -856,6 +862,8 @@ } else if (container instanceof State) { setNewDeferrableEvent((State) container, (Event) element); } + } else if (elementType == metaTypes.getSignal()) { + element = Model.getStateMachinesFactory().buildSignalEvent(container); } else { // build all other elements using existing buildNode element = buildNode(elementType); Modified: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/ListFactory.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/ListFactory.java?view=diff&pathrev=18271&r1=18270&r2=18271 ============================================================================== --- branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/ListFactory.java (original) +++ branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/ListFactory.java 2010-04-17 02:42:37-0700 @@ -124,9 +124,6 @@ model = new UMLContainerResidentListModel(modelElement); } else if ("residentElement".equals(propName)) { model = new UMLComponentResidentListModel(modelElement); - } else if ("signal".equals(propName)) { - model = new UMLSignalEventSignalListModel(modelElement); - list = new OldScrollList(new UMLSignalEventSignalList((UMLModelElementListModel) model)); } else if ("specialization".equals(propName)) { model = new UMLGeneralizableElementSpecializationListModel(modelElement); } else if ("specification".equals(propName)) { Modified: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SimpleListModel.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SimpleListModel.java?view=diff&pathrev=18271&r1=18270&r2=18271 ============================================================================== --- branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SimpleListModel.java (original) +++ branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/SimpleListModel.java 2010-04-17 02:42:37-0700 @@ -106,10 +106,6 @@ } public List getMetaTypes() { - if (propertyName.equals("deferrableEvent")) { - int x = 0; - x=5; - } return metaTypes; } Modified: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLReceptionSignalComboBoxModel.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLReceptionSignalComboBoxModel.java?view=diff&pathrev=18271&r1=18270&r2=18271 ============================================================================== --- branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLReceptionSignalComboBoxModel.java (original) +++ branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLReceptionSignalComboBoxModel.java 2010-04-17 02:42:37-0700 @@ -39,7 +39,9 @@ package org.argouml.core.propertypanels.ui; import java.awt.event.ActionEvent; +import java.util.ArrayList; import java.util.Collection; +import java.util.List; import javax.swing.Action; @@ -48,6 +50,7 @@ import org.argouml.model.Model; import org.argouml.model.RemoveAssociationEvent; import org.argouml.model.UmlChangeEvent; +import org.argouml.ui.ActionCreateContainedModelElement; import org.argouml.ui.UndoableAction; @@ -64,7 +67,7 @@ final Object target) { super(propertyName, false); Model.getPump().addClassModelEventListener(this, - Model.getMetaTypes().getNamespace(), "ownedElement"); + Model.getMetaTypes().getNamespace(), propertyName); setTarget(target); } @@ -73,8 +76,7 @@ */ protected void buildModelList() { Object target = getTarget(); - if (Model.getFacade().isAReception(target)) { - Object rec = /*(MReception)*/ target; + if (Model.getFacade().isAReception(target) || Model.getFacade().isASignalEvent(target)) { removeAllElements(); Project p = ProjectManager.getManager().getCurrentProject(); Object model = p.getRoot(); @@ -82,7 +84,10 @@ .getAllModelElementsOfKindWithModel( model, Model.getMetaTypes().getSignal())); - setSelectedItem(Model.getFacade().getSignal(rec)); + setSelectedItem(Model.getFacade().getSignal(target)); + } else { + throw new IllegalStateException( + "Expected a Reception or SignalEvent - got a " + target); } } @@ -114,14 +119,12 @@ */ public void modelChanged(UmlChangeEvent evt) { if (evt instanceof RemoveAssociationEvent) { - if ("ownedElement".equals(evt.getPropertyName())) { - Object o = getChangedElement(evt); - if (contains(o)) { - if (o instanceof Collection) { - removeAll((Collection) o); - } else { - removeElement(o); - } + Object o = getChangedElement(evt); + if (contains(o)) { + if (o instanceof Collection) { + removeAll((Collection) o); + } else { + removeElement(o); } } } else { @@ -129,6 +132,13 @@ } } + public List<Action> getActions() { + final ArrayList<Action> actions = new ArrayList<Action>(); + actions.add(new ActionCreateContainedModelElement( + Model.getMetaTypes().getSignal(), getTarget())); + return actions; + } + public Action getAction() { return new SetAction(); @@ -158,10 +168,9 @@ Object o = getTarget(); o = box.getSelectedItem(); Object signal = o; - Object reception = getTarget(); - if (signal != Model.getFacade().getSignal(reception)) { + if (signal != Model.getFacade().getSignal(getTarget())) { super.actionPerformed(e); - Model.getCommonBehaviorHelper().setSignal(reception, signal); + Model.getCommonBehaviorHelper().setSignal(getTarget(), signal); } } } Removed: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalList.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalList.java?view=markup&pathrev=18270 Removed: branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalListModel.java Url: http://argouml.tigris.org/source/browse/argouml/branches/BRANCH_0_30_x/src/argouml-core-umlpropertypanels/src/org/argouml/core/propertypanels/ui/UMLSignalEventSignalListModel.java?view=markup&pathrev=18270 ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2586502 To unsubscribe from this discussion, e-mail: [[email protected]].
