Author: mes
Date: 2012-03-09 11:24:36 -0800 (Fri, 09 Mar 2012)
New Revision: 28467

Modified:
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/Handle.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/HandleImpl.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
Log:
tweaked the Handle API to avoid other ding dependencies

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/Handle.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/Handle.java
      2012-03-09 15:55:50 UTC (rev 28466)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/Handle.java
      2012-03-09 19:24:36 UTC (rev 28467)
@@ -2,7 +2,9 @@
 
 import java.awt.geom.Point2D;
 
-import org.cytoscape.ding.impl.DEdgeView;
+import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.model.CyEdge;
 
 
 /**
@@ -14,12 +16,12 @@
        /**
         * Calculate absolute position of this handle for the given edge view.
         * 
-        * @param graphView graph view for this handle
+        * @param netView graph view for this handle
         * @param edgeView The handle belongs to this edge view.
         * 
         * @return Absolute position of this handle in the network view.
         */
-       Point2D calculateHandleLocation(final DEdgeView edgeView);
+       Point2D calculateHandleLocation(final CyNetworkView netView, final 
View<CyEdge> edgeView);
        
        /**
         * Define this handle.  Handle will be described as a relative location 
from source and target node.
@@ -27,12 +29,12 @@
         * NOTE: in the implementation, the given (x, y) values will be 
converted to relative position.
         * The conversion equation is exchangeable.
         * 
-        * @param graphView graph view for this handle
+        * @param netView graph view for this handle
         * @param edgeView The handle belongs to this edge view.
         * @param x Absolute value for X-location.
         * @param y Absolute value for Y-location.
         */
