Author: scooter
Date: 2012-06-14 16:51:02 -0700 (Thu, 14 Jun 2012)
New Revision: 29576

Modified:
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/ArbitraryGraphicsCanvas.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/AbstractAnnotation.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/ArrowAnnotationImpl.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/api/Annotation.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ArrowAnnotationDialog.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/BoundedTextAnnotationDialog.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ShapeAnnotationDialog.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/TextAnnotationDialog.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseListener.java
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/tasks/LayerAnnotationTask.java
Log:
Bug fixes


Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/ArbitraryGraphicsCanvas.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/ArbitraryGraphicsCanvas.java
        2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/ArbitraryGraphicsCanvas.java
        2012-06-14 23:51:02 UTC (rev 29576)
@@ -41,6 +41,9 @@
 import java.awt.geom.AffineTransform;
 import java.awt.image.BufferedImage;
 import java.awt.image.VolatileImage;
+
+import java.util.Arrays;
+import java.util.Comparator;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -241,6 +244,7 @@
 
                // get list of child components
                Component[] components = getComponents();
+               zSort(components); // Since we're doing this because we're 
doing the draw on our own
 
                // no components, outta here
                if (components.length == 0)
@@ -284,12 +288,6 @@
 
                        // now paint children
                        if (m_isVisible){
-                               /*
-                               int num=this.getComponentCount();
-                               for(int i=0;i<num;i++){
-                                       this.getComponent(i).paint(image2D);
-                               }
-                               */
                                this.paintChildren(image2D);
                        }
                        image2D.dispose();
@@ -386,4 +384,26 @@
                if (lis != null)
                        lis.contentChanged();
        }
+
+       // Sort the components by z order
+       private void zSort(Component[] components) {
+               Arrays.sort(components, new ZComparator());
+               return;
+       }
+
+       class ZComparator implements Comparator<Component> {
+               public int compare(Component o1, Component o2) {
+                       if (getComponentZOrder(o1) > getComponentZOrder(o2))
+                               return -1;
+                       else if (getComponentZOrder(o1) < 
getComponentZOrder(o2))
+                               return 1;
+                       else
+                               return 0;
+               }
+
+               public boolean equals(Component o1, Component o2) {
+                       return (getComponentZOrder(o1) == 
getComponentZOrder(o2));
+               }
+       }
+
 }

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/AbstractAnnotation.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/AbstractAnnotation.java
     2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/AbstractAnnotation.java
     2012-06-14 23:51:02 UTC (rev 29576)
@@ -177,6 +177,7 @@
        @Override
        public void addComponent(JComponent cnvs) {
                if (cnvs == null && canvas != null) {
+
                } else if (cnvs == null) {
                        setCanvas(FOREGROUND);
                } else {

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/ArrowAnnotationImpl.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/ArrowAnnotationImpl.java
    2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/ArrowAnnotationImpl.java
    2012-06-14 23:51:02 UTC (rev 29576)
@@ -353,6 +353,12 @@
                }
        }
 
+       @Override
+       public void update() {
+               updateBounds();
+               super.update();
+       }
+
        public void setSize(double width, double height) {
                shapeWidth = width;
                shapeHeight = height;

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
     2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/TextAnnotationImpl.java
     2012-06-14 23:51:02 UTC (rev 29576)
@@ -179,8 +179,7 @@
                int yLoc = (int)(y*scaleFactor + halfHeight);
 
                g2.setFont(tFont);
-               // g2.drawString(text, xLoc, yLoc);
-               g2.drawString(text, (int)x, (int)y);
+               g2.drawString(text, xLoc, yLoc);
        }
 
        public Rectangle getBounds() {
@@ -202,7 +201,6 @@
                        return;
                }
 
-               // g2.drawString(text, getX()+halfWidth, getY()+halfHeight);
                g2.drawString(text, halfWidth, halfHeight);
 
                if(isSelected()) {

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/api/Annotation.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/api/Annotation.java
     2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/api/Annotation.java
     2012-06-14 23:51:02 UTC (rev 29576)
@@ -58,6 +58,7 @@
        public void setUsedForPreviews(boolean v);
 
        public void update();
+       public void contentChanged();
 
        public JFrame getModifyDialog();
 

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ArrowAnnotationDialog.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ArrowAnnotationDialog.java
      2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ArrowAnnotationDialog.java
      2012-06-14 23:51:02 UTC (rev 29576)
@@ -123,14 +123,13 @@
                        return;
                }
 
