ChaseCamera : added a hideCursorOnRotate flag to the chaseCam to prevent interfering with nifty.

See forum post
http://jmonkeyengine.org/groups/gui/forum/topic/nifty-window-not-accepting-input-after-clicking-into-the-scene/?topic_page=3&num=15#post-189063

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9697 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
3.0
rem..om 12 years ago
parent 5c9afd9d59
commit e253546982
  1. 31
      engine/src/core/com/jme3/input/ChaseCamera.java

@ -108,6 +108,7 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control {
protected final static String ChaseCamMoveRight = "ChaseCamMoveRight"; protected final static String ChaseCamMoveRight = "ChaseCamMoveRight";
protected final static String ChaseCamToggleRotate = "ChaseCamToggleRotate"; protected final static String ChaseCamToggleRotate = "ChaseCamToggleRotate";
protected boolean zoomin; protected boolean zoomin;
protected boolean hideCursorOnRotate = true;
/** /**
* Constructs the chase camera * Constructs the chase camera
@ -158,10 +159,14 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control {
if (name.equals(ChaseCamToggleRotate) && enabled) { if (name.equals(ChaseCamToggleRotate) && enabled) {
if (keyPressed) { if (keyPressed) {
canRotate = true; canRotate = true;
inputManager.setCursorVisible(false); if (hideCursorOnRotate) {
inputManager.setCursorVisible(false);
}
} else { } else {
canRotate = false; canRotate = false;
inputManager.setCursorVisible(true); if (hideCursorOnRotate) {
inputManager.setCursorVisible(true);
}
} }
} }
} }
@ -217,10 +222,10 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control {
} }
inputManager.addMapping(ChaseCamZoomIn, new MouseAxisTrigger(MouseInput.AXIS_WHEEL, false)); inputManager.addMapping(ChaseCamZoomIn, new MouseAxisTrigger(MouseInput.AXIS_WHEEL, false));
inputManager.addMapping(ChaseCamZoomOut, new MouseAxisTrigger(MouseInput.AXIS_WHEEL, true)); inputManager.addMapping(ChaseCamZoomOut, new MouseAxisTrigger(MouseInput.AXIS_WHEEL, true));
if(!invertXaxis){ if (!invertXaxis) {
inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, true)); inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, true));
inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, false)); inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, false));
}else{ } else {
inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, false)); inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, false));
inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, true)); inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, true));
} }
@ -862,18 +867,26 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control {
* Sets the up vector of the camera used for the lookAt on the target * Sets the up vector of the camera used for the lookAt on the target
* @param up * @param up
*/ */
public void setUpVector(Vector3f up){ public void setUpVector(Vector3f up) {
initialUpVec=up; initialUpVec = up;
} }
/** /**
* Returns the up vector of the camera used for the lookAt on the target * Returns the up vector of the camera used for the lookAt on the target
* @return * @return
*/ */
public Vector3f getUpVector(){ public Vector3f getUpVector() {
return initialUpVec; return initialUpVec;
} }
public boolean isHideCursorOnRotate() {
return hideCursorOnRotate;
}
public void setHideCursorOnRotate(boolean hideCursorOnRotate) {
this.hideCursorOnRotate = hideCursorOnRotate;
}
/** /**
* invert the vertical axis movement of the mouse * invert the vertical axis movement of the mouse
* @param invertYaxis * @param invertYaxis
@ -900,10 +913,10 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control {
this.invertXaxis = invertXaxis; this.invertXaxis = invertXaxis;
inputManager.deleteMapping(ChaseCamMoveLeft); inputManager.deleteMapping(ChaseCamMoveLeft);
inputManager.deleteMapping(ChaseCamMoveRight); inputManager.deleteMapping(ChaseCamMoveRight);
if(!invertXaxis){ if (!invertXaxis) {
inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, true)); inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, true));
inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, false)); inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, false));
}else{ } else {
inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, false)); inputManager.addMapping(ChaseCamMoveLeft, new MouseAxisTrigger(MouseInput.AXIS_X, false));
inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, true)); inputManager.addMapping(ChaseCamMoveRight, new MouseAxisTrigger(MouseInput.AXIS_X, true));
} }

Loading…
Cancel
Save