svn commit: r18170 - trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java
Bob Tarling <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: bobtarling
Date: 2010-03-26 10:03:47-0700
New Revision: 18170
Modified:
trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java
Log:
Don't use Go rules that break UML2 in UML2 mode
Modified: trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java?view=diff&pathrev=18170&r1=18169&r2=18170
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java (original)
+++ trunk/src/argouml-app/src/org/argouml/ui/explorer/PerspectiveManager.java 2010-03-26 10:03:47-0700
@@ -47,6 +47,7 @@
import org.apache.log4j.Logger;
import org.argouml.application.api.Argo;
import org.argouml.configuration.Configuration;
+import org.argouml.model.Model;
import org.argouml.ui.explorer.rules.GoAssocRoleToMessages;
import org.argouml.ui.explorer.rules.GoBehavioralFeatureToStateDiagram;
import org.argouml.ui.explorer.rules.GoBehavioralFeatureToStateMachine;
@@ -387,7 +388,11 @@
packagePerspective.addRule(new GoLinkToStimuli());
packagePerspective.addRule(new GoStimulusToAction());
packagePerspective.addRule(new GoClassifierToCollaboration());
- packagePerspective.addRule(new GoOperationToCollaboration());
+ // TODO: We need a factory pattern for GoXXX classes that can determine if they are required
+ if (Model.getFacade().getUmlVersion().charAt(0) == '1') {
+ packagePerspective.addRule(new GoOperationToCollaboration());
+ packagePerspective.addRule(new GoOperationToSequenceDiagram());
+ }
packagePerspective.addRule(new GoModelElementToComment());
packagePerspective.addRule(new GoCollaborationToDiagram());
packagePerspective.addRule(new GoModelElementToTemplateParameter());
@@ -406,7 +411,6 @@
packagePerspective.addRule(new GoStateToEntry());
packagePerspective.addRule(new GoStateToExit());
packagePerspective.addRule(new GoClassifierToSequenceDiagram());
- packagePerspective.addRule(new GoOperationToSequenceDiagram());
packagePerspective.addRule(new GoClassifierToInstance());
packagePerspective.addRule(new GoStateToIncomingTrans());
packagePerspective.addRule(new GoStateToOutgoingTrans());
@@ -560,8 +564,7 @@
new GoNamespaceToDiagram(), new GoNamespaceToOwnedElements(),
new GoNodeToResidentComponent(),
new GoOperationToCollaborationDiagram(),
- new GoOperationToCollaboration(),
- new GoOperationToSequenceDiagram(), new GoPackageToClass(),
+ new GoPackageToClass(),
new GoPackageToElementImport(),
new GoProjectToCollaboration(), new GoProjectToDiagram(),
new GoProjectToModel(), new GoProjectToStateMachine(),
@@ -588,8 +591,25 @@
new GoUseCaseToExtensionPoint(),
new GoSubmachineStateToStateMachine(),
};
+
+ // TODO: We need a factory pattern for GoXXX classes that can determine if they are required
+ PerspectiveRule[] ruleNamesArray14 = {
+ // Enter here go rules only relevant for UML 1.4
+ new GoOperationToCollaboration(),
+ new GoOperationToSequenceDiagram()
+ };
+
+ PerspectiveRule[] ruleNamesArray2 = {
+ // Enter here go rules only relevant for UML 2
+ // empty for now
+ };
rules = Arrays.asList(ruleNamesArray);
+ if (Model.getFacade().getUmlVersion().charAt(0) == '1') {
+ rules.addAll(Arrays.asList(ruleNamesArray14));
+ } else {
+ rules.addAll(Arrays.asList(ruleNamesArray2));
+ }
}
/**
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2465575
To unsubscribe from this discussion, e-mail: [[email protected]].