Author: kono
Date: 2011-10-11 13:35:33 -0700 (Tue, 11 Oct 2011)
New Revision: 27127
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeDetails.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/EdgeViewDefaultSupport.java
Log:
refs #395 Edge VP problems mostly fixed.
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeDetails.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeDetails.java
2011-10-11 19:50:59 UTC (rev 27126)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeDetails.java
2011-10-11 20:35:33 UTC (rev 27127)
@@ -32,11 +32,15 @@
import java.awt.Font;
import java.awt.Paint;
import java.awt.Stroke;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
+import org.cytoscape.ding.impl.strokes.WidthStroke;
+import org.cytoscape.model.CyEdge;
import org.cytoscape.util.intr.IntObjHash;
import org.cytoscape.util.intr.MinIntHeap;
+import org.cytoscape.view.model.View;
class DEdgeDetails extends IntermediateEdgeDetails {
@@ -85,6 +89,13 @@
DEdgeDetails(final DGraphView view) {
m_view = view;
}
+
+ void clear() {
+ Collection<View<CyEdge>> edgeViews = m_view.getEdgeViews();
+ for(View<CyEdge> edgeView: edgeViews){
+ unregisterEdge(edgeView.getModel().getIndex());
+ }
+ }
void unregisterEdge(final int edgeIdx) {
final Object colorDetail = m_colorsLowDetail.get(edgeIdx);
@@ -265,6 +276,9 @@
else
return m_segmentThicknessDefault;
+
+ System.out.println(edge + ": Path width in renderer = " +
thickness);
+
return thickness;
}
@@ -290,12 +304,16 @@
@Override
public Stroke segmentStroke(final int edge) {
final Stroke stroke = m_segmentStrokes.get(edge);
+
if (stroke == null)
if ( m_segmentStrokeDefault == null )
return super.segmentStroke(edge);
else
return m_segmentStrokeDefault;
+ if(stroke instanceof WidthStroke)
+ System.out.println("Segment Stroke called: Stroke width
= " + stroke.toString());
+
return stroke;
}
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
2011-10-11 19:50:59 UTC (rev 27126)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DEdgeView.java
2011-10-11 20:35:33 UTC (rev 27127)
@@ -1411,14 +1411,20 @@
} else if (vp == DVisualLexicon.EDGE_WIDTH) {
final float currentWidth = this.getStrokeWidth();
+
+
System.out.println(this.getEdgeView().getModel().getSUID() + " EW before = " +
currentWidth);
+
+
final float newWidth = ((Number) value).floatValue();
if(currentWidth != newWidth) {
setStrokeWidth(newWidth);
setStroke(DLineType.getDLineType(lineType).getStroke(newWidth));
}
+
+ System.out.println("EW After = " + getStrokeWidth());
} else if (vp == DVisualLexicon.EDGE_LINE_TYPE) {
- if(lineType == value)
- return;
+// if(lineType == value)
+// return;
lineType = (LineType) value;
final Stroke newStroke =
DLineType.getDLineType(lineType).getStroke(getStrokeWidth());
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
2011-10-11 19:50:59 UTC (rev 27126)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/DGraphView.java
2011-10-11 20:35:33 UTC (rev 27127)
@@ -2978,8 +2978,10 @@
if(targetType == CyNode.class)
m_nodeViewDefaultSupport.setNodeViewDefault(vp,defaultValue);
- else if(targetType == CyEdge.class)
+ else if(targetType == CyEdge.class) {
+ this.m_edgeDetails.clear();
m_edgeViewDefaultSupport.setEdgeViewDefault(vp,defaultValue);
+ }
}
private <T, V extends T> void applyToAll(VisualProperty<? extends T>
vp, final V defaultValue) {
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/EdgeViewDefaultSupport.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/EdgeViewDefaultSupport.java
2011-10-11 19:50:59 UTC (rev 27126)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/EdgeViewDefaultSupport.java
2011-10-11 20:35:33 UTC (rev 27127)
@@ -71,8 +71,9 @@
setTargetEdgeEndPaint((Paint) value);
setUnselectedPaint((Paint) value);
} else if (vp == DVisualLexicon.EDGE_WIDTH) {
- final float newWidth = ((Number) value).floatValue();
+ final float newWidth = ((Number) value).floatValue();
if(strokeWidth != newWidth) {
+ strokeWidth = newWidth;
setStrokeWidth(newWidth);
setStroke(DLineType.getDLineType(lineType).getStroke(newWidth));
}
--
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.