[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire/org/fenfire/util ControlBinding.java
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] fenfire/org/fenfire/util ControlBinding.java |
Date: |
Sat, 02 Aug 2003 04:29:55 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Branch:
Changes by: Tuomas J. Lukka <address@hidden> 03/08/02 04:29:54
Modified files:
org/fenfire/util: ControlBinding.java
Log message:
Compiles
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/ControlBinding.java.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
Patches:
Index: fenfire/org/fenfire/util/ControlBinding.java
diff -u fenfire/org/fenfire/util/ControlBinding.java:1.11
fenfire/org/fenfire/util/ControlBinding.java:1.12
--- fenfire/org/fenfire/util/ControlBinding.java:1.11 Sat Aug 2 04:21:47 2003
+++ fenfire/org/fenfire/util/ControlBinding.java Sat Aug 2 04:29:54 2003
@@ -26,6 +26,7 @@
package org.fenfire.util;
import org.nongnu.libvob.VobScene;
+import org.nongnu.libvob.VobMouseEvent;
import java.awt.event.*;
import java.util.*;
@@ -59,7 +60,7 @@
// -- Methods to handle events wisely.
- private MouseEvent pressState = null;
+ private VobMouseEvent pressState = null;
public void removePressState() {
pressState = null;
lastEvent = null;
@@ -67,7 +68,7 @@
}
public boolean hasPressState() { return pressState!=null; }
- public void setPressStateByForce(MouseEvent event) {
+ public void setPressStateByForce(VobMouseEvent event) {
pressState = event;
}
@@ -76,15 +77,15 @@
private Object accursedObj = null;
// for keeping change of dragging.
- private MouseEvent lastEvent;
- public boolean handleEvent(Object forObject, MouseEvent event,
+ private VobMouseEvent lastEvent;
+ public boolean handleEvent(Object forObject, VobMouseEvent event,
VobScene oldVS) {
if (accursedObj == null)
accursedObj = forObject;
if (forObject == null) throw new Error("Object is null!");
Object object = forObject;
- if (event.getID() == event.MOUSE_PRESSED) {
+ if (event.getType() == event.MOUSE_PRESSED) {
pressState = event;
return FAST;
}
@@ -105,7 +106,7 @@
float x = event.getX();
float y = event.getY();
- if (event.getID() == event.MOUSE_WHEEL) {
+ if (event.getType() == event.MOUSE_WHEEL) {
if (dbg) p("It's wheel!");
for (int i=0; i<wheels.size(); i++) {
Event e = (Event)wheels.get(i);
@@ -113,10 +114,9 @@
c.set(object, oldVS);
float scale = e.scale;
if (e.invert) scale *=-1;
- MouseWheelEvent ev = (MouseWheelEvent)event;
if (c.isChangeable()) {
- x = - ev.getWheelRotation()*scale;
- y = - ev.getWheelRotation()*scale;
+ x = - event.getWheelDelta()*scale;
+ y = - event.getWheelDelta()*scale;
if (e.dir == null) c.change(x,y);
else if (e.dir == HORIZONTAL) c.change(x,0);
else if (e.dir == VERTICAL) c.change(0,y);
@@ -128,12 +128,12 @@
}
}
- if (event.getID() == event.MOUSE_CLICKED) {
+ if (event.getType() == event.MOUSE_CLICKED) {
if (dbg) p("It's click!");
for (int i=0; i<clicks.size(); i++) {
Event e = (Event)clicks.get(i);
Controller c = (Controller)e.obj;
- if (event.getModifiers() == e.mask) {
+ if (e.matches(event)) {
c.set(object, oldVS);
float scale = e.scale;
if (e.invert) scale *=-1;
@@ -153,18 +153,18 @@
if (accursedObj == null) throw new Error("No accursed object!");
object = accursedObj;
boolean ret = FAST;
- if (event.getID() == event.MOUSE_DRAGGED) {
+ if (event.getType() == event.MOUSE_DRAGGED) {
if (dbg) p("It's a drag!");
for (int i=0; i<drags.size(); i++) {
Event e = (Event)drags.get(i);
Controller c = (Controller)e.obj;
- if (dbg) p("event: "+event.getButton()+ ", mask: "+e.mask);
- if (event.getModifiers() == e.mask) {
+ if (dbg) p("event: "+event.getButton()+ ", mask: "+e.button);
+ if (e.matches(event)) {
c.set(object, oldVS);
float scale = e.scale;
if (e.invert) scale *=-1;
if (c.isChangeable()) {
- MouseEvent last;
+ VobMouseEvent last;
if (lastEvent != null) last = lastEvent;
else last = pressState;
@@ -203,51 +203,47 @@
/** For example add(foo, WHEEL);
*/
public void add(Controller controller, Type binding) {
- add(controller, -1, binding, 10, false, VERTICAL);
+ add(controller, -1, 0, binding, 10, false, VERTICAL);
}
/** For example add(foo, 1, CLICK); or
* add(bar, 3, DRAG);
*/
public void add(Controller controller, int button, Type binding) {
- add(controller, button, binding, 1, false, ALL);
+ add(controller, button, 0, binding, 1, false, ALL);
}
public void add(Controller controller, int button,
+ int modifiers,
Type binding, float scale, boolean invert,
Object direction) {
if (binding == WHEEL) {
- wheels.add(new Event(controller, -1, scale, invert, direction));
+ wheels.add(new Event(controller, -1, modifiers,
+ scale, invert, direction));
return;
}
- int mask;
- switch (button) {
- case 1 : mask = MouseEvent.BUTTON1_MASK; break;
- case 2 : mask = MouseEvent.BUTTON2_MASK; break;
- case 3 : mask = MouseEvent.BUTTON3_MASK; break;
- default:
- throw new Error("No button defined '"+button+"'.");
- }
-
+ Event ev = new Event(controller, button, modifiers,
+ scale, invert, direction);
if (binding == CLICK) {
- clicks.add(new Event(controller, mask, scale, invert, direction));
+ clicks.add(ev);
} else if (binding == DRAG) {
- drags.add(new Event(controller, mask, scale, invert, direction));
+ drags.add(ev);
} else throw new Error("Shouldn't be reached.");
}
class Event {
final public Object obj;
- final public int modifiers;
final public int button;
+ final public int modifiers;
final public boolean invert;
final public float scale;
final public Object dir;
- public Event(Object obj, int modifiers, int button,
+ public Event(Object obj, int button, int modifiers,
float scale,
boolean invert, Object direction) {
- this.obj=obj; this.mask=mask; this.invert=invert;
+ this.obj=obj; this.button=button;
+ this.modifiers = modifiers; this.invert=invert;
this.scale=scale; this.dir=direction;
}
public boolean matches(VobMouseEvent event) {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] fenfire/org/fenfire/util ControlBinding.java,
Tuomas J. Lukka <=