Author: ruschein
Date: 2011-07-29 16:19:26 -0700 (Fri, 29 Jul 2011)
New Revision: 26342

Modified:
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentEdit.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactory.java
   
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitContentEditTest.java
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactoryTest.java
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskTest.java
Log:
Added undo/redo for fitting of selected nodes.

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentEdit.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentEdit.java
       2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentEdit.java
       2011-07-29 23:19:26 UTC (rev 26342)
@@ -17,8 +17,8 @@
        private final double networkCenterXLocation;
        private final double networkCenterYLocation;
 
-       FitContentEdit(final CyNetworkView view) {
-               super("Fit Content");
+       FitContentEdit(final String description, final CyNetworkView view) {
+               super(description);
 
                this.view = view;
                networkScaleFactor = 
view.getVisualProperty(NETWORK_SCALE_FACTOR);

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentTask.java
       2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitContentTask.java
       2011-07-29 23:19:26 UTC (rev 26342)
@@ -31,9 +31,9 @@
 
 
 import org.cytoscape.task.AbstractNetworkViewTask;
+import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.work.TaskMonitor;
 import org.cytoscape.work.undo.UndoSupport;
-import org.cytoscape.view.model.CyNetworkView;
 
 
 public class FitContentTask extends AbstractNetworkViewTask {
@@ -45,7 +45,8 @@
        }
 
        public void run(TaskMonitor tm) {
-               undoSupport.getUndoableEditSupport().postEdit(new 
FitContentEdit(view));
+               undoSupport.getUndoableEditSupport().postEdit(new 
FitContentEdit("Fit Content",
+                                                                               
 view));
 
                view.fitContent();
        }

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTask.java
      2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTask.java
      2011-07-29 23:19:26 UTC (rev 26342)
@@ -1,15 +1,8 @@
 /*
   File: FitSelectedTask.java
 
-  Copyright (c) 2006, The Cytoscape Consortium (www.cytoscape.org)
+  Copyright (c) 2006, 2011, The Cytoscape Consortium (www.cytoscape.org)
 
-  The Cytoscape Consortium is:
-  - Institute for Systems Biology
-  - University of California San Diego
-  - Memorial Sloan-Kettering Cancer Center
-  - Institut Pasteur
-  - Agilent Technologies
-
   This library is free software; you can redistribute it and/or modify it
   under the terms of the GNU Lesser General Public License as published
   by the Free Software Foundation; either version 2.1 of the License, or
@@ -34,20 +27,27 @@
   along with this library; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
 */
-
 package org.cytoscape.task.internal.zoom;
 
+
 import org.cytoscape.task.AbstractNetworkViewTask;
+import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.work.TaskMonitor;
-import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.work.undo.UndoSupport;
 
+
 public class FitSelectedTask extends AbstractNetworkViewTask {
+       private final UndoSupport undoSupport;
 
-       public FitSelectedTask(CyNetworkView v) {
+       public FitSelectedTask(final UndoSupport undoSupport, final 
CyNetworkView v) {
                super(v);
+               this.undoSupport = undoSupport;
        }
 
        public void run(TaskMonitor tm) {
+               undoSupport.getUndoableEditSupport().postEdit(new 
FitContentEdit("Fit Selected",
+                                                                               
 view));
+
                view.fitSelected();
        }
 }

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactory.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactory.java
       2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactory.java
       2011-07-29 23:19:26 UTC (rev 26342)
@@ -32,11 +32,18 @@
 
 import org.cytoscape.task.AbstractNetworkViewTaskFactory;  
 import org.cytoscape.work.TaskIterator;
+import org.cytoscape.work.undo.UndoSupport;
 
 
 public class FitSelectedTaskFactory extends AbstractNetworkViewTaskFactory {
+       private final UndoSupport undoSupport;
 
+       public FitSelectedTaskFactory(final UndoSupport undoSupport) {
+               this.undoSupport = undoSupport;
+       }
+
+
        public TaskIterator getTaskIterator() {
-               return new TaskIterator(new FitSelectedTask(view));
+               return new TaskIterator(new FitSelectedTask(undoSupport, view));
        } 
 }

Modified: 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
--- 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
    2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
    2011-07-29 23:19:26 UTC (rev 26342)
@@ -280,6 +280,7 @@
        </bean>
 
        <bean id="fitSelectedTaskFactory" 
class="org.cytoscape.task.internal.zoom.FitSelectedTaskFactory">
+               <constructor-arg ref="undoSupportServiceRef" />
        </bean>
 
        <bean id="fitContentTaskFactory" 
class="org.cytoscape.task.internal.zoom.FitContentTaskFactory">

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitContentEditTest.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitContentEditTest.java
   2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitContentEditTest.java
   2011-07-29 23:19:26 UTC (rev 26342)
@@ -23,7 +23,7 @@
                
when(view.getVisualProperty(NETWORK_CENTER_X_LOCATION)).thenReturn(100.0);
                
when(view.getVisualProperty(NETWORK_CENTER_Y_LOCATION)).thenReturn(400.0);
 
-               final FitContentEdit zoomEdit = new FitContentEdit(view);
+               final FitContentEdit zoomEdit = new FitContentEdit("XYZ", view);
                
when(view.getVisualProperty(NETWORK_SCALE_FACTOR)).thenReturn(1.0);
                
when(view.getVisualProperty(NETWORK_CENTER_X_LOCATION)).thenReturn(200.0);
                
when(view.getVisualProperty(NETWORK_CENTER_Y_LOCATION)).thenReturn(300.0);

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactoryTest.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactoryTest.java
   2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskFactoryTest.java
   2011-07-29 23:19:26 UTC (rev 26342)
@@ -1,19 +1,23 @@
 package org.cytoscape.task.internal.zoom;
 
+
 import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.work.Task;
 import org.cytoscape.work.TaskIterator;
+import org.cytoscape.work.undo.UndoSupport;
+
 import org.junit.Test;
 import static org.junit.Assert.*;
 import static org.mockito.Mockito.*;
 
+
 public class FitSelectedTaskFactoryTest {
        @Test
        public void testGetTaskIterator() {
-               
+               UndoSupport undoSupport = mock(UndoSupport.class);
+               FitSelectedTaskFactory factory = new 
FitSelectedTaskFactory(undoSupport);
+
                CyNetworkView view = mock(CyNetworkView.class);
-               
-               FitSelectedTaskFactory factory = new FitSelectedTaskFactory();
                factory.setNetworkView(view);
                
                TaskIterator ti = factory.getTaskIterator();

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskTest.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskTest.java
  2011-07-29 22:47:26 UTC (rev 26341)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/zoom/FitSelectedTaskTest.java
  2011-07-29 23:19:26 UTC (rev 26342)
@@ -1,34 +1,51 @@
 package org.cytoscape.task.internal.zoom;
 
+
+import static 
org.cytoscape.view.presentation.property.MinimalVisualLexicon.NETWORK_CENTER_X_LOCATION;
+import static 
org.cytoscape.view.presentation.property.MinimalVisualLexicon.NETWORK_CENTER_Y_LOCATION;
+import static 
org.cytoscape.view.presentation.property.MinimalVisualLexicon.NETWORK_SCALE_FACTOR;
+
+import javax.swing.undo.UndoableEditSupport;
+
 import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.undo.UndoSupport;
+
 import org.junit.Test;
 
 import static org.mockito.Mockito.*;
 
+
 public class FitSelectedTaskTest {
-       
        @Test
        public void testRun() throws Exception {
                CyNetworkView view = mock(CyNetworkView.class);
-                               
+               
when(view.getVisualProperty(NETWORK_CENTER_X_LOCATION)).thenReturn(0.0);
+               
when(view.getVisualProperty(NETWORK_CENTER_Y_LOCATION)).thenReturn(0.0);
+               
when(view.getVisualProperty(NETWORK_SCALE_FACTOR)).thenReturn(0.0);
+
                TaskMonitor tm = mock(TaskMonitor.class);
-               
-               FitSelectedTask t = new FitSelectedTask(view);
-               
+
+               UndoableEditSupport undoableEditSupport = 
mock(UndoableEditSupport.class);
+               UndoSupport undoSupport = mock(UndoSupport.class);
+               
when(undoSupport.getUndoableEditSupport()).thenReturn(undoableEditSupport);
+
+               FitSelectedTask t = new FitSelectedTask(undoSupport, view);
+
                t.run(tm);
-               
+
                verify(view, times(1)).fitSelected();
        }
-       
+
        @Test(expected=Exception.class)
        public void testNullView() throws Exception {
+               UndoSupport undoSupport = mock(UndoSupport.class);
                CyNetworkView view = null;
-                               
+
                TaskMonitor tm = mock(TaskMonitor.class);
-               
-               FitSelectedTask t = new FitSelectedTask(view);
-               
+
+               FitSelectedTask t = new FitSelectedTask(undoSupport, view);
+
                t.run(tm);
        }
 

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to