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.