Author: kono
Date: 2012-03-23 10:04:57 -0700 (Fri, 23 Mar 2012)
New Revision: 28627

Added:
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTask.java
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskFactory.java
   
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/vizmap/
   
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskTest.java
Modified:
   
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/CyActivator.java
Log:
fixes #786 ApplyVisualStyleTaskFactory had been implemented.

Modified: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/CyActivator.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/CyActivator.java
  2012-03-23 16:47:18 UTC (rev 28626)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/CyActivator.java
  2012-03-23 17:04:57 UTC (rev 28627)
@@ -37,10 +37,10 @@
 import org.cytoscape.task.TableCellTaskFactory;
 import org.cytoscape.task.TableColumnTaskFactory;
 import org.cytoscape.task.TableTaskFactory;
+import org.cytoscape.task.creation.LoadSession;
 import org.cytoscape.task.creation.LoadVisualStyles;
+import org.cytoscape.task.creation.NetworkViewCreator;
 import org.cytoscape.task.creation.NewEmptyNetworkViewFactory;
-import org.cytoscape.task.creation.LoadSession;
-import org.cytoscape.task.creation.NetworkViewCreator;
 import org.cytoscape.task.internal.creation.CloneNetworkTaskFactory;
 import org.cytoscape.task.internal.creation.CreateNetworkViewTaskFactory;
 import org.cytoscape.task.internal.creation.NewEmptyNetworkTaskFactory;
@@ -97,6 +97,7 @@
 import org.cytoscape.task.internal.table.MapGlobalToLocalTableTaskFactory;
 import org.cytoscape.task.internal.table.RenameColumnTaskFactory;
 import org.cytoscape.task.internal.title.EditNetworkTitleTaskFactory;
+import org.cytoscape.task.internal.vizmap.ApplyVisualStyleTaskFactory;
 import org.cytoscape.task.internal.zoom.FitContentTaskFactory;
 import org.cytoscape.task.internal.zoom.FitSelectedTaskFactory;
 import org.cytoscape.task.internal.zoom.ZoomInTaskFactory;
@@ -237,6 +238,16 @@
                
                MapGlobalToLocalTableTaskFactory mapGlobal = new 
MapGlobalToLocalTableTaskFactory(cyTableManagerServiceRef, 
cyNetworkManagerServiceRef);
                
+               // Apply Visual Style Task
+               ApplyVisualStyleTaskFactory applyVisualStyleTaskFactory = new 
ApplyVisualStyleTaskFactory(visualMappingManagerServiceRef);
+               Properties applyVisualStyleProps = new Properties();
+               
applyVisualStyleProps.setProperty("id","applyVisualStyleTaskFactory");
+               applyVisualStyleProps.setProperty("title", "Apply visual 
style");
+               
applyVisualStyleProps.setProperty("command","apply-visualstyle");
+               applyVisualStyleProps.setProperty("commandNamespace","vizmap");
+               registerAllServices(bc, applyVisualStyleTaskFactory, 
applyVisualStyleProps);
+               
+               
                Properties mapGlobalProps = new Properties();
                
mapGlobalProps.setProperty("id","mapGlobalToLocalTableTaskFactory");
                mapGlobalProps.setProperty("preferredMenu","Tools");

Added: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTask.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTask.java
                          (rev 0)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTask.java
  2012-03-23 17:04:57 UTC (rev 28627)
@@ -0,0 +1,42 @@
+package org.cytoscape.task.internal.vizmap;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.cytoscape.task.AbstractNetworkViewTask;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
+import org.cytoscape.view.vizmap.VisualStyle;
+import org.cytoscape.work.ProvidesTitle;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.Tunable;
+import org.cytoscape.work.util.ListSingleSelection;
+
+public class ApplyVisualStyleTask extends AbstractNetworkViewTask {
+       
+       @ProvidesTitle
+       public String getTitle() {
+               return "Visual Style to be applied";
+       }
+       
+       @Tunable(description = "Visual Style")
+       public ListSingleSelection<VisualStyle> styles;
+       
+       
+       public ApplyVisualStyleTask(final CyNetworkView view, final 
VisualMappingManager vmm) {
+               super(view);
+               final List<VisualStyle> vsList = new 
ArrayList<VisualStyle>(vmm.getAllVisualStyles());
+               styles = new ListSingleSelection<VisualStyle>(vsList);
+               if(vsList.size()>0)
+                       styles.setSelectedValue(vsList.get(0));
+       }
+
+       @Override
+       public void run(TaskMonitor taskMonitor) throws Exception {
+               final VisualStyle selected = styles.getSelectedValue();
+               
+               // Simply apply the style to the view.
+               selected.apply(view);
+       }
+
+}

Added: 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskFactory.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskFactory.java
                           (rev 0)
+++ 
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskFactory.java
   2012-03-23 17:04:57 UTC (rev 28627)
@@ -0,0 +1,21 @@
+package org.cytoscape.task.internal.vizmap;
+
+import org.cytoscape.task.AbstractNetworkViewTaskFactory;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
+import org.cytoscape.work.TaskIterator;
+
+public class ApplyVisualStyleTaskFactory extends 
AbstractNetworkViewTaskFactory {
+
+       private final VisualMappingManager vmm;
+       
+       public ApplyVisualStyleTaskFactory(final VisualMappingManager vmm) {
+               this.vmm = vmm;
+       }
+       
+       @Override
+       public TaskIterator createTaskIterator(final CyNetworkView networkView) 
{
+               return new TaskIterator(new ApplyVisualStyleTask(networkView, 
vmm));
+       }
+
+}

Added: 
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskTest.java
===================================================================
--- 
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskTest.java
                              (rev 0)
+++ 
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/vizmap/ApplyVisualStyleTaskTest.java
      2012-03-23 17:04:57 UTC (rev 28627)
@@ -0,0 +1,52 @@
+package org.cytoscape.task.internal.vizmap;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.swing.text.html.StyleSheet;
+
+import org.cytoscape.ding.NetworkViewTestSupport;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
+import org.cytoscape.view.vizmap.VisualStyle;
+import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.work.util.ListSingleSelection;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.*;
+
+import static org.mockito.Mockito.*;
+
+public class ApplyVisualStyleTaskTest {
+
+       @Before
+       public void setUp() throws Exception {
+       }
+
+       @After
+       public void tearDown() throws Exception {
+       }
+
+       @Test
+       public void testRun() throws Exception {
+               NetworkViewTestSupport nvts = new NetworkViewTestSupport();
+               
+               TaskMonitor tm = mock(TaskMonitor.class);
+               
+               final CyNetworkView view = nvts.getNetworkView();
+               
+               final VisualMappingManager vmm = 
mock(VisualMappingManager.class);
+               ApplyVisualStyleTask task = new ApplyVisualStyleTask(view, vmm);
+               
+               final List<VisualStyle> vsList = new ArrayList<VisualStyle>();
+               VisualStyle style1 = mock(VisualStyle.class);
+               vsList.add(style1);
+               task.styles = new ListSingleSelection<VisualStyle>(vsList);
+               task.styles.setSelectedValue(style1);
+               task.run(tm);
+               
+               verify(style1, times(1)).apply(view);
+       }
+
+}

-- 
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