-               // 
mAnnotation.getComponent().setLocation((int)startingLocation.getX(), 
(int)startingLocation.getY());
                mAnnotation.addComponent(null);
+               mAnnotation.setSource(this.source);
+               mAnnotation.update();
 
                // Update the canvas
                view.getCanvas(DGraphView.Canvas.FOREGROUND_CANVAS).repaint();
 
-               mAnnotation.setSource(this.source);
-
                // Set this shape to be resized
                cyAnnotator.positionArrow(mAnnotation);
 

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/BoundedTextAnnotationDialog.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/BoundedTextAnnotationDialog.java
        2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/BoundedTextAnnotationDialog.java
        2012-06-14 23:51:02 UTC (rev 29576)
@@ -131,6 +131,7 @@
 
                
mAnnotation.getComponent().setLocation((int)startingLocation.getX(), 
(int)startingLocation.getY());
                mAnnotation.addComponent(null);
+               mAnnotation.update();
 
                // Update the canvas
                view.getCanvas(DGraphView.Canvas.FOREGROUND_CANVAS).repaint();

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ShapeAnnotationDialog.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ShapeAnnotationDialog.java
      2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/ShapeAnnotationDialog.java
      2012-06-14 23:51:02 UTC (rev 29576)
@@ -118,6 +118,7 @@
 
                
mAnnotation.getComponent().setLocation((int)startingLocation.getX(), 
(int)startingLocation.getY());
                mAnnotation.addComponent(null);
+               mAnnotation.update();
 
                // Update the canvas
                view.getCanvas(DGraphView.Canvas.FOREGROUND_CANVAS).repaint();

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/TextAnnotationDialog.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/TextAnnotationDialog.java
       2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/dialogs/TextAnnotationDialog.java
       2012-06-14 23:51:02 UTC (rev 29576)
@@ -115,7 +115,14 @@
 
                //Apply
                mAnnotation.addComponent(null);
+               
mAnnotation.getComponent().setLocation((int)startingLocation.getX(), 
(int)startingLocation.getY());
 
+               // We need to have bounds or it won't render
+               
mAnnotation.getComponent().setBounds(mAnnotation.getComponent().getBounds());
+
+               mAnnotation.update();
+               mAnnotation.contentChanged();
+
                // Update the canvas
                view.getCanvas(DGraphView.Canvas.FOREGROUND_CANVAS).repaint();
        }

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseListener.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseListener.java
      2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseListener.java
      2012-06-14 23:51:02 UTC (rev 29576)
@@ -33,21 +33,23 @@
        public void mouseClicked(MouseEvent e) {
                // Check to see if we're resizing
                if (cyAnnotator.getResizeShape() != null) {
+                       cyAnnotator.getResizeShape().contentChanged();
                        cyAnnotator.resizeShape(null);
                        return;
                }
 
                if (cyAnnotator.getRepositioningArrow() != null) {
+                       cyAnnotator.getRepositioningArrow().contentChanged();
                        cyAnnotator.positionArrow(null);
                        return;
                }
 
                if (cyAnnotator.getMovingAnnotation() != null) {
+                       cyAnnotator.getMovingAnnotation().contentChanged();
                        cyAnnotator.moveAnnotation(null);
                        return;
                }
 
-
                Annotation annotation = cyAnnotator.getAnnotationAt(new 
Point(e.getX(), e.getY()));
                if (annotation == null) {
                        cyAnnotator.clearSelectedAnnotations();

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/tasks/LayerAnnotationTask.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/tasks/LayerAnnotationTask.java
  2012-06-14 23:20:08 UTC (rev 29575)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/tasks/LayerAnnotationTask.java
  2012-06-14 23:51:02 UTC (rev 29576)
@@ -37,5 +37,6 @@
                JComponent canvas = annotation.getCanvas();
                canvas.setComponentZOrder(annotation.getComponent(), zorder);
                canvas.repaint();
+               annotation.contentChanged(); // We need to do this to update 
the Bird's Eye 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.

Reply via email to