summaryrefslogtreecommitdiff
path: root/plugins/dfinput/cfg-gtk2.c
diff options
context:
space:
mode:
authorSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2011-05-09 05:38:48 +0000
committerSND\edgbla_cp <SND\edgbla_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2011-05-09 05:38:48 +0000
commit2f0f4c038428171244fd4e188a04df3aa07b241a (patch)
tree04157330145c9fc1cbd28e2c61d50778b28a7b6d /plugins/dfinput/cfg-gtk2.c
parent8f4da5b653f91eaca82f02565a9932ae0ef371f8 (diff)
downloadpcsxr-2f0f4c038428171244fd4e188a04df3aa07b241a.tar.gz
dfinput, mouse (experimental).
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@66705 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'plugins/dfinput/cfg-gtk2.c')
-rw-r--r--plugins/dfinput/cfg-gtk2.c50
1 files changed, 42 insertions, 8 deletions
diff --git a/plugins/dfinput/cfg-gtk2.c b/plugins/dfinput/cfg-gtk2.c
index a3626873..7921f726 100644
--- a/plugins/dfinput/cfg-gtk2.c
+++ b/plugins/dfinput/cfg-gtk2.c
@@ -188,11 +188,18 @@ static void UpdateKeyList() {
for (i = 0; i < 2; i++) {
int total;
- if (g.cfg.PadDef[i].Type == PSE_PAD_TYPE_ANALOGPAD) {
- total = DKEY_TOTAL;
- } else {
- total = DKEY_TOTAL - 3;
- }
+ switch(g.cfg.PadDef[i].Type)
+ {
+ case PSE_PAD_TYPE_MOUSE:
+ total = 0;
+ break;
+ case PSE_PAD_TYPE_STANDARD:
+ total = DKEY_TOTAL - 3;
+ break;
+ case PSE_PAD_TYPE_ANALOGPAD:
+ total = DKEY_TOTAL;
+ break;
+ }
widget = gtk_builder_get_object(xml, widgetname[i]);
@@ -299,7 +306,14 @@ static void OnDeviceChanged(GtkWidget *widget, gpointer user_data) {
static void OnTypeChanged(GtkWidget *widget, gpointer user_data) {
int n = (int)user_data, current = gtk_combo_box_get_active(GTK_COMBO_BOX(widget));
- g.cfg.PadDef[n].Type = (current == 0 ? PSE_PAD_TYPE_STANDARD : PSE_PAD_TYPE_ANALOGPAD);
+
+ int padTypeList[] = {
+ PSE_PAD_TYPE_STANDARD,
+ PSE_PAD_TYPE_ANALOGPAD,
+ PSE_PAD_TYPE_MOUSE
+ };
+
+ g.cfg.PadDef[n].Type = padTypeList[current];
UpdateKeyList();
}
@@ -308,6 +322,10 @@ static void OnThreadedToggled(GtkWidget *widget, gpointer user_data) {
g.cfg.Threaded = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
}
+static void OnHideCursorToggled(GtkWidget *widget, gpointer user_data) {
+ g.cfg.HideCursor = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+}
+
static void ReadDKeyEvent(int padnum, int key) {
SDL_Joystick *js;
time_t t;
@@ -641,6 +659,11 @@ long PADconfigure() {
g_signal_connect_data(GTK_OBJECT(widget), "toggled",
G_CALLBACK(OnThreadedToggled), NULL, NULL, G_CONNECT_AFTER);
+ widget = gtk_builder_get_object(xml, "checkcg");
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), g.cfg.HideCursor);
+ g_signal_connect_data(GTK_OBJECT(widget), "toggled",
+ G_CALLBACK(OnHideCursorToggled), NULL, NULL, G_CONNECT_AFTER);
+
widget = gtk_builder_get_object(xml, "combodev1");
g_signal_connect_data(GTK_OBJECT(widget), "changed",
G_CALLBACK(OnDeviceChanged), (gpointer)0, NULL, G_CONNECT_AFTER);
@@ -649,15 +672,26 @@ long PADconfigure() {
g_signal_connect_data(GTK_OBJECT(widget), "changed",
G_CALLBACK(OnDeviceChanged), (gpointer)1, NULL, G_CONNECT_AFTER);
+ int padTypeList[] = {
+ 0,
+ 2, // PSE_PAD_TYPE_MOUSE
+ 0, // PSE_PAD_TYPE_NEGCON
+ 0, // PSE_PAD_TYPE_GUN
+ 0, // PSE_PAD_TYPE_STANDARD
+ 1, // PSE_PAD_TYPE_ANALOGJOY
+ 0, // PSE_PAD_TYPE_GUNCON
+ 1, //PSE_PAD_TYPE_ANALOGPAD
+ };
+
widget = gtk_builder_get_object(xml, "combotype1");
gtk_combo_box_set_active(GTK_COMBO_BOX(widget),
- g.cfg.PadDef[0].Type == PSE_PAD_TYPE_ANALOGPAD ? 1 : 0);
+ padTypeList[g.cfg.PadDef[0].Type]);
g_signal_connect_data(GTK_OBJECT(widget), "changed",
G_CALLBACK(OnTypeChanged), (gpointer)0, NULL, G_CONNECT_AFTER);
widget = gtk_builder_get_object(xml, "combotype2");
gtk_combo_box_set_active(GTK_COMBO_BOX(widget),
- g.cfg.PadDef[1].Type == PSE_PAD_TYPE_ANALOGPAD ? 1 : 0);
+ padTypeList[g.cfg.PadDef[1].Type]);
g_signal_connect_data(GTK_OBJECT(widget), "changed",
G_CALLBACK(OnTypeChanged), (gpointer)1, NULL, G_CONNECT_AFTER);