svn commit: r12595 - trunk/src_new/org/argouml: ui/cmd ui/targetmanager uml/diagram/ui uml/ui

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: mvw
Date: 2007-05-11 10:01:34-0700
New Revision: 12595

Modified:
   trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java
   trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java
   trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java
   trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java
   trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java
   trunk/src_new/org/argouml/uml/ui/PropPanel.java

Log:
Clean out the TargetManager for ActionDeleteModelElements.

Modified: trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java&p2=trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java	(original)
+++ trunk/src_new/org/argouml/ui/cmd/GenericArgoMenuBar.java	2007-05-11 10:01:34-0700
@@ -55,6 +55,7 @@
 import org.argouml.uml.ui.ActionActivityDiagram;
 import org.argouml.uml.ui.ActionClassDiagram;
 import org.argouml.uml.ui.ActionCollaborationDiagram;
+import org.argouml.uml.ui.ActionDeleteModelElements;
 import org.argouml.uml.ui.ActionDeploymentDiagram;
 import org.argouml.uml.ui.ActionGenerateAll;
 import org.argouml.uml.ui.ActionGenerateOne;
@@ -445,8 +446,8 @@
         ShortcutMgr.assignAccelerator(removeItem,
                 ShortcutMgr.ACTION_REMOVE_FROM_DIAGRAM);
 
-        JMenuItem deleteItem = edit.add(TargetManager.getInstance()
-                .getDeleteAction());
+        JMenuItem deleteItem = edit.add(ActionDeleteModelElements
+                .getTargetFollower());
         setMnemonic(deleteItem, "Delete from Model");
         ShortcutMgr.assignAccelerator(deleteItem,
                 ShortcutMgr.ACTION_DELETE_MODEL_ELEMENTS);

Modified: trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java&p2=trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java	(original)
+++ trunk/src_new/org/argouml/ui/cmd/ShortcutMgr.java	2007-05-11 10:01:34-0700
@@ -50,10 +50,10 @@
 import org.argouml.ui.ActionSettings;
 import org.argouml.ui.ProjectBrowser;
 import org.argouml.ui.explorer.ActionPerspectiveConfig;
-import org.argouml.ui.targetmanager.TargetManager;
 import org.argouml.uml.ui.ActionActivityDiagram;
 import org.argouml.uml.ui.ActionClassDiagram;
 import org.argouml.uml.ui.ActionCollaborationDiagram;
+import org.argouml.uml.ui.ActionDeleteModelElements;
 import org.argouml.uml.ui.ActionDeploymentDiagram;
 import org.argouml.uml.ui.ActionGenerateAll;
 import org.argouml.uml.ui.ActionGenerateOne;
@@ -622,8 +622,8 @@
                 KeyEvent.VK_DELETE, 0), ProjectBrowser.getInstance()
                 .getRemoveFromDiagramAction());
         putDefaultShortcut(ACTION_DELETE_MODEL_ELEMENTS, KeyStroke
-                .getKeyStroke(KeyEvent.VK_DELETE, DEFAULT_MASK), TargetManager
-                .getInstance().getDeleteAction());
+                .getKeyStroke(KeyEvent.VK_DELETE, DEFAULT_MASK), 
+                ActionDeleteModelElements.getTargetFollower());
 
         // view menu
         putDefaultShortcut(ACTION_GO_TO_DIAGRAM, null, new ActionGotoDiagram());

Modified: trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java&p2=trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java	(original)
+++ trunk/src_new/org/argouml/ui/targetmanager/TargetManager.java	2007-05-11 10:01:34-0700
@@ -34,7 +34,6 @@
 import java.util.List;
 import java.util.ListIterator;
 
-import javax.swing.AbstractAction;
 import javax.swing.Action;
 import javax.swing.event.EventListenerList;
 
@@ -45,7 +44,6 @@
 import org.argouml.model.Model;
 import org.argouml.uml.diagram.ui.ActionAddMessage;
 import org.argouml.uml.diagram.ui.UMLDiagram;
-import org.argouml.uml.ui.ActionDeleteModelElements;
 import org.argouml.uml.ui.foundation.core.ActionAddAttribute;
 import org.argouml.uml.ui.foundation.core.ActionAddOperation;
 import org.tigris.gef.base.Diagram;
@@ -401,8 +399,6 @@
     private ActionAddOperation addOperationAction = new ActionAddOperation();
     
     private ActionAddMessage addMessageAction = new ActionAddMessage();
