Author: tfmorris
Date: 2008-04-30 13:33:50-0700
New Revision: 14536

Added:
   trunk/src/argouml-app/src/org/argouml/util/IItemUID.java
      - copied, changed from r14532, 
/trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java
   trunk/src/argouml-app/src/org/argouml/util/ItemUID.java
      - copied, changed from r14532, 
/trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java
Removed:
   trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java
Modified:
   trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java
   trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java
   trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java
   trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java
   trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java

Log:
Move ItemUID & IItemUID to utils

Change ItemUID to use IItemUID if object implements it

Removed: trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java?view=auto&rev=14535

Modified: trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java&p2=trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java 
(original)
+++ trunk/src/argouml-app/src/org/argouml/cognitive/ResolvedCritic.java 
2008-04-30 13:33:50-0700
@@ -28,6 +28,7 @@
 import java.util.List;
 
 import org.apache.log4j.Logger;
+import org.argouml.util.ItemUID;
 
 // TODO: Maybe the exception strings should be internationalized
 

Modified: trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java&p2=trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java       
(original)
+++ trunk/src/argouml-app/src/org/argouml/persistence/PrivateHandler.java       
2008-04-30 13:33:50-0700
@@ -26,8 +26,8 @@
 import java.util.StringTokenizer;
 
 import org.apache.log4j.Logger;
