Author: jm
Date: 2012-03-09 12:17:54 -0800 (Fri, 09 Mar 2012)
New Revision: 28468

Added:
   
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableEdgeViewTaskFactory.java
   
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableNodeViewTaskFactory.java
Modified:
   
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/PopupMenuHelper.java
Log:
Fixed linkouts by introducing TunableEdge/NodeViewTaskFactory

Added: 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableEdgeViewTaskFactory.java
===================================================================
--- 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableEdgeViewTaskFactory.java
                                (rev 0)
+++ 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableEdgeViewTaskFactory.java
        2012-03-09 20:17:54 UTC (rev 28468)
@@ -0,0 +1,9 @@
+package org.cytoscape.task;
+
+import org.cytoscape.model.CyEdge;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.View;
+
+public interface TunableEdgeViewTaskFactory<T> extends EdgeViewTaskFactory {
+       T createTunableContext(View<CyEdge> edgeView, CyNetworkView 
networkView);
+}

Added: 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableNodeViewTaskFactory.java
===================================================================
--- 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableNodeViewTaskFactory.java
                                (rev 0)
+++ 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/api/core-task-api/src/main/java/org/cytoscape/task/TunableNodeViewTaskFactory.java
        2012-03-09 20:17:54 UTC (rev 28468)
@@ -0,0 +1,9 @@
+package org.cytoscape.task;
+
+import org.cytoscape.model.CyNode;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.View;
+
+public interface TunableNodeViewTaskFactory<T> extends NodeViewTaskFactory {
+       T createTunableContext(View<CyNode> nodeView, CyNetworkView 
networkView);
+}

Modified: 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/PopupMenuHelper.java
===================================================================
--- 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/PopupMenuHelper.java
  2012-03-09 19:24:36 UTC (rev 28467)
+++ 
csplugins/trunk/toronto/jm/cy3-stateless-taskfactory-alt1/impl/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/PopupMenuHelper.java
  2012-03-09 20:17:54 UTC (rev 28468)
@@ -51,6 +51,7 @@
 import org.cytoscape.task.EdgeViewTaskFactory;
 import org.cytoscape.task.NetworkViewTaskFactory;
 import org.cytoscape.task.NodeViewTaskFactory;
+import org.cytoscape.task.TunableEdgeViewTaskFactory;
 import org.cytoscape.util.swing.GravityTracker;
 import org.cytoscape.util.swing.JMenuTracker;
 import org.cytoscape.view.model.View;
@@ -99,8 +100,12 @@
                                JMenuTracker tracker = new JMenuTracker(menu);
 
                                for ( EdgeViewTaskFactory evtf : usableTFs ) {
+                                       Object context = null;
+                                       if (evtf instanceof 
TunableEdgeViewTaskFactory<?>) {
+                                               context = 
((TunableEdgeViewTaskFactory) evtf).createTunableContext(ev, m_view);
+                                       }
                                        TaskFactory provisioner = 
factoryProvisioner.createFor(evtf, ev, m_view);
-                                       createMenuItem(ev, menu, provisioner, 
null, tracker, m_view.edgeViewTFs.get(evtf) );
+                                       createMenuItem(ev, menu, provisioner, 
context, tracker, m_view.edgeViewTFs.get(evtf) );
                                }
 
                                menu.show(invoker, x, y);
@@ -157,8 +162,12 @@
                                JMenuTracker tracker = new JMenuTracker(menu);
 
                                for ( NodeViewTaskFactory nvtf : usableTFs ) {
+                                       Object context = null;
+                                       if (nvtf instanceof 
TunableEdgeViewTaskFactory<?>) {
+                                               context = 
((TunableEdgeViewTaskFactory) nvtf).createTunableContext(nv, m_view);
+                                       }
                                        TaskFactory provisioner = 
factoryProvisioner.createFor(nvtf, nv, m_view);
-                                       createMenuItem(nv, menu, provisioner, 
null, tracker, m_view.nodeViewTFs.get( nvtf ));
+                                       createMenuItem(nv, menu, provisioner, 
context, tracker, m_view.nodeViewTFs.get( nvtf ));
                                }
 
                                menu.show(invoker, x, y);

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