-    
-    private ActionDeleteModelElements deleteAction = new ActionDeleteModelElements();
 
     /**
      * Singleton retrieval method.
@@ -833,7 +829,6 @@
         addAttributeAction.setEnabled(addAttributeAction.shouldBeEnabled());
         addOperationAction.setEnabled(addOperationAction.shouldBeEnabled());
         addMessageAction.setEnabled(addMessageAction.shouldBeEnabled());
-        deleteAction.setEnabled(deleteAction.shouldBeEnabled());
 
         inTransaction = false;
     }
@@ -870,14 +865,6 @@
     }
 
     /**
-     * Get the Action for deleting the target list.
-     * @return the action
-     */
-    public AbstractAction getDeleteAction() {
-        return deleteAction;
-    }
-
-    /**
      * Get the Action class for creating and adding a new EnumerationLiteral for
      * the single selected target (or its owner).
      * 

Modified: trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java&p2=trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java	(original)
+++ trunk/src_new/org/argouml/uml/diagram/ui/PropPanelDiagram.java	2007-05-11 10:01:34-0700
@@ -39,6 +39,7 @@
 import org.argouml.ui.targetmanager.TargetListener;
 import org.argouml.ui.targetmanager.TargetManager;
 import org.argouml.uml.ui.AbstractActionNavigate;
+import org.argouml.uml.ui.ActionDeleteModelElements;
 import org.argouml.uml.ui.PropPanel;
 import org.argouml.util.ConfigLoader;
 
@@ -65,7 +66,7 @@
         addField(Translator.localize("label.home-model"), new JScrollPane(lst));
 
         addAction(new ActionNavigateUpFromDiagram());
-        addAction(TargetManager.getInstance().getDeleteAction());
+        addAction(ActionDeleteModelElements.getTargetFollower());
     }
 
     /**

Modified: trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java&p2=trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java	(original)
+++ trunk/src_new/org/argouml/uml/ui/ActionDeleteModelElements.java	2007-05-11 10:01:34-0700
@@ -43,6 +43,8 @@
 import org.argouml.model.InvalidElementException;
 import org.argouml.model.Model;
 import org.argouml.ui.ArgoFrame;
+import org.argouml.ui.targetmanager.TargetEvent;
+import org.argouml.ui.targetmanager.TargetListener;
 import org.argouml.ui.targetmanager.TargetManager;
 import org.argouml.uml.diagram.static_structure.ui.CommentEdge;
 import org.argouml.uml.diagram.ui.ActionDeleteConcurrentRegion;
@@ -65,6 +67,30 @@
      * Generated serial version for rev 1.4
      */
     private static final long serialVersionUID = -5728400220151823726L;
+
+    private static ActionDeleteModelElements targetFollower;
+
+    public static ActionDeleteModelElements getTargetFollower() {
+        if (targetFollower == null) {
+            targetFollower  = new ActionDeleteModelElements();
+            TargetManager.getInstance().addTargetListener(new TargetListener() {
+                public void targetAdded(TargetEvent e) {
+                    setTarget();
+                }
+                public void targetRemoved(TargetEvent e) {
+                    setTarget();
+                }
+
+                public void targetSet(TargetEvent e) {
+                    setTarget();
+                }
+                private void setTarget() {
+                    targetFollower.setEnabled(targetFollower.shouldBeEnabled());
+                }
+            });
+        }
+        return targetFollower;
+    }
     
     private static final Logger LOG =
         Logger.getLogger(ActionDeleteModelElements.class);

Modified: trunk/src_new/org/argouml/uml/ui/PropPanel.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/org/argouml/uml/ui/PropPanel.java?view=diff&rev=12595&p1=trunk/src_new/org/argouml/uml/ui/PropPanel.java&p2=trunk/src_new/org/argouml/uml/ui/PropPanel.java&r1=12594&r2=12595
==============================================================================
--- trunk/src_new/org/argouml/uml/ui/PropPanel.java	(original)
+++ trunk/src_new/org/argouml/uml/ui/PropPanel.java	2007-05-11 10:01:34-0700
@@ -57,7 +57,6 @@
 import org.argouml.ui.LookAndFeelMgr;
 import org.argouml.ui.targetmanager.TargetEvent;
 import org.argouml.ui.targetmanager.TargetListener;
-import org.argouml.ui.targetmanager.TargetManager;
 import org.argouml.ui.targetmanager.TargettableModelView;
 import org.argouml.uml.Profile;
 import org.tigris.gef.presentation.Fig;
@@ -480,7 +479,7 @@
      * @return the delete action
      */
     protected final Action getDeleteAction() {
-        return TargetManager.getInstance().getDeleteAction();
+        return ActionDeleteModelElements.getTargetFollower();
     }
 
     /**
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.