aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/DX8
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/DX8')
-rw-r--r--plugins/DX8/src/java/net/java/games/input/DirectInputDevice.java4
-rw-r--r--plugins/DX8/src/java/net/java/games/input/DirectInputRumbler.java12
-rw-r--r--plugins/DX8/src/native/input.cpp4
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;
}