This commit is contained in:
Bram Veenboer
2011-02-09 08:23:47 +00:00
parent e3aa2566a5
commit 89d16792ae
33 changed files with 7223 additions and 21 deletions

View File

@@ -5,9 +5,11 @@ import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
import pm.application.Application;
import pm.application.iTunes.iTunesApplicatie;
import pm.application.voorbeeld.VoorbeeldApplication;
import pm.device.Device;
import pm.device.javainput.extreme3d.Extreme3DDevice;
import pm.device.javainput.rumblepad.RumblepadDevice;
import pm.device.jintellitype.JIntellitypeDevice;
import pm.device.wiimote.WiimoteDevice;
import pm.exception.ActionException;
@@ -50,12 +52,13 @@ public class Main {
public void start() throws Exception {
//add(new ExampleDevice());
//add(new RumblepadDevice());
add(new Extreme3DDevice());
add(new RumblepadDevice());
//add(new Extreme3DDevice());
add(new JIntellitypeDevice());
add(new WiimoteDevice());
//add(new WiimoteDevice());
Application application = new VoorbeeldApplication();
application = new iTunesApplicatie();
add(application);
for (Device device : deviceList) {

View File

@@ -6,11 +6,11 @@ import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
public class iTunes extends Application{
public class iTunesApplicatie extends Application{
Dispatch iTunesController;
public iTunes() {
public iTunesApplicatie() {
connect();
}
@@ -44,7 +44,7 @@ public class iTunes extends Application{
}
public static void main(String argv[]) throws Exception {
new iTunes();
new iTunesApplicatie();
}
}

View File

@@ -8,12 +8,9 @@ import de.hardcode.jxinput.event.JXInputDirectionalEvent;
import pm.Button;
import pm.device.Device;
import pm.device.javainput.extreme3d.Extreme3DButton;
import pm.device.javainput.extreme3d.Extreme3DDirection;
import pm.exception.DeviceException;
import pm.exception.EventException;
import pm.exception.device.JavaInputDeviceNotFoundException;
import pm.exception.event.UnknownDirectionException;
import pm.macro.event.Press;
import pm.macro.event.Release;
@@ -50,7 +47,7 @@ public abstract class JavaInputDevice extends Device {
}
public void processEvent(JXInputButtonEvent event) throws EventException {
Button button = Extreme3DButton.create(event);
Button button = getButton(event);
if (event.getButton().getState()) {
System.out.println("Press: " + button);
add(new Press(button));
@@ -60,8 +57,8 @@ public abstract class JavaInputDevice extends Device {
}
}
public void processEvent(JXInputDirectionalEvent event) throws UnknownDirectionException {
Button button = Extreme3DDirection.create(event);
public void processEvent(JXInputDirectionalEvent event) throws EventException {
Button button = getButton(event);
if (event.getDirectional().isCentered()) {
if (previousDirectionalButton != null) {
System.out.println("Release: " + previousDirectionalButton);
@@ -73,4 +70,7 @@ public abstract class JavaInputDevice extends Device {
previousDirectionalButton = button;
}
}
protected abstract Button getButton(JXInputButtonEvent event) throws EventException;
protected abstract Button getButton(JXInputDirectionalEvent event) throws EventException;
}

View File

@@ -1,11 +1,16 @@
package pm.device.javainput.extreme3d;
import de.hardcode.jxinput.event.JXInputButtonEvent;
import de.hardcode.jxinput.event.JXInputDirectionalEvent;
import pm.Action;
import pm.Button;
import pm.Macro;
import pm.Target;
import pm.device.javainput.JavaInputDevice;
import pm.exception.DeviceException;
import pm.exception.MacroException;
import pm.exception.event.UnknownButtonException;
import pm.exception.event.UnknownDirectionException;
import pm.macro.event.Hold;
import pm.macro.event.Press;
import pm.macro.event.Release;
@@ -34,4 +39,12 @@ public class Extreme3DDevice extends JavaInputDevice {
e.printStackTrace();
}
}
protected Button getButton(JXInputButtonEvent event) throws UnknownButtonException {
return Extreme3DButton.create(event);
}
protected Button getButton(JXInputDirectionalEvent event) throws UnknownDirectionException {
return Extreme3DDirection.create(event);
}
}

View File

@@ -1,10 +1,16 @@
package pm.device.javainput.rumblepad;
import de.hardcode.jxinput.event.JXInputButtonEvent;
import de.hardcode.jxinput.event.JXInputDirectionalEvent;
import pm.Action;
import pm.Button;
import pm.Macro;
import pm.Target;
import pm.device.javainput.JavaInputDevice;
import pm.exception.DeviceException;
import pm.exception.MacroException;
import pm.exception.event.UnknownButtonException;
import pm.exception.event.UnknownDirectionException;
import pm.macro.event.Press;
public class RumblepadDevice extends JavaInputDevice {
@@ -18,7 +24,7 @@ public class RumblepadDevice extends JavaInputDevice {
public void start() {
super.start();
try {
/*add(
add(
new Press(RumblepadButton.ONE),
Action.PLAY.setTarget(Target.APPLICATION));
add(
@@ -26,12 +32,23 @@ public class RumblepadDevice extends JavaInputDevice {
Action.PAUSE.setTarget(Target.APPLICATION));
add(
new Press(RumblepadButton.THREE),
Action.RESUME.setTarget(Target.APPLICATION));*/
Action.RESUME.setTarget(Target.APPLICATION));
add(
new Press(RumblepadButton.FOUR),
new Macro(
new Press(RumblepadButton.ONE)
),
Action.EXIT.setTarget(Target.MAIN));
} catch (MacroException e) {
e.printStackTrace();
}
}
}
protected Button getButton(JXInputButtonEvent event) throws UnknownButtonException {
return RumblepadButton.create(event);
}
protected Button getButton(JXInputDirectionalEvent event) throws UnknownDirectionException {
return RumblepadDirection.create(event);
}
}

View File

@@ -31,10 +31,7 @@ public class JIntellitypeDevice extends Device implements HotkeyListener, Intell
jit.addIntellitypeListener(this);
try {
add(
new Macro(
new Hotkey('r'),
new Hotkey('i'),
new Hotkey('k')),
new Hotkey(HotkeyButton.CTRL, 'x'),
Action.EXIT.setTarget(Target.MAIN));
add(
new Press(CommandButton.VOLUME_UP),

View File

@@ -14,6 +14,6 @@ public abstract class Event {
}
public boolean equals(Event event) {
return event.getClass().equals(getClass()) && event.getButton().equals(button); // Todo: controleren of equals goed werkt bij buttons van verschillende typen
return event.getClass().equals(getClass()) && event.getButton().equals(button);
}
}