-import org.argouml.cognitive.ItemUID;
-import org.argouml.uml.diagram.IItemUID;
+import org.argouml.util.IItemUID;
+import org.argouml.util.ItemUID;
 import org.tigris.gef.persistence.pgml.Container;
 import org.tigris.gef.persistence.pgml.FigEdgeHandler;
 import org.tigris.gef.persistence.pgml.FigGroupHandler;

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java  
(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagram.java  
2008-04-30 13:33:50-0700
@@ -32,8 +32,8 @@
 import java.util.Iterator;
 import java.util.List;
 
-import org.argouml.cognitive.ItemUID;
 import org.argouml.kernel.Project;
+import org.argouml.util.ItemUID;
 import org.tigris.gef.base.LayerPerspective;
 import org.tigris.gef.graph.GraphModel;
 import org.tigris.gef.presentation.Fig;

Modified: trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java      
(original)
+++ trunk/src/argouml-app/src/org/argouml/uml/diagram/ArgoDiagramImpl.java      
2008-04-30 13:33:50-0700
@@ -32,7 +32,6 @@
 import java.util.List;
 
 import org.apache.log4j.Logger;
-import org.argouml.cognitive.ItemUID;
 import org.argouml.kernel.Project;
 import org.argouml.model.CoreHelper;
 import org.argouml.model.DeleteInstanceEvent;
@@ -43,6 +42,8 @@
 import org.argouml.uml.diagram.ui.FigEdgeModelElement;
 import org.argouml.uml.diagram.ui.FigNodeModelElement;
 import org.argouml.util.EnumerationIterator;
+import org.argouml.util.IItemUID;
+import org.argouml.util.ItemUID;
 import org.tigris.gef.base.Diagram;
 import org.tigris.gef.base.Editor;
 import org.tigris.gef.graph.MutableGraphSupport;

Removed: trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java?view=auto&rev=14535

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java&r1=14535&r2=14536
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java   
    (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigEdgeModelElement.java   
    2008-04-30 13:33:50-0700
@@ -58,7 +58,6 @@
 import org.argouml.application.events.ArgoNotationEventListener;
 import org.argouml.cognitive.Designer;
 import org.argouml.cognitive.Highlightable;
-import org.argouml.cognitive.ItemUID;
 import org.argouml.cognitive.ToDoItem;
 import org.argouml.cognitive.ToDoList;
 import org.argouml.cognitive.ui.ActionGoToCritique;
@@ -81,8 +80,9 @@
 import org.argouml.ui.ProjectActions;
 import org.argouml.ui.targetmanager.TargetManager;
 import org.argouml.uml.StereotypeUtility;
-import org.argouml.uml.diagram.IItemUID;
 import org.argouml.uml.ui.ActionDeleteModelElements;
+import org.argouml.util.IItemUID;
+import org.argouml.util.ItemUID;
 import org.tigris.gef.base.Globals;
 import org.tigris.gef.base.Layer;
 import org.tigris.gef.base.PathConvPercent;
@@ -290,6 +290,10 @@
             ToDoList list = Designer.theDesigner().getToDoList();
             List<ToDoItem> items = list.elementListForOffender(getOwner());
             if (items != null && items.size() > 0) {
+                // TODO: This creates a dependency on the Critics subsystem.
+                // We need a generic way for modules (including our internal
+                // subsystems) to request addition of actions to the popup
+                // menu. - tfm 20080430
                 ArgoJMenu critiques = new ArgoJMenu("menu.popup.critiques");
                 ToDoItem itemUnderMouse = hitClarifier(me.getX(), me.getY());
                 if (itemUnderMouse != null) {

Modified: 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java?view=diff&rev=14536&p1=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java&p2=trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java&r1=14535&r2=14536
==============================================================================
--- 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java   
    (original)
+++ 
trunk/src/argouml-app/src/org/argouml/uml/diagram/ui/FigNodeModelElement.java   
    2008-04-30 13:33:50-0700
@@ -62,7 +62,6 @@
 import org.argouml.application.events.ArgoNotationEventListener;
 import org.argouml.cognitive.Designer;
 import org.argouml.cognitive.Highlightable;
-import org.argouml.cognitive.ItemUID;
 import org.argouml.cognitive.ToDoItem;
 import org.argouml.cognitive.ToDoList;
 import org.argouml.cognitive.ui.ActionGoToCritique;
@@ -89,9 +88,10 @@
 import org.argouml.uml.StereotypeUtility;
 import org.argouml.uml.diagram.ArgoDiagram;
 import org.argouml.uml.diagram.DiagramAppearance;
-import org.argouml.uml.diagram.IItemUID;
 import org.argouml.uml.diagram.PathContainer;
 import org.argouml.uml.ui.ActionDeleteModelElements;
+import org.argouml.util.IItemUID;
+import org.argouml.util.ItemUID;
 import org.tigris.gef.base.Diagram;
 import org.tigris.gef.base.Globals;
 import org.tigris.gef.base.Layer;
@@ -506,6 +506,10 @@
             ToDoList tdList = Designer.theDesigner().getToDoList();
             List<ToDoItem> items = tdList.elementListForOffender(getOwner());
             if (items != null && items.size() > 0) {
+                // TODO: This creates a dependency on the Critics subsystem.
+                // We need a generic way for modules (including our internal
+                // subsystems) to request addition of actions to the popup
+                // menu. - tfm 20080430
                 ArgoJMenu critiques = new ArgoJMenu("menu.popup.critiques");
                 ToDoItem itemUnderMouse = hitClarifier(me.getX(), me.getY());
                 if (itemUnderMouse != null) {

Copied: trunk/src/argouml-app/src/org/argouml/util/IItemUID.java (from r14532, 
/trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java)
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/util/IItemUID.java?view=diff&rev=14536&p1=/trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java&p2=trunk/src/argouml-app/src/org/argouml/util/IItemUID.java&r1=14532&r2=14536
==============================================================================
--- /trunk/src/argouml-app/src/org/argouml/uml/diagram/IItemUID.java    
(original)
+++ trunk/src/argouml-app/src/org/argouml/util/IItemUID.java    2008-04-30 
13:33:50-0700
@@ -22,9 +22,8 @@
 // CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
 // UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
 
-package org.argouml.uml.diagram;
+package org.argouml.util;
 
-import org.argouml.cognitive.ItemUID;
 
 /**
  * Interface for objects which implement the getItemUID/setItemUID methods. It

Copied: trunk/src/argouml-app/src/org/argouml/util/ItemUID.java (from r14532, 
/trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java)
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/util/ItemUID.java?view=diff&rev=14536&p1=/trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java&p2=trunk/src/argouml-app/src/org/argouml/util/ItemUID.java&r1=14532&r2=14536
==============================================================================
--- /trunk/src/argouml-app/src/org/argouml/cognitive/ItemUID.java       
(original)
+++ trunk/src/argouml-app/src/org/argouml/util/ItemUID.java     2008-04-30 
13:33:50-0700
@@ -22,7 +22,7 @@
 // CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
 // UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
 
-package org.argouml.cognitive;
+package org.argouml.util;
 
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
@@ -69,9 +69,6 @@
  * I find a bit unaesthetic. So far, not enough to write it (though it is not
  * much work).
  * 
- * TODO: This class seems to expect arguments to be guaranteed to implement
- * some specific method. So why doesn't it expect an interface to ensure that?
- *
  * @author Michael Stockman
  */
 public class ItemUID {
@@ -164,6 +161,9 @@
             return Model.getFacade().getUUID(obj);
         }
 
+        if (obj instanceof IItemUID) {
+            return ((IItemUID) obj).getItemUID().toString();
+        }
        Object rv;
        try {
            Method m = obj.getClass().getMethod("getItemUID", (Class[]) null);
@@ -243,6 +243,12 @@
        if (Model.getFacade().isAUMLElement(obj)) {
            return null;
        }
+       
+       if (obj instanceof IItemUID) {
+           ItemUID uid = new ItemUID();
+           ((IItemUID) obj).setItemUID(uid);
+           return uid.toString();
+       }
 
        Class[] params = new Class[1];
        Object[] mparam;

Modified: trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java?view=diff&rev=14536&p1=trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java&p2=trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java  
(original)
+++ trunk/src/argouml-app/tests/org/argouml/cognitive/TestItemUID.java  
2008-04-30 13:33:50-0700
@@ -61,6 +61,7 @@
 import org.argouml.uml.diagram.use_case.ui.FigInclude;
 import org.argouml.uml.diagram.use_case.ui.FigUseCase;
 import org.argouml.uml.diagram.use_case.ui.UMLUseCaseDiagram;
+import org.argouml.util.ItemUID;
 
 
 /**

Modified: 
trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java
Url: 
http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java?view=diff&rev=14536&p1=trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java&p2=trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java&r1=14535&r2=14536
==============================================================================
--- trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java   
(original)
+++ trunk/src/argouml-app/tests/org/argouml/cognitive/TestResolvedCritic.java   
2008-04-30 13:33:50-0700
@@ -31,6 +31,7 @@
 
 import org.argouml.model.InitializeModel;
 import org.argouml.model.Model;
+import org.argouml.util.ItemUID;
 
 /**
  * Test the ResolvedCritic class.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to