Author: scooter
Date: 2012-07-29 17:00:52 -0700 (Sun, 29 Jul 2012)
New Revision: 30033

Modified:
   
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.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/listeners/CanvasMouseMotionListener.java
Log:
Fix annotation bugs outlined by UI review


Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
 2012-07-29 23:55:32 UTC (rev 30032)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
 2012-07-30 00:00:52 UTC (rev 30033)
@@ -312,16 +312,17 @@
                LayerAnnotationTaskFactory moveTBAnnotationTaskFactory = new 
LayerAnnotationTaskFactory(10000);
                Properties moveTBAnnotationTaskFactoryProps = new Properties();
                moveTBAnnotationTaskFactoryProps.setProperty(PREFERRED_ACTION, 
"NEW");
-               moveTBAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, 
"3.3");
+               moveTBAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, 
"3.4");
                moveTBAnnotationTaskFactoryProps.setProperty(PREFERRED_MENU, 
NETWORK_EDIT_MENU+".Reorder Annotations[2.2]");
                moveTBAnnotationTaskFactoryProps.setProperty(TITLE, "Move 
Annotation To Back");
+               
moveTBAnnotationTaskFactoryProps.setProperty(INSERT_SEPARATOR_AFTER, "true");
                registerService(bc, moveTBAnnotationTaskFactory, 
NetworkViewLocationTaskFactory.class, 
                                moveTBAnnotationTaskFactoryProps);
 
                ChangeAnnotationCanvasTaskFactory pullAnnotationTaskFactory = 
new ChangeAnnotationCanvasTaskFactory(Annotation.FOREGROUND);
                Properties pullAnnotationTaskFactoryProps = new Properties();
                pullAnnotationTaskFactoryProps.setProperty(PREFERRED_ACTION, 
"NEW");
-               pullAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, "3.3");
+               pullAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, "3.5");
                pullAnnotationTaskFactoryProps.setProperty(PREFERRED_MENU, 
NETWORK_EDIT_MENU+".Reorder Annotations[2.2]");
                pullAnnotationTaskFactoryProps.setProperty(TITLE, "Pull 
Annotation to Foreground Canvas");
                registerService(bc, pullAnnotationTaskFactory, 
NetworkViewLocationTaskFactory.class, 
@@ -330,7 +331,7 @@
                ChangeAnnotationCanvasTaskFactory pushAnnotationTaskFactory = 
new ChangeAnnotationCanvasTaskFactory(Annotation.BACKGROUND);
                Properties pushAnnotationTaskFactoryProps = new Properties();
                pushAnnotationTaskFactoryProps.setProperty(PREFERRED_ACTION, 
"NEW");
-               pushAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, "3.4");
+               pushAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, "3.6");
                pushAnnotationTaskFactoryProps.setProperty(PREFERRED_MENU, 
NETWORK_EDIT_MENU+".Reorder Annotations[2.2]");
                pushAnnotationTaskFactoryProps.setProperty(TITLE, "Push 
Annotation to Background Canvas");
                registerService(bc, pushAnnotationTaskFactory, 
NetworkViewLocationTaskFactory.class, 
@@ -351,7 +352,7 @@
                removeAnnotationTaskFactoryProps.setProperty(PREFERRED_ACTION, 
"NEW");
                removeAnnotationTaskFactoryProps.setProperty(MENU_GRAVITY, 
"1.1");
                removeAnnotationTaskFactoryProps.setProperty(PREFERRED_MENU, 
NETWORK_DELETE_MENU);
-               removeAnnotationTaskFactoryProps.setProperty(TITLE, "Remove 
Annotation");
+               removeAnnotationTaskFactoryProps.setProperty(TITLE, 
"Annotation");
                registerService(bc, removeAnnotationTaskFactory, 
NetworkViewLocationTaskFactory.class, 
                                removeAnnotationTaskFactoryProps);
 

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-07-29 23:55:32 UTC (rev 30032)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/annotations/AbstractAnnotation.java
     2012-07-30 00:00:52 UTC (rev 30033)
@@ -220,6 +220,7 @@
                cyAnnotator.removeAnnotation(this);
                for (ArrowAnnotation arrow: arrowList) 
                        removeAnnotation();
+               canvas.repaint();
        }
 
        public void resizeAnnotation(double width, double height) {};

Modified: 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseMotionListener.java
===================================================================
--- 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseMotionListener.java
        2012-07-29 23:55:32 UTC (rev 30032)
+++ 
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasMouseMotionListener.java
        2012-07-30 00:00:52 UTC (rev 30033)
@@ -54,23 +54,31 @@
                        int cornerX2 = cornerX1 + resizeComponent.getWidth();
                        int cornerY2 = cornerY1 + resizeComponent.getHeight();
 
-                       int width = mouseX-cornerX1;
-                       int height = mouseY-cornerY1;
+                       int width, height;
 
-                       if (width <= 0 || height <= 0) {
-                               if (width <= 0) {
-                                       cornerX1 = cornerX1+width;
-                                       width = cornerX2-cornerX1;
-                               }
-                               if (height <= 0) {
-                                       cornerY1 = cornerY1+height;
-                                       height = cornerY2-cornerY1;
-                               }
-                               resizeComponent.setLocation(cornerX1, cornerY1);
+                       // Figure out which corner we're tracking
+                       if (Math.abs(mouseX-cornerX1) < 
Math.abs(mouseX-cornerX2)) {
+                               // Left
+                               cornerX1 = mouseX;
+                               width = cornerX2-cornerX1;
+                       } else {
+                               // Right
+                               width = mouseX-cornerX1;
                        }
 
+                       if (Math.abs(mouseY-cornerY1) < 
Math.abs(mouseY-cornerY2)) {
+                               // Upper
+                               cornerY1 = mouseY;
+                               height = cornerY2-cornerY1;
+                       } else {
+                               // Lower
+                               height = mouseY-cornerY1;
+                       }
+
                        if (width == 0) width = 2;
                        if (height == 0) height = 2;
+
+                       resizeComponent.setLocation(cornerX1, cornerY1);
                        resizeAnnotation.setSize((double)width, (double)height);
                        resizeAnnotation.update();
                        resizeAnnotation.getCanvas().repaint();

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