Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv25063/src/net/sourceforge/bprocessor/gl/tool
Modified Files:
AbstractTool.java
Log Message:
Control-key activates select-strategy, no intersections. Also removed showing intersections when using the orbit-strategy.
Index: AbstractTool.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/tool/AbstractTool.java,v
retrieving revision 1.101
retrieving revision 1.102
diff -C2 -d -r1.101 -r1.102
*** AbstractTool.java 12 Sep 2006 12:59:40 -0000 1.101
--- AbstractTool.java 5 Oct 2006 13:07:53 -0000 1.102
***************
*** 48,51 ****
--- 48,54 ----
protected boolean cameraMode = false;
+ /** Select is active */
+ protected boolean selectMode = false;
+
/** Pan strategy */
protected static Strategy pan;
***************
*** 102,108 ****
private Cursor orbitCursor;
-
-
-
/**
* KeyListener for the GL Canvas
--- 105,108 ----
***************
*** 202,206 ****
*/
public void keyPressed(KeyEvent e) {
-
Camera c = Project.getInstance().getCurrentCamera();
Vertex up = new Vertex(c.getRoll()[0], c.getRoll()[1], c.getRoll()[2]);
--- 202,205 ----
***************
*** 216,226 ****
glv.setCursor(null);
return;
! }
!
if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
glv.setCursor(null);
return;
! }
!
if (e.getKeyCode() == KeyEvent.VK_SPACE) {
if (!typing) {
--- 215,224 ----
glv.setCursor(null);
return;
! }
if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
+ selectMode = true;
glv.setCursor(null);
return;
! }
if (e.getKeyCode() == KeyEvent.VK_SPACE) {
if (!typing) {
***************
*** 237,242 ****
escape();
return;
! }
!
if (e.getKeyCode() == KeyEvent.VK_UP) {
c.translate(new double[] {up.getX(), up.getY(), up.getZ()});
--- 235,239 ----
escape();
return;
! }
if (e.getKeyCode() == KeyEvent.VK_UP) {
c.translate(new double[] {up.getX(), up.getY(), up.getZ()});
***************
*** 249,254 ****
} else {
key(e);
! }
!
glv.repaint(true);
}
--- 246,250 ----
} else {
key(e);
! }
glv.repaint(true);
}
***************
*** 263,266 ****
--- 259,263 ----
}
if (e.getKeyCode() == KeyEvent.VK_CONTROL) {
+ selectMode = false;
glv.setCursor(cursor);
}
***************
*** 285,292 ****
int x = e.getX();
int y = e.getY();
-
AbstractTool.dx = x - pressPos[0];
AbstractTool.dy = y - pressPos[1];
-
if ((e.getModifiersEx() | MouseEvent.BUTTON2_DOWN_MASK) == MouseEvent.BUTTON2_DOWN_MASK) {
pan.dragged(e);
--- 282,287 ----
***************
*** 294,302 ****
if (cameraMode) {
orbit.dragged(e);
} else {
dragged(e);
}
}
-
previousPos[0] = x;
previousPos[1] = y;
--- 289,298 ----
if (cameraMode) {
orbit.dragged(e);
+ } else if (selectMode) {
+ select.dragged(e);
} else {
dragged(e);
}
}
previousPos[0] = x;
previousPos[1] = y;
***************
*** 311,320 ****
int x = e.getX();
int y = e.getY();
-
dx = x - pressPos[0];
dy = y - pressPos[1];
!
! moved(e);
!
previousPos[0] = x;
previousPos[1] = y;
--- 307,315 ----
int x = e.getX();
int y = e.getY();
dx = x - pressPos[0];
dy = y - pressPos[1];
! if (!(cameraMode || selectMode)) {
! moved(e);
! }
previousPos[0] = x;
previousPos[1] = y;
***************
*** 348,361 ****
*/
public void mousePressed(MouseEvent e) {
-
if (!e.isPopupTrigger()) {
if (e.getButton() == 1) {
! if (e.isMetaDown() || e.isControlDown()) {
select.pressed(e);
return;
}
}
! }
!
pressPos[0] = e.getX();
pressPos[1] = e.getY();
--- 343,354 ----
*/
public void mousePressed(MouseEvent e) {
if (!e.isPopupTrigger()) {
if (e.getButton() == 1) {
! if (selectMode) {
select.pressed(e);
return;
}
}
! }
pressPos[0] = e.getX();
pressPos[1] = e.getY();
***************
*** 385,389 ****
*/
public void mouseReleased(MouseEvent e) {
-
if (e.getButton() == MouseEvent.BUTTON2) {
glv.setCursor(cursor);
--- 378,381 ----
***************
*** 392,395 ****
--- 384,389 ----
if (cameraMode) {
orbit.released(e);
+ } else if (selectMode) {
+ select.released(e);
} else {
released(e);
|