-       void defineHandle(final DEdgeView edgeView, final double x, final 
double y);
+       void defineHandle(final CyNetworkView netView, final View<CyEdge> 
edgeView, final double x, final double y);
        
        /**
         * Create string representation of this object for parsing.

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-03-09 15:55:50 UTC (rev 28466)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
      2012-03-09 19:24:36 UTC (rev 28467)
@@ -359,7 +359,7 @@
                for (int j = 0; j < numHandles; j++) {                  
                        final Bend bend = m_view.m_edgeDetails.bend(model);
                        final Handle handle = bend.getAllHandles().get(j);
-                       final Point2D newPoint = 
handle.calculateHandleLocation(this);
+                       final Point2D newPoint = 
handle.calculateHandleLocation(m_view.getViewModel(),this);
                        m_view.handleLocationBuffer[0] = (float) 
newPoint.getX();
                        m_view.handleLocationBuffer[1] = (float) 
newPoint.getY();
                        
@@ -541,7 +541,7 @@
        protected final void moveHandleInternal(final int inx, double x, double 
y) {
                final Bend bend = m_view.m_edgeDetails.bend(model);
                final Handle handle = bend.getAllHandles().get(inx);
-               handle.defineHandle(this, x, y);
+               handle.defineHandle(m_view.getViewModel(),this, x, y);
 
                if (m_view.m_spacialA.delete((m_inx << 6) | inx))
                        m_view.m_spacialA.insert((m_inx << 6) | inx,
@@ -573,15 +573,15 @@
                        final Point2D sourcePt = 
m_view.getDNodeView(getEdge().getSource()).getOffset();
                        final Point2D targetPt = 
m_view.getDNodeView(getEdge().getTarget()).getOffset();
                        final Handle firstHandle = bend.getAllHandles().get(0); 
-                       final Point2D point = 
firstHandle.calculateHandleLocation(this);
+                       final Point2D point = 
firstHandle.calculateHandleLocation(m_view.getViewModel(),this);
                        double bestDist = (pt.distance(sourcePt) + 
pt.distance(point)) - sourcePt.distance(point);
                        int bestInx = 0;
 
                        for (int i = 1; i < bend.getAllHandles().size(); i++) {
                                final Handle handle1 = 
bend.getAllHandles().get(i);
                                final Handle handle2 = 
bend.getAllHandles().get(i-1);
-                               final Point2D point1 = 
handle1.calculateHandleLocation(this);
-                               final Point2D point2 = 
handle2.calculateHandleLocation(this);
+                               final Point2D point1 = 
handle1.calculateHandleLocation(m_view.getViewModel(),this);
+                               final Point2D point2 = 
handle2.calculateHandleLocation(m_view.getViewModel(),this);
 
                                final double distCand = (pt.distance(point2) + 
pt.distance(point1)) - point1.distance(point2);
 
@@ -593,7 +593,7 @@
 
                        final int lastIndex = bend.getAllHandles().size() - 1;
                        final Handle lastHandle = 
bend.getAllHandles().get(lastIndex);
-                       final Point2D lastPoint = 
lastHandle.calculateHandleLocation(this);
+                       final Point2D lastPoint = 
lastHandle.calculateHandleLocation(m_view.getViewModel(),this);
                        
                        final double lastCand = (pt.distance(targetPt) + 
pt.distance(lastPoint)) - targetPt.distance(lastPoint);
 
@@ -717,7 +717,7 @@
                else
                        handle = bend.getAllHandles().get(anchorIndex/2);
 
-               final Point2D newPoint = handle.calculateHandleLocation(this);
+               final Point2D newPoint = 
handle.calculateHandleLocation(m_view.getViewModel(),this);
                anchorArr[offset] = (float) newPoint.getX();
                anchorArr[offset + 1] = (float) newPoint.getY();
        }

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/HandleImpl.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/HandleImpl.java
     2012-03-09 15:55:50 UTC (rev 28466)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/HandleImpl.java
     2012-03-09 19:24:36 UTC (rev 28467)
@@ -6,7 +6,9 @@
 import org.cytoscape.ding.Handle;
 import org.cytoscape.ding.impl.editor.EditMode;
 import org.cytoscape.model.CyNode;
+import org.cytoscape.model.CyEdge;
 import org.cytoscape.view.model.View;
+import org.cytoscape.view.model.CyNetworkView;
 
 /**
  * A simple implementation of edge handle.
@@ -31,8 +33,7 @@
 
 
        @Override
-       public Point2D calculateHandleLocation(final DEdgeView view) {
-               final DGraphView graphView = (DGraphView) view.getGraphView();
+       public Point2D calculateHandleLocation(final CyNetworkView graphView, 
final View<CyEdge> view) {
                final CyNode source = view.getModel().getSource();
                final CyNode target = view.getModel().getTarget();
                final View<CyNode> sourceView = graphView.getNodeView(source);
@@ -81,14 +82,13 @@
 
        
        @Override
-       public void defineHandle(final DEdgeView view, double x, double y) {
-               final DGraphView graphView = (DGraphView) view.getGraphView();
+       public void defineHandle(final CyNetworkView graphView, final 
View<CyEdge> view, double x, double y) {
                this.x = x;
                this.y = y;
                convertToRatio(graphView, view, new Point2D.Double(x, y));
        }
 
-       private void convertToRatio(DGraphView graphView, DEdgeView view, final 
Point2D absolutePoint) {
+       private void convertToRatio(final CyNetworkView graphView, View<CyEdge> 
view, final Point2D absolutePoint) {
                final CyNode source = view.getModel().getSource();
                final CyNode target = view.getModel().getTarget();
                final View<CyNode> sourceView = graphView.getNodeView(source);

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
    2012-03-09 15:55:50 UTC (rev 28466)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/InnerCanvas.java
    2012-03-09 19:24:36 UTC (rev 28467)
@@ -998,7 +998,7 @@
                                
                                final Bend bend = ev.getBend();
                                final Handle handle = 
bend.getAllHandles().get(anchorInx);
-                               final Point2D newPoint = 
handle.calculateHandleLocation(ev);
+                               final Point2D newPoint = 
handle.calculateHandleLocation(m_view.getViewModel(),ev);
                                m_floatBuff1[0] = (float) newPoint.getX();
                                m_floatBuff1[1] = (float) newPoint.getY();
 
@@ -1343,7 +1343,7 @@
                                                
                                                final Bend bend = ev.getBend();
                                                final Handle handle = 
bend.getAllHandles().get(anchorInx);
-                                               final Point2D newPoint = 
handle.calculateHandleLocation(ev);
+                                               final Point2D newPoint = 
handle.calculateHandleLocation(m_view.getViewModel(),ev);
                                                m_floatBuff1[0] = (float) 
newPoint.getX();
                                                m_floatBuff1[1] = (float) 
newPoint.getY();
                                                

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