diff --git a/plugins/LilyPad/Config.cpp b/plugins/LilyPad/Config.cpp index 6ea231240d..0e425a8534 100644 --- a/plugins/LilyPad/Config.cpp +++ b/plugins/LilyPad/Config.cpp @@ -1,5 +1,5 @@ /* LilyPad - Pad plugin for PS2 Emulator - * Copyright (C) 2002-2014 PCSX2 Dev Team/ChickenLiver + * Copyright (C) 2002-2017 PCSX2 Dev Team/ChickenLiver * * PCSX2 is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free @@ -290,37 +290,37 @@ wchar_t *GetCommandStringW(u8 command, int port, int slot) HWND hWnd = GetDlgItem(hWnds[port][slot][padtype], 0x10F0 + command); if (!hWnd) { wchar_t *strings[] = { - L"Lock Buttons", - L"Lock Input", - L"Lock Direction", - L"Mouse", - L"Select", - L"L3", - L"R3", - L"Start", - L"Up", - L"Right", - L"Down", - L"Left", - L"L2", - L"R2", - L"L1", - L"R1", - L"Triangle", - L"Circle", - L"Square", - L"Cross", - L"L-Stick Up", - L"L-Stick Right", - L"L-Stick Down", - L"L-Stick Left", - L"R-Stick Up", - L"R-Stick Right", - L"R-Stick Down", - L"R-Stick Left", - L"Analog", - L"Excluded Input", - L"Turbo", + L"Lock Buttons", // 0x0C (12) + L"Lock Input", // 0x0D (13) + L"Lock Direction", // 0x0E (14) + L"Mouse", // 0x0F (15) + L"Select", // 0x10 (16) + L"L3", // 0x11 (17) + L"R3", // 0x12 (18) + L"Start", // 0x13 (19) + L"Up", // 0x14 (20) + L"Right", // 0x15 (21) + L"Down", // 0x16 (22) + L"Left", // 0x17 (23) + L"L2", // 0x18 (24) + L"R2", // 0x19 (25) + L"L1", // 0x1A (26) + L"R1", // 0x1B (27) + L"Triangle", // 0x1C (28) + L"Circle", // 0x1D (29) + L"Square", // 0x1E (30) + L"Cross", // 0x1F (31) + L"L-Stick Up", // 0x20 (32) + L"L-Stick Right", // 0x21 (33) + L"L-Stick Down", // 0x22 (34) + L"L-Stick Left", // 0x23 (35) + L"R-Stick Up", // 0x24 (36) + L"R-Stick Right", // 0x25 (37) + L"R-Stick Down", // 0x26 (38) + L"R-Stick Left", // 0x27 (39) + L"Analog", // 0x28 (40) + L"Excluded Input", // 0x29 (41) + L"Turbo", // 0x2A (42) }; return strings[command - 0xC]; } @@ -816,19 +816,24 @@ void Populate(int port, int slot, int padtype) hWnd = GetDlgItem(hWnds[port][slot][padtype], IDC_FORCEFEEDBACK); SendMessage(hWnd, CB_RESETCONTENT, 0, 0); int added = 0; + bool enable = false; for (int i = 0; i < dm->numDevices; i++) { Device *dev = dm->devices[i]; if (dev->enabled && dev->numFFAxes && dev->numFFEffectTypes) { SendMessage(hWnd, CB_INSERTSTRING, added, (LPARAM)dev->displayName); SendMessage(hWnd, CB_SETITEMDATA, added, i); added++; + + int selectedDevice = config.deviceSelect[port][slot]; + if (selectedDevice == -1 || dm->devices[selectedDevice] == dev) { + enable = true; + } } } SendMessage(hWnd, CB_SETCURSEL, 0, 0); - EnableWindow(hWnd, added != 0); - EnableWindow(GetDlgItem(hWnds[port][slot][padtype], ID_BIG_MOTOR), added != 0); - EnableWindow(GetDlgItem(hWnds[port][slot][padtype], ID_SMALL_MOTOR), added != 0); - + EnableWindow(hWnd, added != 0 && enable); + EnableWindow(GetDlgItem(hWnds[port][slot][padtype], ID_BIG_MOTOR), added != 0 && enable); + EnableWindow(GetDlgItem(hWnds[port][slot][padtype], ID_SMALL_MOTOR), added != 0 && enable); SelChanged(port, slot); } @@ -948,7 +953,7 @@ int LoadSettings(int force, wchar_t *file) return 0; if (createIniDir) { - CreateDirectory(L"inis", 0); + PADsetSettingsDir("inis"); createIniDir = false; } @@ -1091,7 +1096,7 @@ int LoadSettings(int force, wchar_t *file) string[w] = 0; // wcstok not in ntdll. More effore than its worth to shave off // whitespace without it. - if (sscanf(string, " %20s %i , %i , %i , %i", effect, &port, &motor, &slot, &padtype) == 5) { + if (sscanf(string, " %100s %i , %i , %i , %i", effect, &port, &motor, &slot, &padtype) == 5) { char *s; if (oldIni) { // Make sure bindings aren't applied to "Unplugged" padtype and FF settings are read from old location. if (config.padConfigs[port][slot].type != 0) { @@ -1289,7 +1294,7 @@ void DeleteBinding(int port, int slot, int padtype, Device *dev, Binding *b) dev->pads[port][slot][padtype].numBindings--; } -void DeleteBinding(int port, int slot, Device *dev, ForceFeedbackBinding *b) +void DeleteFFBinding(int port, int slot, Device *dev, ForceFeedbackBinding *b) { int padtype = config.padConfigs[port][slot].type; if (dev->enabled && hWnds[port][slot][padtype]) { @@ -1317,7 +1322,7 @@ int DeleteByIndex(int port, int slot, int index) if (b) { DeleteBinding(port, slot, padtype, dev, b); } else { - DeleteBinding(port, slot, dev, ffb); + DeleteFFBinding(port, slot, dev, ffb); } return 1; } @@ -1519,13 +1524,12 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l ListView_SetExtendedListViewStyleEx(hWndList, LVS_EX_DOUBLEBUFFER, LVS_EX_DOUBLEBUFFER); LVCOLUMN c; c.mask = LVCF_TEXT | LVCF_WIDTH; - c.cx = 100; + c.cx = 90; c.pszText = L"Device"; ListView_InsertColumn(hWndList, 0, &c); c.cx = 70; c.pszText = L"PC Control"; ListView_InsertColumn(hWndList, 1, &c); - c.cx = 84; c.pszText = L"PS2 Control"; ListView_InsertColumn(hWndList, 2, &c); selected = 0; @@ -1574,6 +1578,7 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l EnableWindow(hWndDS, added != 0); Populate(port, slot, padtype); + ListView_SetColumnWidth(hWndList, 2, LVSCW_AUTOSIZE_USEHEADER); } break; case WM_DEVICECHANGE: if (wParam == DBT_DEVNODES_CHANGED) { @@ -1668,8 +1673,10 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l if (key->wVKey == VK_DELETE || key->wVKey == VK_BACK) { - if (DeleteSelected(port, slot)) + if (DeleteSelected(port, slot)) { PropSheet_Changed(hWndProp, hWnds[0]); + ListView_SetColumnWidth(hWndList, 2, LVSCW_AUTOSIZE_USEHEADER); + } } } // Update sensitivity and motor/binding display on redraw @@ -1751,6 +1758,7 @@ INT_PTR CALLBACK DialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, LPARAM l int selectedDev = SendMessage(GetDlgItem(hWnd, IDC_DEVICE_SELECT), CB_GETCURSEL, 0, 0); config.deviceSelect[port][slot] = SendMessage(GetDlgItem(hWnd, IDC_DEVICE_SELECT), CB_GETITEMDATA, selectedDev, 0); RefreshEnabledDevicesAndDisplay(1, hWndGeneral, 1); + ListView_SetColumnWidth(hWndList, 2, LVSCW_AUTOSIZE_USEHEADER); } else if (HIWORD(wParam) == CBN_SELCHANGE && LOWORD(wParam) == IDC_FF_EFFECT) { int typeIndex = SendMessage((HWND)lParam, CB_GETCURSEL, 0, 0); if (typeIndex >= 0) @@ -1985,7 +1993,6 @@ void UpdatePadPages() HPROPSHEETPAGE pages[10]; int count = 0; memset(hWnds, 0, sizeof(hWnds)); - int slot = 0; for (int port = 0; port < 2; port++) { for (int slot = 0; slot < 4; slot++) { if (config.padConfigs[port][slot].type == DisabledPad) @@ -2112,7 +2119,7 @@ void UpdatePadList(HWND hWnd) CheckDlgButton(hWnd, IDC_ANALOG_START1, BST_CHECKED * config.padConfigs[port][slot].autoAnalog); } EnableWindow(hWndCombo, enable); - EnableWindow(hWndAnalog, enable); + EnableWindow(hWndAnalog, config.padConfigs[port][slot].type == Dualshock2Pad ? enable : 0); //ListView_SetExtendedListViewStyleEx(hWndList, LVS_EX_DOUBLEBUFFER|LVS_EX_ONECLICKACTIVATE, LVS_EX_DOUBLEBUFFER|LVS_EX_ONECLICKACTIVATE); recurse = 0; } @@ -2133,20 +2140,15 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L c.cx = 120; c.pszText = L"Type"; ListView_InsertColumn(hWndList, 1, &c); - if (config.multitap[0] || config.multitap[1]) { - c.cx = 84; - } else { - c.cx = 101; - } c.pszText = L"Bindings"; ListView_InsertColumn(hWndList, 2, &c); + ListView_SetColumnWidth(hWndList, 2, LVSCW_AUTOSIZE_USEHEADER); selected = 0; ListView_SetExtendedListViewStyleEx(hWndList, LVS_EX_FULLROWSELECT | LVS_EX_DOUBLEBUFFER, LVS_EX_FULLROWSELECT | LVS_EX_DOUBLEBUFFER); SendMessage(hWndList, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT); for (int i = 0; i < numPadTypes; i++) SendMessage(hWndCombo, CB_ADDSTRING, 0, (LPARAM)padTypes[i]); - if (ps2e) { // This disabled some widgets which are not required for PCSX2. // Currently the trigger is that it's in PS2 emulation mode @@ -2181,6 +2183,7 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L AddTooltip(IDC_PAD_LIST, hWnd); AddTooltip(IDC_PAD_TYPE, hWnd); AddTooltip(IDC_DIAG_LIST, hWnd); + AddTooltip(IDC_G_XI, hWnd); AddTooltip(IDC_ANALOG_START1, hWnd); if (config.keyboardApi < 0 || config.keyboardApi > 3) @@ -2274,16 +2277,15 @@ INT_PTR CALLBACK GeneralDialogProc(HWND hWnd, unsigned int msg, WPARAM wParam, L if (mtap != config.multitap[0] + 2 * config.multitap[1]) { UpdatePadPages(); - if (config.multitap[0] || config.multitap[1]) { - ListView_SetColumnWidth(hWndList, 2, 84); - } else { - ListView_SetColumnWidth(hWndList, 2, 101); - } } RefreshEnabledDevicesAndDisplay(0, hWnd, 1); UpdatePadList(hWnd); PropSheet_Changed(hWndProp, hWnd); + + if (mtap != config.multitap[0] + 2 * config.multitap[1]) { + ListView_SetColumnWidth(hWndList, 2, LVSCW_AUTOSIZE_USEHEADER); + } } break; case WM_NOTIFY: { diff --git a/plugins/LilyPad/LilyPad.cpp b/plugins/LilyPad/LilyPad.cpp index d36d5eef3d..43a4498428 100644 --- a/plugins/LilyPad/LilyPad.cpp +++ b/plugins/LilyPad/LilyPad.cpp @@ -1,5 +1,5 @@ /* LilyPad - Pad plugin for PS2 Emulator - * Copyright (C) 2002-2014 PCSX2 Dev Team/ChickenLiver + * Copyright (C) 2002-2017 PCSX2 Dev Team/ChickenLiver * * PCSX2 is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free @@ -629,7 +629,7 @@ void Update(unsigned int port, unsigned int slot) } } - if (pads[port][slot].mode == 0x41) { + if (pads[port][slot].mode == MODE_DIGITAL) { for (int i = 0; i <= 1; i++) { if (s[port][slot].sticks[i].horiz >= 100) s[port][slot].buttons[13] += s[port][slot].sticks[i].horiz; @@ -1301,10 +1301,10 @@ u8 CALLBACK PADpoll(u8 value) query.numBytes = 5; if (pad->mode != MODE_DIGITAL) { - query.response[5] = Cap((sum->sticks[0].horiz + 255) / 2); - query.response[6] = Cap((sum->sticks[0].vert + 255) / 2); - query.response[7] = Cap((sum->sticks[1].horiz + 255) / 2); - query.response[8] = Cap((sum->sticks[1].vert + 255) / 2); + query.response[5] = Cap((sum->sticks[0].horiz + 255) / 2); // Right stick: left & right + query.response[6] = Cap((sum->sticks[0].vert + 255) / 2); // Right stick: up & down + query.response[7] = Cap((sum->sticks[1].horiz + 255) / 2); // Left stick: left & right + query.response[8] = Cap((sum->sticks[1].vert + 255) / 2); // Left stick: up & down query.numBytes = 9; if (pad->mode != MODE_ANALOG) { @@ -1318,14 +1318,15 @@ u8 CALLBACK PADpoll(u8 value) query.response[11] = (unsigned char)sum->buttons[12]; //D-pad up query.response[12] = (unsigned char)sum->buttons[14]; //D-pad down - query.response[13] = (unsigned char)sum->buttons[8]; - query.response[14] = (unsigned char)sum->buttons[9]; - query.response[15] = (unsigned char)sum->buttons[10]; - query.response[16] = (unsigned char)sum->buttons[11]; - query.response[17] = (unsigned char)sum->buttons[6]; - query.response[18] = (unsigned char)sum->buttons[7]; - query.response[19] = (unsigned char)sum->buttons[4]; - query.response[20] = (unsigned char)sum->buttons[5]; + query.response[13] = (unsigned char)sum->buttons[8]; // Triangle + query.response[14] = (unsigned char)sum->buttons[9]; // Circle + query.response[15] = (unsigned char)sum->buttons[10]; // Cross + query.response[16] = (unsigned char)sum->buttons[11]; // Square + + query.response[17] = (unsigned char)sum->buttons[6]; // L1 + query.response[18] = (unsigned char)sum->buttons[7]; // R1 + query.response[19] = (unsigned char)sum->buttons[4]; // L2 + query.response[20] = (unsigned char)sum->buttons[5]; // R2 query.numBytes = 21; } } diff --git a/plugins/LilyPad/LilyPad.rc b/plugins/LilyPad/LilyPad.rc index afbafe943b..7d42cf6578 100644 --- a/plugins/LilyPad/LilyPad.rc +++ b/plugins/LilyPad/LilyPad.rc @@ -65,41 +65,41 @@ BEGIN PUSHBUTTON "R1",ID_R1,254,13,34,15 PUSHBUTTON "L2",ID_L2,210,30,34,15 PUSHBUTTON "R2",ID_R2,254,30,34,15 - GROUPBOX "D-Pad",IDC_DPAD,196,48,108,70 - PUSHBUTTON "Up",ID_DPAD_UP,233,59,34,15 - PUSHBUTTON "Left",ID_DPAD_LEFT,214,78,34,15 - PUSHBUTTON "Right",ID_DPAD_RIGHT,252,78,34,15 + GROUPBOX "D-Pad",IDC_DPAD,196,49,108,70 + PUSHBUTTON "Up",ID_DPAD_UP,233,60,34,15 + PUSHBUTTON "Left",ID_DPAD_LEFT,214,79,34,15 + PUSHBUTTON "Right",ID_DPAD_RIGHT,252,79,34,15 PUSHBUTTON "Down",ID_DPAD_DOWN,233,97,34,15 - GROUPBOX "Face buttons",IDC_FACE,310,48,108,70 - PUSHBUTTON "Triangle",ID_TRIANGLE,347,59,34,15 - PUSHBUTTON "Square",ID_SQUARE,328,78,34,15 - PUSHBUTTON "Circle",ID_CIRCLE,366,78,34,15 - PUSHBUTTON "Cross",ID_CROSS,347,97,34,15 - GROUPBOX "Left Analog Stick",IDC_LSTICK,196,119,108,70 - PUSHBUTTON "Up",ID_LSTICK_UP,234,130,30,15 - PUSHBUTTON "Left",ID_LSTICK_LEFT,202,149,30,15 - PUSHBUTTON "L3",ID_L3,234,149,30,15 - PUSHBUTTON "Right",ID_LSTICK_RIGHT,266,149,30,15 - PUSHBUTTON "Down",ID_LSTICK_DOWN,234,169,30,15 - GROUPBOX "Right Analog Stick",IDC_RSTICK,310,119,108,70 - PUSHBUTTON "Up",ID_RSTICK_UP,348,130,30,15 - PUSHBUTTON "Left",ID_RSTICK_LEFT,316,149,30,15 - PUSHBUTTON "R3",ID_R3,348,149,30,15 - PUSHBUTTON "Right",ID_RSTICK_RIGHT,380,149,30,15 - PUSHBUTTON "Down",ID_RSTICK_DOWN,348,169,30,15 + GROUPBOX "Face buttons",IDC_FACE,310,49,108,70 + PUSHBUTTON "Triangle",ID_TRIANGLE,347,60,34,15 + PUSHBUTTON "Square",ID_SQUARE,328,79,34,15 + PUSHBUTTON "Circle",ID_CIRCLE,366,79,34,15 + PUSHBUTTON "Cross",ID_CROSS,347,98,34,15 + GROUPBOX "Left Analog Stick",IDC_LSTICK,196,120,108,70 + PUSHBUTTON "Up",ID_LSTICK_UP,234,131,30,15 + PUSHBUTTON "Left",ID_LSTICK_LEFT,202,150,30,15 + PUSHBUTTON "L3",ID_L3,234,150,30,15 + PUSHBUTTON "Right",ID_LSTICK_RIGHT,266,150,30,15 + PUSHBUTTON "Down",ID_LSTICK_DOWN,234,170,30,15 + GROUPBOX "Right Analog Stick",IDC_RSTICK,310,120,108,70 + PUSHBUTTON "Up",ID_RSTICK_UP,348,131,30,15 + PUSHBUTTON "Left",ID_RSTICK_LEFT,316,150,30,15 + PUSHBUTTON "R3",ID_R3,348,150,30,15 + PUSHBUTTON "Right",ID_RSTICK_RIGHT,380,150,30,15 + PUSHBUTTON "Down",ID_RSTICK_DOWN,348,170,30,15 // Force Feedback bindings: - GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,195,155,51 - COMBOBOX IDC_FORCEFEEDBACK,269,208,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,226,64,14 - PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,226,64,14 + GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,194,155,51 + COMBOBOX IDC_FORCEFEEDBACK,269,207,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,225,64,14 + PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,225,64,14 // Special bindings and options: - CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,335,250,70,15 - COMBOBOX IDC_DEVICE_SELECT,259,250,72,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,196,59,14 - PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,14 - PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,230,59,14 - PUSHBUTTON "Ignore Key",ID_IGNORE,196,247,59,14 - PUSHBUTTON "Exclude Input",ID_EXCLUDE,196,264,59,14 + PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,195,59,15 + PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,15 + PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,231,59,15 + PUSHBUTTON "Turbo",ID_TURBO_KEY,196,249,59,15 + PUSHBUTTON "Exclude Input",ID_EXCLUDE,261,249,59,15 + COMBOBOX IDC_DEVICE_SELECT,326,250,91,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,347,265,70,15 // Force Feedback configuration: GROUPBOX "",ID_FF,195,9,222,248 COMBOBOX IDC_FF_EFFECT,203,23,206,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -130,22 +130,22 @@ BEGIN PUSHBUTTON "Back to Controls",ID_CONTROLS,196,261,59,15 PUSHBUTTON "Test",ID_TEST,257,261,59,15 // Input configuration: - GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,98 + GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,110 EDITTEXT IDC_AXIS_DEVICE,202,22,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP COMBOBOX IDC_AXIS_DIRECTION,276,20,70,47,CBS_DROPDOWNLIST | WS_TABSTOP EDITTEXT IDC_AXIS_CONTROL,349,22,65,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,38,42,8 - CONTROL "Turbo",IDC_TURBO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,50,34,10 - CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,38,131,17 - EDITTEXT IDC_AXIS_SENSITIVITY,377,36,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,385,50,27,10 - LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,63,42,8 - CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,59,131,17 - EDITTEXT IDC_AXIS_DEADZONE,377,62,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,80,42,16 - CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,80,131,17 - EDITTEXT IDC_AXIS_SKIP_DEADZONE,377,83,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,83,20,12 + CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,37,27,10 + CONTROL "Rapid Fire",IDC_RAPID_FIRE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,232,37,44,10 + LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,51,42,8 + CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,51,131,17 + EDITTEXT IDC_AXIS_SENSITIVITY,372,53,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,71,42,8 + CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,71,131,17 + EDITTEXT IDC_AXIS_DEADZONE,372,73,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,92,42,16 + CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,92,131,17 + EDITTEXT IDC_AXIS_SKIP_DEADZONE,372,94,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,94,20,12 END IDD_CONFIG_POPN DIALOGEX 0, 0, 424, 283 @@ -166,18 +166,18 @@ BEGIN PUSHBUTTON "Yellow R",ID_DPAD_UP,350,48,43,15 PUSHBUTTON "White R",ID_L2,372,66,43,15 // Force Feedback bindings: - GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,195,155,51 - COMBOBOX IDC_FORCEFEEDBACK,269,208,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,226,64,14 - PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,226,64,14 + GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,194,155,51 + COMBOBOX IDC_FORCEFEEDBACK,269,207,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,225,64,14 + PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,225,64,14 // Special bindings and options: - CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,335,250,70,15 - COMBOBOX IDC_DEVICE_SELECT,259,250,72,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,196,59,14 - PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,14 - PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,230,59,14 - PUSHBUTTON "Ignore Key",ID_IGNORE,196,247,59,14 - PUSHBUTTON "Exclude Input",ID_EXCLUDE,196,264,59,14 + PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,195,59,15 + PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,15 + PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,231,59,15 + PUSHBUTTON "Turbo",ID_TURBO_KEY,196,249,59,15 + PUSHBUTTON "Exclude Input",ID_EXCLUDE,261,249,59,15 + COMBOBOX IDC_DEVICE_SELECT,326,250,91,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,347,265,70,15 // Force Feedback configuration: GROUPBOX "",ID_FF,195,9,222,248 COMBOBOX IDC_FF_EFFECT,203,23,206,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -208,22 +208,22 @@ BEGIN PUSHBUTTON "Back to Controls",ID_CONTROLS,196,261,59,15 PUSHBUTTON "Test",ID_TEST,257,261,59,15 // Input configuration: - GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,98 + GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,110 EDITTEXT IDC_AXIS_DEVICE,202,22,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP COMBOBOX IDC_AXIS_DIRECTION,276,20,70,47,CBS_DROPDOWNLIST | WS_TABSTOP EDITTEXT IDC_AXIS_CONTROL,349,22,65,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,38,42,8 - CONTROL "Turbo",IDC_TURBO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,50,34,10 - CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,38,131,17 - EDITTEXT IDC_AXIS_SENSITIVITY,377,36,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,385,50,27,10 - LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,63,42,8 - CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,59,131,17 - EDITTEXT IDC_AXIS_DEADZONE,377,62,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,80,42,16 - CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,80,131,17 - EDITTEXT IDC_AXIS_SKIP_DEADZONE,377,83,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,83,20,12 + CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,37,27,10 + CONTROL "Rapid Fire",IDC_RAPID_FIRE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,232,37,44,10 + LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,51,42,8 + CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,51,131,17 + EDITTEXT IDC_AXIS_SENSITIVITY,372,53,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,71,42,8 + CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,71,131,17 + EDITTEXT IDC_AXIS_DEADZONE,372,73,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,92,42,16 + CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,92,131,17 + EDITTEXT IDC_AXIS_SKIP_DEADZONE,372,94,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,94,20,12 END IDD_CONFIG_GUITAR DIALOGEX 0, 0, 424, 283 @@ -244,18 +244,18 @@ BEGIN PUSHBUTTON "Strum Bar Up",ID_DPAD_UP,336,146,58,15 PUSHBUTTON "Strum Bar Down",ID_DPAD_DOWN,336,164,58,15 // Force Feedback bindings: - GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,195,155,51 - COMBOBOX IDC_FORCEFEEDBACK,269,208,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,226,64,14 - PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,226,64,14 + GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,194,155,51 + COMBOBOX IDC_FORCEFEEDBACK,269,207,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,225,64,14 + PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,225,64,14 // Special bindings and options: - CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,335,250,70,15 - COMBOBOX IDC_DEVICE_SELECT,259,250,72,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,196,59,14 - PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,14 - PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,230,59,14 - PUSHBUTTON "Ignore Key",ID_IGNORE,196,247,59,14 - PUSHBUTTON "Exclude Input",ID_EXCLUDE,196,264,59,14 + PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,195,59,15 + PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,15 + PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,231,59,15 + PUSHBUTTON "Turbo",ID_TURBO_KEY,196,249,59,15 + PUSHBUTTON "Exclude Input",ID_EXCLUDE,261,249,59,15 + COMBOBOX IDC_DEVICE_SELECT,326,250,91,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,347,265,70,15 // Force Feedback configuration: GROUPBOX "",ID_FF,195,9,222,248 COMBOBOX IDC_FF_EFFECT,203,23,206,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -286,22 +286,22 @@ BEGIN PUSHBUTTON "Back to Controls",ID_CONTROLS,196,261,59,15 PUSHBUTTON "Test",ID_TEST,257,261,59,15 // Input configuration: - GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,98 + GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,110 EDITTEXT IDC_AXIS_DEVICE,202,22,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP COMBOBOX IDC_AXIS_DIRECTION,276,20,70,47,CBS_DROPDOWNLIST | WS_TABSTOP EDITTEXT IDC_AXIS_CONTROL,349,22,65,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,38,42,8 - CONTROL "Turbo",IDC_TURBO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,50,34,10 - CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,38,131,17 - EDITTEXT IDC_AXIS_SENSITIVITY,377,36,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,385,50,27,10 - LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,63,42,8 - CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,59,131,17 - EDITTEXT IDC_AXIS_DEADZONE,377,62,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,80,42,16 - CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,80,131,17 - EDITTEXT IDC_AXIS_SKIP_DEADZONE,377,83,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,83,20,12 + CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,37,27,10 + CONTROL "Rapid Fire",IDC_RAPID_FIRE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,232,37,44,10 + LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,51,42,8 + CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,51,131,17 + EDITTEXT IDC_AXIS_SENSITIVITY,372,53,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,71,42,8 + CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,71,131,17 + EDITTEXT IDC_AXIS_DEADZONE,372,73,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,92,42,16 + CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,92,131,17 + EDITTEXT IDC_AXIS_SKIP_DEADZONE,372,94,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,94,20,12 END IDD_CONFIG_PS1_MOUSE DIALOGEX 0, 0, 424, 283 @@ -310,26 +310,28 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN CONTROL "",IDC_BINDINGS_LIST,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_NOSORTHEADER | WS_BORDER | WS_VSCROLL | WS_TABSTOP,7,7,183,285,WS_EX_CLIENTEDGE // Input bindings: - PUSHBUTTON "Mouse",ID_MOUSE,366,30,34,15 + PUSHBUTTON "Mouse",ID_MOUSE,379,28,34,15 + GROUPBOX "Mouse buttons",IDC_FACE,242,46,124,34 + PUSHBUTTON "Left-click",ID_CIRCLE,256,57,45,15 + PUSHBUTTON "Right-click",ID_CROSS,307,57,45,15 + GROUPBOX "Mouse Axis",IDC_LSTICK,242,81,124,74 PUSHBUTTON "X-axis Left",ID_LSTICK_LEFT,256,112,45,15 PUSHBUTTON "X-axis Right",ID_LSTICK_RIGHT,307,112,45,15 PUSHBUTTON "Y-axis Up",ID_LSTICK_UP,283,92,45,15 PUSHBUTTON "Y-axis Down",ID_LSTICK_DOWN,283,132,45,15 - PUSHBUTTON "Left-click",ID_CIRCLE,256,56,45,15 - PUSHBUTTON "Right-click",ID_CROSS,307,56,45,15 // Force Feedback bindings: - GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,195,155,51 - COMBOBOX IDC_FORCEFEEDBACK,269,208,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,226,64,14 - PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,226,64,14 + GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,194,155,51 + COMBOBOX IDC_FORCEFEEDBACK,269,207,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,225,64,14 + PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,225,64,14 // Special bindings and options: - CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,335,250,70,15 - COMBOBOX IDC_DEVICE_SELECT,259,250,72,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,196,59,14 - PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,14 - PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,230,59,14 - PUSHBUTTON "Ignore Key",ID_IGNORE,196,247,59,14 - PUSHBUTTON "Exclude Input",ID_EXCLUDE,196,264,59,14 + PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,195,59,15 + PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,15 + PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,231,59,15 + PUSHBUTTON "Turbo",ID_TURBO_KEY,196,249,59,15 + PUSHBUTTON "Exclude Input",ID_EXCLUDE,261,249,59,15 + COMBOBOX IDC_DEVICE_SELECT,326,250,91,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,347,265,70,15 // Force Feedback configuration: GROUPBOX "",ID_FF,195,9,222,248 COMBOBOX IDC_FF_EFFECT,203,23,206,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -360,22 +362,22 @@ BEGIN PUSHBUTTON "Back to Controls",ID_CONTROLS,196,261,59,15 PUSHBUTTON "Test",ID_TEST,257,261,59,15 // Input configuration: - GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,98 + GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,110 EDITTEXT IDC_AXIS_DEVICE,202,22,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP COMBOBOX IDC_AXIS_DIRECTION,276,20,70,47,CBS_DROPDOWNLIST | WS_TABSTOP EDITTEXT IDC_AXIS_CONTROL,349,22,65,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,38,42,8 - CONTROL "Turbo",IDC_TURBO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,50,34,10 - CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,38,131,17 - EDITTEXT IDC_AXIS_SENSITIVITY,377,36,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,385,50,27,10 - LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,63,42,8 - CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,59,131,17 - EDITTEXT IDC_AXIS_DEADZONE,377,62,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,80,42,16 - CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,80,131,17 - EDITTEXT IDC_AXIS_SKIP_DEADZONE,377,83,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,83,20,12 + CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,37,27,10 + CONTROL "Rapid Fire",IDC_RAPID_FIRE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,232,37,44,10 + LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,51,42,8 + CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,51,131,17 + EDITTEXT IDC_AXIS_SENSITIVITY,372,53,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,71,42,8 + CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,71,131,17 + EDITTEXT IDC_AXIS_DEADZONE,372,73,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,92,42,16 + CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,92,131,17 + EDITTEXT IDC_AXIS_SKIP_DEADZONE,372,94,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,94,20,12 END IDD_CONFIG_NEGCON DIALOGEX 0, 0, 424, 283 @@ -384,38 +386,38 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN CONTROL "",IDC_BINDINGS_LIST,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | LVS_NOSORTHEADER | WS_BORDER | WS_VSCROLL | WS_TABSTOP,7,7,183,285,WS_EX_CLIENTEDGE // Input bindings: - GROUPBOX "Shoulder buttons",IDC_SHOULDER,220,3,173,31 - PUSHBUTTON "Analog L",ID_L1,233,13,34,15 - PUSHBUTTON "Digital R",ID_R1,346,13,34,15 - GROUPBOX "D-Pad",IDC_DPAD,196,35,108,70 - PUSHBUTTON "Up",ID_DPAD_UP,233,46,34,15 - PUSHBUTTON "Left",ID_DPAD_LEFT,214,65,34,15 - PUSHBUTTON "Right",ID_DPAD_RIGHT,252,65,34,15 - PUSHBUTTON "Down",ID_DPAD_DOWN,233,84,34,15 - GROUPBOX "Digital Face buttons",IDC_FACE,310,35,108,34 - PUSHBUTTON "B",ID_TRIANGLE,327,46,34,15 - PUSHBUTTON "A",ID_CIRCLE,367,46,34,15 - GROUPBOX "Analog Face buttons",IDC_FACE_ANALOG,310,71,108,34 - PUSHBUTTON "II",ID_SQUARE,327,82,34,15 - PUSHBUTTON "I",ID_CROSS,367,82,34,15 - GROUPBOX "Analog Rotating Section",IDC_LSTICK,255,107,108,31 - PUSHBUTTON "Left",ID_LSTICK_LEFT,261,117,30,15 - PUSHBUTTON "Right",ID_LSTICK_RIGHT,327,117,30,15 - PUSHBUTTON "Start",ID_START,210,109,34,15 - PUSHBUTTON "Mouse",ID_MOUSE,210,128,34,15 + GROUPBOX "Shoulder buttons",IDC_SHOULDER,220,30,173,34 + PUSHBUTTON "Analog L",ID_L1,233,41,34,15 + PUSHBUTTON "Digital R",ID_R1,346,41,34,15 + GROUPBOX "D-Pad",IDC_DPAD,196,65,108,70 + PUSHBUTTON "Up",ID_DPAD_UP,233,76,34,15 + PUSHBUTTON "Left",ID_DPAD_LEFT,214,95,34,15 + PUSHBUTTON "Right",ID_DPAD_RIGHT,252,95,34,15 + PUSHBUTTON "Down",ID_DPAD_DOWN,233,114,34,15 + GROUPBOX "Digital Face buttons",IDC_FACE,310,65,108,34 + PUSHBUTTON "B",ID_TRIANGLE,327,76,34,15 + PUSHBUTTON "A",ID_CIRCLE,367,76,34,15 + GROUPBOX "Analog Face buttons",IDC_FACE_ANALOG,310,101,108,34 + PUSHBUTTON "II",ID_SQUARE,327,112,34,15 + PUSHBUTTON "I",ID_CROSS,367,112,34,15 + GROUPBOX "Analog Rotating Section",IDC_LSTICK,247,136,124,34 + PUSHBUTTON "Left",ID_LSTICK_LEFT,261,147,30,15 + PUSHBUTTON "Right",ID_LSTICK_RIGHT,327,147,30,15 + PUSHBUTTON "Start",ID_START,207,139,34,15 + PUSHBUTTON "Mouse",ID_MOUSE,207,158,34,15 // Force Feedback bindings: - GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,195,155,51 - COMBOBOX IDC_FORCEFEEDBACK,269,208,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,226,64,14 - PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,226,64,14 + GROUPBOX "Add Force Feedback Effect",ID_FORCEFEEDBACK_BOX,262,194,155,51 + COMBOBOX IDC_FORCEFEEDBACK,269,207,142,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "Big Motor",ID_BIG_MOTOR,269,225,64,14 + PUSHBUTTON "Small Motor",ID_SMALL_MOTOR,347,225,64,14 // Special bindings and options: - CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,335,250,70,15 - COMBOBOX IDC_DEVICE_SELECT,259,250,72,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,196,59,14 - PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,14 - PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,230,59,14 - PUSHBUTTON "Ignore Key",ID_IGNORE,196,247,59,14 - PUSHBUTTON "Exclude Input",ID_EXCLUDE,196,264,59,14 + PUSHBUTTON "Lock Input",ID_LOCK_ALL_INPUT,196,195,59,15 + PUSHBUTTON "Lock Direction",ID_LOCK_DIRECTION,196,213,59,15 + PUSHBUTTON "Lock Buttons",ID_LOCK_BUTTONS,196,231,59,15 + PUSHBUTTON "Turbo",ID_TURBO_KEY,196,249,59,15 + PUSHBUTTON "Exclude Input",ID_EXCLUDE,261,249,59,15 + COMBOBOX IDC_DEVICE_SELECT,326,250,91,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Configure on bind",IDC_CONFIGURE_ON_BIND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,347,265,70,15 // Force Feedback configuration: GROUPBOX "",ID_FF,195,9,222,248 COMBOBOX IDC_FF_EFFECT,203,23,206,106,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP @@ -423,7 +425,7 @@ BEGIN CONTROL "Axis 1",IDC_FF_AXIS1_ENABLED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,205,63,91,10 CONTROL "Flip",IDC_FF_AXIS1_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,302,63,35,10 EDITTEXT IDC_FF_AXIS1_SCALE,375,63,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "",IDC_FF_AXIS2,"msctls_trackbar32",WS_TABSTOP,199,79,214,17 + CONTROL "",IDC_FF_AXIS2,"msctls_trackbar32",WS_TABSTOP,199,79,214,17 CONTROL "Axis 2",IDC_FF_AXIS2_ENABLED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,205,99,91,10 CONTROL "Flip",IDC_FF_AXIS2_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,302,99,35,10 EDITTEXT IDC_FF_AXIS2_SCALE,375,92,40,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING @@ -446,22 +448,22 @@ BEGIN PUSHBUTTON "Back to Controls",ID_CONTROLS,196,261,59,15 PUSHBUTTON "Test",ID_TEST,257,261,59,15 // Input configuration: - GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,98 + GROUPBOX "Configure Binding",ID_SENSITIVITY,195,9,222,110 EDITTEXT IDC_AXIS_DEVICE,202,22,74,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP COMBOBOX IDC_AXIS_DIRECTION,276,20,70,47,CBS_DROPDOWNLIST | WS_TABSTOP EDITTEXT IDC_AXIS_CONTROL,349,22,65,12,ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP - LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,38,42,8 - CONTROL "Turbo",IDC_TURBO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,50,34,10 - CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,38,131,17 - EDITTEXT IDC_AXIS_SENSITIVITY,377,36,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,385,50,27,10 - LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,63,42,8 - CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,59,131,17 - EDITTEXT IDC_AXIS_DEADZONE,377,62,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,80,42,16 - CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,80,131,17 - EDITTEXT IDC_AXIS_SKIP_DEADZONE,377,83,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING - LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,83,33,12 + CONTROL "Flip",IDC_FLIP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,202,37,27,10 + CONTROL "Rapid Fire",IDC_RAPID_FIRE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,232,37,44,10 + LTEXT "Sensitivity",IDC_LABEL_SENSITIVITY,202,51,42,8 + CONTROL "",IDC_SLIDER_SENSITIVITY,"msctls_trackbar32",WS_TABSTOP,240,51,131,17 + EDITTEXT IDC_AXIS_SENSITIVITY,372,53,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Dead Zone",IDC_LABEL_DEADZONE,202,71,42,8 + CONTROL "",IDC_SLIDER_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,71,131,17 + EDITTEXT IDC_AXIS_DEADZONE,372,73,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Skip Dead Zone",IDC_LABEL_SKIP_DEADZONE,202,92,42,16 + CONTROL "",IDC_SLIDER_SKIP_DEADZONE,"msctls_trackbar32",WS_TABSTOP,240,92,131,17 + EDITTEXT IDC_AXIS_SKIP_DEADZONE,372,94,33,12,ES_RIGHT | ES_READONLY | NOT WS_BORDER | NOT WS_TABSTOP,WS_EX_RTLREADING + LTEXT "Off",IDC_SKIP_DEADZONE_OFF,390,94,20,12 END IDD_GENERAL DIALOGEX 0, 0, 424, 283 @@ -471,43 +473,40 @@ BEGIN GROUPBOX "Input APIs",IDC_STATIC,7,6,410,133 GROUPBOX "Keyboard API",IDC_STATIC,16,16,192,51 CONTROL "Windows messaging (Recommended)",IDC_KB_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,22,28,134,10 - CONTROL "Raw input (XP and later only)",IDC_KB_RAW,"Button",BS_AUTORADIOBUTTON,22,40,112,10 + CONTROL "Raw input",IDC_KB_RAW,"Button",BS_AUTORADIOBUTTON,22,40,112,10 CONTROL "DirectInput",IDC_KB_DI,"Button",BS_AUTORADIOBUTTON,22,52,112,10 GROUPBOX "Game Device APIs",IDC_STATIC,16,70,191,62 CONTROL "DirectInput",IDC_G_DI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,82,65,10 - CONTROL "XInput (Xbox 360 controllers only)",IDC_G_XI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,94,125,10 + CONTROL "XInput",IDC_G_XI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,94,125,10 CONTROL "DualShock 3 native mode (Requires libusb)",IDC_G_DS3, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,106,151,10 CONTROL "Monitor when in background",IDC_BACKGROUND,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,22,118,106,10 - GROUPBOX "Mouse API",IDC_STATIC,216,16,192,74 + GROUPBOX "Mouse API",IDC_STATIC,216,16,192,85 CONTROL "Windows messaging (Recommended)",IDC_M_WM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,223,27,134,10 - CONTROL "Raw input (XP and later only)",IDC_M_RAW,"Button",BS_AUTORADIOBUTTON,223,39,112,10 + CONTROL "Raw input",IDC_M_RAW,"Button",BS_AUTORADIOBUTTON,223,39,112,10 CONTROL "DirectInput",IDC_M_DI,"Button",BS_AUTORADIOBUTTON,223,51,112,10 CONTROL "Disable",IDC_M_DISABLE,"Button",BS_AUTORADIOBUTTON,223,63,39,10 CONTROL "Start without mouse focus",IDC_MOUSE_UNFOCUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,75,97,10 - CONTROL "Always hide cursor",IDC_FORCE_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,323,75,71,10 - GROUPBOX "Advanced",IDC_STATIC,215,93,192,37 - CONTROL "Allow binding multiple PS2 controls to one PC control",IDC_MULTIPLE_BINDING, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,221,102,182,10 - CONTROL "Disable screensaver",IDC_DISABLE_SCREENSAVER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,286,115,80,10 - CONTROL "Enable logging",IDC_DEBUG_FILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,221,115,62,10 + CONTROL "Always hide cursor",IDC_FORCE_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,87,71,10 GROUPBOX "Pads",IDC_STATIC,7,142,410,62 CONTROL "Port 1 Multitap",IDC_MULTITAP1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,152,63,10 CONTROL "Port 2 Multitap",IDC_MULTITAP2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,164,63,10 + CONTROL "Multiple bindings",IDC_MULTIPLE_BINDING, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,176,63,10 CONTROL "",IDC_PAD_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_ALIGNLEFT | WS_TABSTOP,81,151,183,48,WS_EX_CLIENTEDGE COMBOBOX IDC_PAD_TYPE,270,151,140,60,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - CONTROL "Use analog mode if possible - PS1 only",IDC_ANALOG_START1, + CONTROL "Use analog mode if possible",IDC_ANALOG_START1, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,270,168,137,10 GROUPBOX "Device Diagnostics",IDC_STATIC,7,207,201,72 CONTROL "",IDC_DIAG_LIST,"SysListView32",LVS_LIST | LVS_SINGLESEL | LVS_SHOWSELALWAYS | LVS_NOSORTHEADER | WS_BORDER | WS_VSCROLL | WS_TABSTOP,14,217,187,57,WS_EX_CLIENTEDGE - GROUPBOX "Hacks",IDC_STATIC,216,207,201,46 - CONTROL "Send escape on window close",IDC_CLOSE_HACK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,217,113,10 - CONTROL "Exit emulator on window close",IDC_CLOSE_HACK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,228,112,10 + GROUPBOX "Hacks and advanced features",IDC_STATIC,216,207,201,46 + CONTROL "Exit emulator on window close",IDC_CLOSE_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,217,112,10 CONTROL "Safe fullscreen exit on escape",IDC_ESCAPE_FULLSCREEN_HACK, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,239,112,10 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,228,112,10 + CONTROL "Disable screensaver",IDC_DISABLE_SCREENSAVER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,223,239,112,10 CONTROL "Save state # in title",IDC_SAVE_STATE_TITLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,217,79,10 - CONTROL "Guitar Hero 2 Hack",IDC_GH2_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,228,76,10 - CONTROL "L3 Toggles Turbo",IDC_TURBO_KEY_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,239,70,10 + CONTROL "Guitar Hero 2 Hack",IDC_GH2_HACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,228,79,10 + CONTROL "Enable logging",IDC_DEBUG_FILE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,336,239,79,10 PUSHBUTTON "Load Bindings",ID_LOAD,283,259,62,15 PUSHBUTTON "Save Bindings",ID_SAVE,355,259,62,15 END diff --git a/plugins/LilyPad/Tooltips.cpp b/plugins/LilyPad/Tooltips.cpp index 4e3b6d3a8f..5e231f31b6 100644 --- a/plugins/LilyPad/Tooltips.cpp +++ b/plugins/LilyPad/Tooltips.cpp @@ -1,5 +1,5 @@ /* LilyPad - Pad plugin for PS2 Emulator - * Copyright (C) 2016 PCSX2 Dev Team/ChickenLiver + * Copyright (C) 2016-2017 PCSX2 Dev Team/ChickenLiver * * PCSX2 is free software: you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free @@ -63,6 +63,8 @@ LPWSTR dialog_message(int ID, bool *updateText) L"Double-click a device in the list or right-click it and select \"Test Device\" to display a continuously updated list of the state of all inputs on the selected device.\n" L"Use this option to check if all the inputs on a controller function properly.\n\n" L"Right-click and select \"Refresh\" to update the list of devices in case a recently connected device has not shown up yet."; + case IDC_G_XI: + return L"Xbox 360 controllers(and devices imitating it) only"; // Pad tabs case IDC_BINDINGS_LIST: return L"Shows a list of currently bound inputs of the selected Pad.\n\n" diff --git a/plugins/LilyPad/resource.h b/plugins/LilyPad/resource.h index 533f5818be..25938a492c 100644 --- a/plugins/LilyPad/resource.h +++ b/plugins/LilyPad/resource.h @@ -96,15 +96,15 @@ #define ID_RSTICK_LEFT 0x1117 #define ID_ANALOG 0x1118 #define ID_EXCLUDE 0x1119 -#define IDC_FORCEFEEDBACK 0x111B -#define IDC_FORCEFEEDBACK_FUNCTION 0x111C -#define ID_BIG_MOTOR 0x111D -#define ID_SMALL_MOTOR 0x111E -#define ID_FORCEFEEDBACK_BOX 0x111F -#define IDC_CONFIGURE_ON_BIND 0x1120 -#define IDC_DEVICE_SELECT 0x1121 -#define IDC_FACE_ANALOG 0x1122 #define ID_TURBO_KEY 0x111A +#define IDC_FORCEFEEDBACK 0x1130 +#define IDC_FORCEFEEDBACK_FUNCTION 0x1131 +#define ID_BIG_MOTOR 0x1132 +#define ID_SMALL_MOTOR 0x1133 +#define ID_FORCEFEEDBACK_BOX 0x1134 +#define IDC_CONFIGURE_ON_BIND 0x1135 +#define IDC_DEVICE_SELECT 0x1136 +#define IDC_FACE_ANALOG 0x1137 #define IDC_BINDINGS_LIST 0x1200 #define ID_SAVE 0x1201 #define ID_LOAD 0x1202