svn commit: r17296 - trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java

Michiel van der Wulp <[email protected]>
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: mvw
Date: 2009-08-24 22:59:31-0700
New Revision: 17296

Modified:
   trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java

Log:
Fix bug: drag&drop of a model on a usecase diagram caused a package to be drawn.

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java?view=diff&pathrev=17296&r1=17295&r2=17296
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/use_case/ui/UMLUseCaseDiagram.java	2009-08-24 22:59:31-0700
@@ -1,5 +1,5 @@
 // $Id$
-// Copyright (c) 1996-2008 The Regents of the University of California. All
+// Copyright (c) 1996-2009 The Regents of the University of California. All
 // Rights Reserved. Permission to use, copy, modify, and distribute this
 // software and its documentation without fee, and without a written
 // agreement is hereby granted, provided that the above copyright notice
@@ -467,6 +467,12 @@
         } else if (Model.getFacade().isAComment(objectToAccept)) {
             return true;
         } else if (Model.getFacade().isAPackage(objectToAccept)) {
+            /* We accept a Package, but not a Model or a Subsystem. */
+            if (Model.getFacade().isAModel(objectToAccept)) {
+                return false;
+            } else if (Model.getFacade().isASubsystem(objectToAccept)) {
+                return false;
+            }
             return true;
         }
         return false;
@@ -502,7 +508,13 @@
         } else if (Model.getFacade().isAComment(modelElement)) {
             figNode = new FigComment(modelElement, bounds, settings);
         } else if (Model.getFacade().isAPackage(modelElement)) {
-            figNode = new FigPackage(modelElement, bounds, settings);
+            if (!Model.getFacade().isAModel(modelElement)
+                    && !Model.getFacade().isASubsystem(modelElement)) {
+                /* If we do not exclude a Model here, then dropping the 
+                 * Model on a UseCase diagram causes a package 
+                 * to be drawn. */
+                figNode = new FigPackage(modelElement, bounds, settings);
+            }
         }
         if (figNode != null) {
             LOG.debug("Model element " + modelElement + " converted to "

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

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.