Author: scooter
Date: 2012-07-31 09:55:24 -0700 (Tue, 31 Jul 2012)
New Revision: 30048
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/CyAnnotator.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasKeyListener.java
Log:
Fix key listeners and listen for VK_ESCAPE to terminate move and resize modes
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/CyAnnotator.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/CyAnnotator.java
2012-07-31 00:28:17 UTC (rev 30047)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/CyAnnotator.java
2012-07-31 16:55:24 UTC (rev 30048)
@@ -232,9 +232,10 @@
}
public void setSelectedAnnotation(Annotation a, boolean selected) {
- if (selected)
+ if (selected) {
+ a.getCanvas().requestFocusInWindow();
selectedAnnotations.add(a);
- else
+ } else
selectedAnnotations.remove(a);
}
@@ -259,6 +260,8 @@
public void resizeShape(ShapeAnnotation shape) {
resizing = shape;
+ if (resizing != null)
+ resizing.getCanvas().requestFocusInWindow();
}
public ShapeAnnotation getResizeShape() {
@@ -267,6 +270,8 @@
public void positionArrow(ArrowAnnotation arrow) {
repositioning = arrow;
+ if (repositioning != null)
+ repositioning.getCanvas().requestFocusInWindow();
}
public ArrowAnnotation getRepositioningArrow() {
@@ -279,6 +284,8 @@
public void moveAnnotation(Annotation annotation) {
moving = annotation;
+ if (moving != null)
+ moving.getCanvas().requestFocusInWindow();
}
public Annotation getMovingAnnotation() {
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasKeyListener.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasKeyListener.java
2012-07-31 00:28:17 UTC (rev 30047)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/impl/cyannotator/listeners/CanvasKeyListener.java
2012-07-31 16:55:24 UTC (rev 30048)
@@ -70,9 +70,27 @@
annotation.update();
annotation.getCanvas().repaint();
}
- } else {
- networkCanvas.keyPressed(e);
+ return;
+ } else if (code == KeyEvent.VK_ESCAPE) {
+ 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;
+ }
}
+ networkCanvas.keyPressed(e);
}
public void keyReleased(KeyEvent e) { }
--
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.