Author: clopes
Date: 2012-05-08 10:37:39 -0700 (Tue, 08 May 2012)
New Revision: 29144
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/hide/HideSelectedTask.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryImpl.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTask.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryImpl.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTask.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryImpl.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTask.java
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryImpl.java
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryTest.java
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryTest.java
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryTest.java
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryTest.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/AbstractDViewModel.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DNodeView.java
Log:
Fixes #957 : Node/Edge Visible bypass options don't work
Also, showing nodes that were saved as hidden in sessions files was not working
correctly--some visual properties (e.g. node size) were not being restored
properly after displaying the elements again.
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-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/CyActivator.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -243,12 +243,12 @@
SelectFirstNeighborsNodeViewTaskFactoryImpl
selectFirstNeighborsNodeViewTaskFactory = new
SelectFirstNeighborsNodeViewTaskFactoryImpl(CyEdge.Type.ANY);
- HideSelectedTaskFactoryImpl hideSelectedTaskFactory = new
HideSelectedTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef);
+ HideSelectedTaskFactoryImpl hideSelectedTaskFactory = new
HideSelectedTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
HideSelectedNodesTaskFactoryImpl hideSelectedNodesTaskFactory =
new
HideSelectedNodesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
HideSelectedEdgesTaskFactoryImpl hideSelectedEdgesTaskFactory =
new
HideSelectedEdgesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
- UnHideAllTaskFactoryImpl unHideAllTaskFactory = new
UnHideAllTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef);
- UnHideAllNodesTaskFactoryImpl unHideAllNodesTaskFactory = new
UnHideAllNodesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef);
- UnHideAllEdgesTaskFactoryImpl unHideAllEdgesTaskFactory = new
UnHideAllEdgesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef);
+ UnHideAllTaskFactoryImpl unHideAllTaskFactory = new
UnHideAllTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
+ UnHideAllNodesTaskFactoryImpl unHideAllNodesTaskFactory = new
UnHideAllNodesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
+ UnHideAllEdgesTaskFactoryImpl unHideAllEdgesTaskFactory = new
UnHideAllEdgesTaskFactoryImpl(undoSupportServiceRef,cyEventHelperRef,visualMappingManagerServiceRef);
NewEmptyNetworkTaskFactoryImpl newEmptyNetworkTaskFactory = new
NewEmptyNetworkTaskFactoryImpl(cyNetworkFactoryServiceRef,cyNetworkViewFactoryServiceRef,cyNetworkManagerServiceRef,cyNetworkViewManagerServiceRef,cyNetworkNamingServiceRef,synchronousTaskManagerServiceRef,cyApplicationManagerServiceRef);
CloneNetworkTaskFactoryImpl cloneNetworkTaskFactory = new
CloneNetworkTaskFactoryImpl(cyNetworkManagerServiceRef,cyNetworkViewManagerServiceRef,visualMappingManagerServiceRef,cyNetworkFactoryServiceRef,cyNetworkViewFactoryServiceRef,cyNetworkNamingServiceRef,cyApplicationManagerServiceRef);
NewNetworkSelectedNodesEdgesTaskFactoryImpl
newNetworkSelectedNodesEdgesTaskFactory = new
NewNetworkSelectedNodesEdgesTaskFactoryImpl(undoSupportServiceRef,cyRootNetworkFactoryServiceRef,cyNetworkViewFactoryServiceRef,cyNetworkManagerServiceRef,cyNetworkViewManagerServiceRef,cyNetworkNamingServiceRef,visualMappingManagerServiceRef,cyApplicationManagerServiceRef,cyEventHelperRef);
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTask.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTask.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -39,6 +39,7 @@
import org.cytoscape.model.CyNode;
import org.cytoscape.task.AbstractNetworkViewTask;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskMonitor;
import org.cytoscape.work.undo.UndoSupport;
@@ -46,32 +47,37 @@
public class HideSelectedTask extends AbstractNetworkViewTask {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private VisualMappingManager vmMgr;
- public HideSelectedTask(final UndoSupport undoSupport, final
CyEventHelper eventHelper,
- final CyNetworkView v)
- {
+ public HideSelectedTask(final UndoSupport undoSupport,
+ final CyEventHelper
eventHelper,
+ final
VisualMappingManager vmMgr,
+ final CyNetworkView v) {
super(v);
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public void run(TaskMonitor e) {
e.setProgress(0.0);
+
final CyNetwork network = view.getModel();
- undoSupport.postEdit(
- new HideEdit(eventHelper, "Hide Selected Nodes &
Edges", network, view));
-
- final List<CyNode> selectedNodes =
- CyTableUtil.getNodesInState(network,
CyNetwork.SELECTED, true);
+ undoSupport.postEdit(new HideEdit(eventHelper, "Hide Selected
Nodes & Edges", network, view));
+ final List<CyNode> selectedNodes =
CyTableUtil.getNodesInState(network, CyNetwork.SELECTED, true);
e.setProgress(0.2);
- final List<CyEdge> selectedEdges =
- CyTableUtil.getEdgesInState(network,
CyNetwork.SELECTED, true);
+
+ final List<CyEdge> selectedEdges =
CyTableUtil.getEdgesInState(network, CyNetwork.SELECTED, true);
e.setProgress(0.4);
+
HideUtils.setVisibleNodes(selectedNodes, false, view);
e.setProgress(0.6);
+
HideUtils.setVisibleEdges(selectedEdges, false, view);
e.setProgress(0.8);
+
+ vmMgr.getVisualStyle(view).apply(view);
view.updateView();
e.setProgress(1.0);
- }
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryImpl.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryImpl.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryImpl.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.task.AbstractNetworkViewTaskFactory;
import org.cytoscape.task.hide.HideSelectedTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,15 +42,17 @@
public class HideSelectedTaskFactoryImpl extends
AbstractNetworkViewTaskFactory implements HideSelectedTaskFactory {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
public HideSelectedTaskFactoryImpl(final UndoSupport undoSupport,
- final CyEventHelper eventHelper)
- {
+
final CyEventHelper eventHelper,
+
final VisualMappingManager vmMgr) {
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public TaskIterator createTaskIterator(CyNetworkView view) {
- return new TaskIterator(new HideSelectedTask(undoSupport,
eventHelper, view));
+ return new TaskIterator(new HideSelectedTask(undoSupport,
eventHelper, vmMgr, view));
}
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTask.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTask.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.model.CyNetwork;
import org.cytoscape.task.AbstractNetworkViewTask;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.undo.UndoSupport;
import org.cytoscape.work.TaskMonitor;
@@ -42,24 +43,29 @@
public class UnHideAllEdgesTask extends AbstractNetworkViewTask {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
- public UnHideAllEdgesTask(final UndoSupport undoSupport, final
CyEventHelper eventHelper,
- final CyNetworkView v)
- {
+ public UnHideAllEdgesTask(final UndoSupport undoSupport,
+ final CyEventHelper
eventHelper,
+ final
VisualMappingManager vmMgr,
+ final CyNetworkView
v) {
super(v);
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public void run(TaskMonitor e) {
e.setProgress(0.0);
+
final CyNetwork network = view.getModel();
- undoSupport.postEdit(
- new HideEdit(eventHelper, "Show All Edges", network,
view));
-
+ undoSupport.postEdit(new HideEdit(eventHelper, "Show All
Edges", network, view));
e.setProgress(0.2);
+
HideUtils.setVisibleEdges(network.getEdgeList(), true, view);
e.setProgress(0.7);
+
+ vmMgr.getVisualStyle(view).apply(view);
view.updateView();
e.setProgress(1.0);
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryImpl.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryImpl.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryImpl.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.task.AbstractNetworkViewTaskFactory;
import org.cytoscape.task.hide.UnHideAllEdgesTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,15 +42,17 @@
public class UnHideAllEdgesTaskFactoryImpl extends
AbstractNetworkViewTaskFactory implements UnHideAllEdgesTaskFactory {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
public UnHideAllEdgesTaskFactoryImpl(final UndoSupport undoSupport,
- final CyEventHelper eventHelper)
- {
+
final CyEventHelper eventHelper,
+
final VisualMappingManager vmMgr) {
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public TaskIterator createTaskIterator(CyNetworkView view) {
- return new TaskIterator(new UnHideAllEdgesTask(undoSupport,
eventHelper, view));
- }
+ return new TaskIterator(new UnHideAllEdgesTask(undoSupport,
eventHelper, vmMgr, view));
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTask.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTask.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.model.CyNetwork;
import org.cytoscape.task.AbstractNetworkViewTask;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskMonitor;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,23 +42,29 @@
public class UnHideAllNodesTask extends AbstractNetworkViewTask {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
- public UnHideAllNodesTask(final UndoSupport undoSupport, final
CyEventHelper eventHelper,
- final CyNetworkView v)
- {
+ public UnHideAllNodesTask(final UndoSupport undoSupport,
+ final CyEventHelper
eventHelper,
+ final
VisualMappingManager vmMgr,
+ final CyNetworkView
v) {
super(v);
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public void run(TaskMonitor e) {
e.setProgress(0.0);
+
final CyNetwork network = view.getModel();
- undoSupport.postEdit(
- new HideEdit(eventHelper, "Show All Nodes", network,
view));
+ undoSupport.postEdit(new HideEdit(eventHelper, "Show All
Nodes", network, view));
e.setProgress(0.2);
+
HideUtils.setVisibleNodes(network.getNodeList(), true, view);
e.setProgress(0.7);
+
+ vmMgr.getVisualStyle(view).apply(view);
view.updateView();
e.setProgress(1.0);
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryImpl.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryImpl.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryImpl.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.task.AbstractNetworkViewTaskFactory;
import org.cytoscape.task.hide.UnHideAllNodesTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,15 +42,17 @@
public class UnHideAllNodesTaskFactoryImpl extends
AbstractNetworkViewTaskFactory implements UnHideAllNodesTaskFactory {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
public UnHideAllNodesTaskFactoryImpl(final UndoSupport undoSupport,
- final CyEventHelper eventHelper)
- {
+
final CyEventHelper eventHelper,
+
final VisualMappingManager vmMgr) {
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public TaskIterator createTaskIterator(CyNetworkView view) {
- return new TaskIterator(new UnHideAllNodesTask(undoSupport,
eventHelper, view));
+ return new TaskIterator(new UnHideAllNodesTask(undoSupport,
eventHelper, vmMgr, view));
}
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTask.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTask.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTask.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.model.CyNetwork;
import org.cytoscape.task.AbstractNetworkViewTask;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskMonitor;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,25 +42,32 @@
public class UnHideAllTask extends AbstractNetworkViewTask {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
- public UnHideAllTask(final UndoSupport undoSupport, final CyEventHelper
eventHelper,
- final CyNetworkView v)
- {
+ public UnHideAllTask(final UndoSupport undoSupport,
+ final CyEventHelper
eventHelper,
+ final VisualMappingManager
vmMgr,
+ final CyNetworkView v) {
super(v);
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public void run(TaskMonitor e) {
e.setProgress(0.0);
+
final CyNetwork network = view.getModel();
- undoSupport.postEdit(
- new HideEdit(eventHelper, "Show All Nodes And Edges",
network, view));
+ undoSupport.postEdit(new HideEdit(eventHelper, "Show All Nodes
And Edges", network, view));
e.setProgress(0.2);
+
HideUtils.setVisibleNodes(network.getNodeList(), true, view);
e.setProgress(0.5);
+
HideUtils.setVisibleEdges(network.getEdgeList(), true, view);
e.setProgress(0.7);
+
+ vmMgr.getVisualStyle(view).apply(view);
view.updateView();
e.setProgress(1.0);
}
Modified:
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryImpl.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryImpl.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/main/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryImpl.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -34,6 +34,7 @@
import org.cytoscape.task.AbstractNetworkViewTaskFactory;
import org.cytoscape.task.hide.UnHideAllTaskFactory;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -41,15 +42,17 @@
public class UnHideAllTaskFactoryImpl extends AbstractNetworkViewTaskFactory
implements UnHideAllTaskFactory {
private final UndoSupport undoSupport;
private final CyEventHelper eventHelper;
+ private final VisualMappingManager vmMgr;
public UnHideAllTaskFactoryImpl(final UndoSupport undoSupport,
- final CyEventHelper eventHelper)
- {
+ final
CyEventHelper eventHelper,
+ final
VisualMappingManager vmMgr) {
this.undoSupport = undoSupport;
this.eventHelper = eventHelper;
+ this.vmMgr = vmMgr;
}
public TaskIterator createTaskIterator(CyNetworkView view) {
- return new TaskIterator(new UnHideAllTask(undoSupport,
eventHelper, view));
+ return new TaskIterator(new UnHideAllTask(undoSupport,
eventHelper, vmMgr, view));
}
}
Modified:
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryTest.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryTest.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/HideSelectedTaskFactoryTest.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -1,33 +1,32 @@
package org.cytoscape.task.internal.hide;
-
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.Task;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
import org.junit.Test;
-
public class HideSelectedTaskFactoryTest {
@Test
public void testRun() throws Exception {
UndoSupport undoSupport = mock(UndoSupport.class);
CyEventHelper eventHelper = mock(CyEventHelper.class);
- HideSelectedTaskFactoryImpl factory =
- new HideSelectedTaskFactoryImpl(undoSupport,
eventHelper);
+ VisualMappingManager vmMgr = mock(VisualMappingManager.class);
+ HideSelectedTaskFactoryImpl factory = new
HideSelectedTaskFactoryImpl(undoSupport, eventHelper, vmMgr);
CyNetworkView view = mock(CyNetworkView.class);
-
+
TaskIterator ti = factory.createTaskIterator(view);
assertNotNull(ti);
-
- assertTrue( ti.hasNext() );
+
+ assertTrue(ti.hasNext());
Task t = ti.next();
- assertNotNull( t );
- }
+ assertNotNull(t);
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryTest.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryTest.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllEdgesTaskFactoryTest.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -7,6 +7,7 @@
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.Task;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -18,16 +19,16 @@
public void testRun() throws Exception {
UndoSupport undoSupport = mock(UndoSupport.class);
CyEventHelper eventHelper = mock(CyEventHelper.class);
- UnHideAllEdgesTaskFactoryImpl factory =
- new UnHideAllEdgesTaskFactoryImpl(undoSupport,
eventHelper);
+ VisualMappingManager vmMgr = mock(VisualMappingManager.class);
+ UnHideAllEdgesTaskFactoryImpl factory = new
UnHideAllEdgesTaskFactoryImpl(undoSupport, eventHelper, vmMgr);
CyNetworkView view = mock(CyNetworkView.class);
-
+
TaskIterator ti = factory.createTaskIterator(view);
assertNotNull(ti);
-
- assertTrue( ti.hasNext() );
+
+ assertTrue(ti.hasNext());
Task t = ti.next();
- assertNotNull( t );
- }
+ assertNotNull(t);
+ }
}
Modified:
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryTest.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryTest.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllNodesTaskFactoryTest.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -7,6 +7,7 @@
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.Task;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -18,8 +19,8 @@
public void testRun() throws Exception {
UndoSupport undoSupport = mock(UndoSupport.class);
CyEventHelper eventHelper = mock(CyEventHelper.class);
- UnHideAllNodesTaskFactoryImpl factory =
- new UnHideAllNodesTaskFactoryImpl(undoSupport,
eventHelper);
+ VisualMappingManager vmMgr = mock(VisualMappingManager.class);
+ UnHideAllNodesTaskFactoryImpl factory = new
UnHideAllNodesTaskFactoryImpl(undoSupport, eventHelper, vmMgr);
CyNetworkView view = mock(CyNetworkView.class);
Modified:
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryTest.java
===================================================================
---
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryTest.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/core-task-impl/src/test/java/org/cytoscape/task/internal/hide/UnHideAllTaskFactoryTest.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -7,6 +7,7 @@
import org.cytoscape.event.CyEventHelper;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.vizmap.VisualMappingManager;
import org.cytoscape.work.Task;
import org.cytoscape.work.TaskIterator;
import org.cytoscape.work.undo.UndoSupport;
@@ -18,7 +19,8 @@
public void testRun() throws Exception {
UndoSupport undoSupport = mock(UndoSupport.class);
CyEventHelper eventHelper = mock(CyEventHelper.class);
- UnHideAllTaskFactoryImpl factory = new
UnHideAllTaskFactoryImpl(undoSupport, eventHelper);
+ VisualMappingManager vmMgr = mock(VisualMappingManager.class);
+ UnHideAllTaskFactoryImpl factory = new
UnHideAllTaskFactoryImpl(undoSupport, eventHelper, vmMgr);
CyNetworkView view = mock(CyNetworkView.class);
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/AbstractDViewModel.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/AbstractDViewModel.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/AbstractDViewModel.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -42,23 +42,31 @@
return suid;
}
+ @Override
+ public <T, V extends T> void setVisualProperty(final VisualProperty<?
extends T> vp, V value) {
+ visualProperties.put(vp, value);
+
+ if (!isValueLocked(vp))
+ applyVisualProperty(vp, value);
+ }
@Override
public <T, V extends T> void setLockedValue(final VisualProperty<?
extends T> vp, final V value) {
- this.visualPropertyLocks.put(vp, value);
+ visualPropertyLocks.put(vp, value);
+ applyVisualProperty(vp, value);
}
@Override
public boolean isValueLocked(final VisualProperty<?> vp) {
- if (visualPropertyLocks.get(vp) == null)
- return false;
- else
- return true;
+ return visualPropertyLocks.get(vp) != null;
}
@Override
public void clearValueLock(final VisualProperty<?> vp) {
- this.visualPropertyLocks.remove(vp);
+ visualPropertyLocks.remove(vp);
+ // Re-apply the regular visual property value
+ Object newValue = getVisualProperty(vp);
+ applyVisualProperty(vp, newValue);
}
@SuppressWarnings("unchecked")
@@ -73,4 +81,6 @@
} else
return (T) this.visualPropertyLocks.get(vp);
}
+
+ protected abstract <T, V extends T> void applyVisualProperty(final
VisualProperty<? extends T> vp, V value);
}
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -54,7 +54,6 @@
/**
* Ding implementation of Edge View.
- *
*/
public class DEdgeView extends AbstractDViewModel<CyEdge> implements EdgeView,
Label, EdgeAnchors {
@@ -764,6 +763,7 @@
}
}
+ @Override
public void setBend(final Bend bend) {
synchronized (m_view.m_lock) {
m_view.m_edgeDetails.m_edgeBends.put(model, bend);
@@ -779,14 +779,9 @@
}
}
-
-
@SuppressWarnings("unchecked")
@Override
- public <T, V extends T> void setVisualProperty(VisualProperty<? extends
T> vpOriginal, V value) {
-
- final VisualProperty<?> vp = vpOriginal;
-
+ protected <T, V extends T> void applyVisualProperty(final
VisualProperty<? extends T> vp, V value) {
// If value is null, simply use the VP's default value.
if(value == null)
value = (V) vp.getDefault();
@@ -880,6 +875,5 @@
} else if(vp == DVisualLexicon.EDGE_BEND) {
setBend((Bend) value);
}
- visualProperties.put(vp, value);
}
}
\ No newline at end of file
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -529,6 +529,7 @@
*
* @return Whether node selection is enabled.
*/
+ @Override
public boolean nodeSelectionEnabled() {
return m_nodeSelection;
}
@@ -538,6 +539,7 @@
*
* @return Whether edge selection is enabled.
*/
+ @Override
public boolean edgeSelectionEnabled() {
return m_edgeSelection;
}
@@ -545,6 +547,7 @@
/**
* Enabling the ability to select nodes.
*/
+ @Override
public void enableNodeSelection() {
synchronized (m_lock) {
m_nodeSelection = true;
@@ -554,6 +557,7 @@
/**
* Disables the ability to select nodes.
*/
+ @Override
public void disableNodeSelection() {
final long[] unselectedNodes;
@@ -590,6 +594,7 @@
/**
* Enables the ability to select edges.
*/
+ @Override
public void enableEdgeSelection() {
synchronized (m_lock) {
m_edgeSelection = true;
@@ -599,6 +604,7 @@
/**
* Disables the ability to select edges.
*/
+ @Override
public void disableEdgeSelection() {
final long[] unselectedEdges;
@@ -636,6 +642,7 @@
*
* @return An array of selected node indices.
*/
+ @Override
public long[] getSelectedNodeIndices() {
synchronized (m_lock) {
// all nodes from the btree
@@ -657,6 +664,7 @@
*
* @return A list of selected node objects.
*/
+ @Override
public List<CyNode> getSelectedNodes() {
synchronized (m_lock) {
// all nodes from the btree
@@ -677,6 +685,7 @@
*
* @return An array of selected edge indices.
*/
+ @Override
public long[] getSelectedEdgeIndices() {
synchronized (m_lock) {
final LongEnumerator elms =
m_selectedEdges.searchRange(Integer.MIN_VALUE, Integer.MAX_VALUE, false);
@@ -694,6 +703,7 @@
*
* @return A list of selected edge objects.
*/
+ @Override
public List<CyEdge> getSelectedEdges() {
synchronized (m_lock) {
final LongEnumerator elms =
m_selectedEdges.searchRange(Integer.MIN_VALUE, Integer.MAX_VALUE, false);
@@ -713,6 +723,7 @@
* @param l
* GraphViewChangeListener to be added to the list.
*/
+ @Override
public void addGraphViewChangeListener(GraphViewChangeListener l) {
m_lis[0] = GraphViewChangeListenerChain.add(m_lis[0], l);
}
@@ -724,6 +735,7 @@
* @param l
* GraphViewChangeListener to be removed from the list.
*/
+ @Override
public void removeGraphViewChangeListener(GraphViewChangeListener l) {
m_lis[0] = GraphViewChangeListenerChain.remove(m_lis[0], l);
}
@@ -734,6 +746,7 @@
* @param paint
* The Paint (color) to apply to the background.
*/
+ @Override
public void setBackgroundPaint(Paint paint) {
synchronized (m_lock) {
if (paint instanceof Color) {
@@ -750,6 +763,7 @@
*
* @return The background color on the canvas.
*/
+ @Override
public Paint getBackgroundPaint() {
return m_backgroundCanvas.getBackground();
}
@@ -760,6 +774,7 @@
*
* @return The InnerCanvas object.
*/
+ @Override
public Component getComponent() {
return m_networkCanvas;
}
@@ -826,6 +841,7 @@
*
* @return The EdgeView that was added.
*/
+ @Override
public EdgeView addEdgeView(final CyEdge edge) {
NodeView sourceNode = null;
NodeView targetNode = null;
@@ -890,6 +906,7 @@
*
* @return The NodeView object that was removed.
*/
+ @Override
public NodeView removeNodeView(NodeView nodeView) {
return removeNodeView(nodeView.getGraphPerspectiveIndex());
}
@@ -902,6 +919,7 @@
*
* @return The NodeView object that was removed.
*/
+ @Override
public NodeView removeNodeView(CyNode node) {
return removeNodeView(node.getSUID());
}
@@ -914,6 +932,7 @@
*
* @return The NodeView object that was removed.
*/
+ @Override
public NodeView removeNodeView(long nodeInx) {
final List<CyEdge> hiddenEdgeInx;
final DNodeView returnThis;
@@ -972,6 +991,7 @@
*
* @return The EdgeView that was removed.
*/
+ @Override
public EdgeView removeEdgeView(EdgeView edgeView) {
return removeEdgeView(edgeView.getRootGraphIndex());
}
@@ -984,6 +1004,7 @@
*
* @return The EdgeView that was removed.
*/
+ @Override
public EdgeView removeEdgeView(CyEdge edge) {
return removeEdgeView(edge.getSUID());
}
@@ -996,6 +1017,7 @@
*
* @return The EdgeView that was removed.
*/
+ @Override
public EdgeView removeEdgeView(long edgeInx) {
final DEdgeView returnThis;
final CyEdge edge;
@@ -1038,30 +1060,17 @@
return returnThis;
}
- /**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
+ @Override
public Long getIdentifier() {
return m_identifier;
}
- /**
- * DOCUMENT ME!
- *
- * @param id
- * DOCUMENT ME!
- */
+ @Override
public void setIdentifier(Long id) {
m_identifier = id;
}
- /**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
+ @Override
public double getZoom() {
return m_networkCanvas.m_scaleFactor;
}
@@ -1086,13 +1095,11 @@
/**
* Set the zoom level and redraw the view.
*/
+ @Override
public void setZoom(final double zoom) {
setZoom(zoom, /* updateView = */ true);
}
- /**
- * DOCUMENT ME!
- */
private void fitContent(final boolean updateView) {
cyEventHelper.flushPayloadEvents();
@@ -1142,6 +1149,7 @@
/**
* Resize the network view to the size of the canvas and redraw it.
*/
+ @Override
public void fitContent() {
fitContent(/* updateView = */ true);
}
@@ -1177,6 +1185,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public Iterator<NodeView> getNodeViewsIterator() {
synchronized (m_lock) {
return m_nodeViewMap.values().iterator();
@@ -1189,6 +1198,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public int getNodeViewCount() {
synchronized (m_lock) {
return m_nodeViewMap.size();
@@ -1201,13 +1211,13 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public int getEdgeViewCount() {
synchronized (m_lock) {
return m_edgeViewMap.size();
}
}
-
@Override
public DNodeView getDNodeView(final CyNode node) {
synchronized (m_lock) {
@@ -1248,6 +1258,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public List<EdgeView> getEdgeViewsList(CyNode oneNode, CyNode
otherNode) {
synchronized (m_lock) {
List<CyEdge> edges =
model.getConnectingEdgeList(oneNode,
@@ -1284,6 +1295,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public List<EdgeView> getEdgeViewsList(long oneNodeInx, long
otherNodeInx,
boolean includeUndirected) {
CyNode n1;
@@ -1436,6 +1448,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public boolean showGraphObject(Object obj) {
return showGraphObjectInternal(obj, true);
}
@@ -1554,6 +1567,7 @@
*
* @return DOCUMENT ME!
*/
+ @Override
public boolean showGraphObjects(List<? extends GraphViewObject>
objects) {
final Iterator<? extends GraphViewObject> it =
objects.iterator();
@@ -1565,6 +1579,7 @@
// Auxiliary methods specific to this GraphView implementation:
+ @Override
public void setCenter(double x, double y) {
synchronized (m_lock) {
m_networkCanvas.m_xCenter = x;
@@ -1708,7 +1723,6 @@
return m_networkCanvas.m_lod[0];
}
-
@Override
public void setPrintingTextAsShape(boolean textAsShape) {
synchronized (m_lock) {
@@ -1847,6 +1861,7 @@
* @param coords
* DOCUMENT ME!
*/
+ @Override
public void xformComponentToNodeCoords(double[] coords) {
synchronized (m_lock) {
m_networkCanvas.m_grafx.xformImageToNodeCoords(coords);
@@ -2125,6 +2140,7 @@
* DOCUMENT ME!
* @return DOCUMENT ME!
*/
+ @Override
public EdgeView getPickedEdgeView(Point2D pt) {
EdgeView ev = null;
final LongStack edgeStack = new LongStack();
@@ -2200,7 +2216,6 @@
return true;
}
-
/**
* DOCUMENT ME!
*
@@ -2217,6 +2232,7 @@
/**
* This method is used by freehep lib to export network as graphics.
*/
+ @Override
public void print(Graphics g) {
m_backgroundCanvas.print(g);
m_networkCanvas.print(g);
@@ -2227,6 +2243,7 @@
* This method is used by BitmapExporter to export network as graphics
(png,
* jpg, bmp)
*/
+ @Override
public void printNoImposter(Graphics g) {
m_backgroundCanvas.print(g);
m_networkCanvas.printNoImposter(g);
@@ -2246,6 +2263,7 @@
* @param height
* int
*/
+ @Override
public void setBounds(int x, int y, int width, int height) {
// call reshape on each canvas
m_backgroundCanvas.setBounds(x, y, width, height);
@@ -2253,34 +2271,42 @@
m_foregroundCanvas.setBounds(x, y, width, height);
}
+ @Override
public void setSize(Dimension d) {
m_networkCanvas.setSize(d);
}
+ @Override
public Container getContainer(JLayeredPane jlp) {
return new InternalFrameComponent(jlp, this);
}
+ @Override
public void addMouseListener(MouseListener m) {
m_networkCanvas.addMouseListener(m);
}
+ @Override
public void addMouseMotionListener(MouseMotionListener m) {
m_networkCanvas.addMouseMotionListener(m);
}
+ @Override
public void addKeyListener(KeyListener k) {
m_networkCanvas.addKeyListener(k);
}
+ @Override
public void removeMouseListener(MouseListener m) {
m_networkCanvas.removeMouseListener(m);
}
+ @Override
public void removeMouseMotionListener(MouseMotionListener m) {
m_networkCanvas.removeMouseMotionListener(m);
}
+ @Override
public void removeKeyListener(KeyListener k) {
m_networkCanvas.removeKeyListener(k);
}
@@ -2307,18 +2333,16 @@
return l;
}
-
+ @Override
public Printable createPrintable() {
return this;
}
-
@Override
public Properties getProperties() {
return this.props;
}
-
/**
* Common API for all rendering engines.
*/
@@ -2326,10 +2350,12 @@
return createImage(width, height, 1, true);
}
+ @Override
public VisualLexicon getVisualLexicon() {
return this.dingLexicon;
}
+ @Override
public CyNetworkView getViewModel() {
return this;
}
@@ -2363,7 +2389,6 @@
return texturePaint;
}
-
/**
* Converts a BufferedImage to a lossless PNG.
*/
@@ -2395,8 +2420,6 @@
/**
* Listener for update flag of snapshot image.
- *
- *
*/
private final class DGraphViewContentChangeListener implements
ContentChangeListener {
public void contentChanged() {
@@ -2522,12 +2545,10 @@
}
@Override
- public <T, V extends T> void setVisualProperty(final VisualProperty<?
extends T> vpOriginal, final V value) {
+ protected <T, V extends T> void applyVisualProperty(final
VisualProperty<? extends T> vp, V value) {
if (value == null)
return;
- final VisualProperty<?> vp = vpOriginal;
-
if (vp == DVisualLexicon.NETWORK_NODE_SELECTION) {
boolean b = ((Boolean) value).booleanValue();
if (b)
@@ -2553,13 +2574,10 @@
} else if (vp == BasicVisualLexicon.NETWORK_SCALE_FACTOR) {
setZoom(((Double) value).doubleValue());
}
-
- visualProperties.put(vp, value);
}
@Override
public <T> T getVisualProperty(final VisualProperty<T> vp) {
-
Object value = null;
if (vp == DVisualLexicon.NETWORK_NODE_SELECTION) {
@@ -2589,23 +2607,19 @@
return (View<CyNode>) getDNodeView(node.getSUID());
}
-
@Override
public View<CyEdge> getEdgeView(final CyEdge edge) {
return (View<CyEdge>) getDEdgeView(edge.getSUID());
}
-
@Override
public void handleEvent(FitSelectedEvent e) {
if (e.getSource().equals(this)) {
logger.info("Fit Selected Called by event.");
fitSelected();
}
-
}
-
@Override
public void handleEvent(FitContentEvent e) {
if (e.getSource().equals(this)) {
@@ -2614,12 +2628,12 @@
}
}
-
@Override
public <T, V extends T> void setViewDefault(VisualProperty<? extends T>
vp, V defaultValue) {
final Class<?> targetType = vp.getTargetDataType();
- // Filter some special cases here: In DING, there is no default
W, H, and D. Also, Custm Graphics should be applied for each view.
+ // Filter some special cases here: In DING, there is no default
W, H, and D.
+ // Also, custom Graphics should be applied for each view.
if (vp == BasicVisualLexicon.NODE_SIZE || vp ==
BasicVisualLexicon.NODE_WIDTH
|| vp == BasicVisualLexicon.NODE_HEIGHT) {
applyToAll(vp, defaultValue);
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DNodeView.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DNodeView.java
2012-05-08 02:18:51 UTC (rev 29143)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DNodeView.java
2012-05-08 17:37:39 UTC (rev 29144)
@@ -1146,11 +1146,9 @@
return newCg;
}
-
+
@Override
- public <T, V extends T> void setVisualProperty(final VisualProperty<?
extends T> vpOriginal, V value) {
-
- VisualProperty<?> vp = vpOriginal;
+ protected <T, V extends T> void applyVisualProperty(final
VisualProperty<? extends T> vp, V value) {
// Null means set value to VP's default.
if(value == null)
value = (V) vp.getDefault();
@@ -1233,7 +1231,6 @@
} else if (vp instanceof ObjectPositionVisualProperty) {
applyCustomGraphicsPosition(vp, (ObjectPosition) value);
}
- visualProperties.put(vp, value);
}
private void applyCustomGraphics(final VisualProperty<?> vp, final
CyCustomGraphics<CustomGraphic> customGraphics) {
--
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.