diff options
Diffstat (limited to 'plugins/DX8')
-rw-r--r-- | plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java | 4 | ||||
-rw-r--r-- | plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java | 12 | ||||
-rw-r--r-- | plugins/DX8/src/native/input.cpp | 4 |
3 files changed, 15 insertions, 5 deletions
diff --git a/plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java b/plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java index 993ab93..d269961 100644 --- a/plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java +++ b/plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java @@ -159,8 +159,8 @@ class DirectInputDevice extends AbstractController { * @param effect the natie effect id * @param axisID The axis ID */ - private void addRumbler(long effect, Axis.Identifier axisID) { - rumblerList.add(new DirectInputRumbler(this, effect, axisID)); + private void addRumbler(long effect, Axis.Identifier axisID, String axisName) { + rumblerList.add(new DirectInputRumbler(this, effect, axisID, axisName)); } /** Polls axes for data. Returns false if the controller is no longer valid. diff --git a/plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java b/plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java index de04724..f0ae3d0 100644 --- a/plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java +++ b/plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java @@ -15,12 +15,22 @@ public class DirectInputRumbler implements net.java.games.input.Rumbler { private DirectInputDevice device; private long effect; private Axis.Identifier axisID; + private String axisName; /** Creates a new instance of DirectInputRumbler */ - public DirectInputRumbler(DirectInputDevice device, long effect, Axis.Identifier axisID) { + public DirectInputRumbler(DirectInputDevice device, long effect, Axis.Identifier axisID, String axisName) { this.device = device; this.effect = effect; this.axisID = axisID; + this.axisName = axisName; + } + + public Axis.Identifier getAxisIdentifier() { + return axisID; + } + + public String getAxisName() { + return axisName; } public void rumble(float intensity) { diff --git a/plugins/DX8/src/native/input.cpp b/plugins/DX8/src/native/input.cpp index 9fe577b..20493f1 100644 --- a/plugins/DX8/src/native/input.cpp +++ b/plugins/DX8/src/native/input.cpp @@ -263,7 +263,7 @@ BOOL InitIDs(JNIEnv* env) { return FALSE; } MID_AddRumbler = env->GetMethodID(CLASS_DirectInputDevice, "addRumbler", - "(JLnet/java/games/input/Axis$Identifier;)V"); + "(JLnet/java/games/input/Axis$Identifier;Ljava/lang/String;)V"); if (MID_AddRumbler == NULL) { return FALSE; } @@ -700,7 +700,7 @@ BOOL CALLBACK EnumObjectsCallback(LPCDIDEVICEOBJECTINSTANCE lpddoi, return res; } - env->CallVoidMethod(obj, MID_AddRumbler, (jlong)(long)g_pEffect, identifier); + env->CallVoidMethod(obj, MID_AddRumbler, (jlong)(long)g_pEffect, identifier, name); } return DIENUM_CONTINUE; } |