From: Rémi Bernon rbernon@codeweavers.com
--- dlls/joy.cpl/joy.rc | 16 +++++++------- dlls/joy.cpl/main.c | 47 ++++++++++++++++++++--------------------- dlls/joy.cpl/resource.h | 14 ++++++------ 3 files changed, 38 insertions(+), 39 deletions(-)
diff --git a/dlls/joy.cpl/joy.rc b/dlls/joy.cpl/joy.rc index 0d4c719166d..46b0eae532c 100644 --- a/dlls/joy.cpl/joy.rc +++ b/dlls/joy.cpl/joy.rc @@ -49,19 +49,19 @@ FONT 8, "Ms Shell Dlg" LTEXT "After disabling or enabling a device, the connected joysticks won't be updated here until you restart this applet.", IDC_STATIC, 10, 270, 200, 25 }
-IDD_TEST DIALOG 0, 0, 320, 300 +IDD_TEST_DI DIALOG 0, 0, 320, 300 STYLE WS_CAPTION | WS_CHILD | WS_DISABLED -CAPTION "Test Joystick" +CAPTION "DInput" FONT 8, "Ms Shell Dlg" { - COMBOBOX IDC_TESTSELECTCOMBO, 15, 10, 291, 60, CBS_DROPDOWNLIST | CBS_HASSTRINGS + COMBOBOX IDC_DI_DEVICES, 15, 10, 291, 60, CBS_DROPDOWNLIST | CBS_HASSTRINGS GROUPBOX "Buttons", IDC_STATIC, 15, 100, 291, 70 - GROUPBOX "", IDC_TESTGROUPXY, 15, 30, 60, 60 - GROUPBOX "", IDC_TESTGROUPRXRY, 92, 30, 60, 60 - GROUPBOX "", IDC_TESTGROUPZRZ, 169, 30, 60, 60 - GROUPBOX "", IDC_TESTGROUPPOV, 246, 30, 60, 60 + GROUPBOX "", IDC_DI_AXIS_X_Y, 15, 30, 60, 60 + GROUPBOX "", IDC_DI_AXIS_RX_RY, 92, 30, 60, 60 + GROUPBOX "", IDC_DI_AXIS_Z_RZ, 169, 30, 60, 60 + GROUPBOX "", IDC_DI_AXIS_POV_0, 246, 30, 60, 60 LTEXT "Force Feedback Effect", IDC_STATIC, 15, 180, 291, 10 - LISTBOX IDC_FFEFFECTLIST, 15, 190, 291, 70, WS_TABSTOP | WS_VSCROLL | LBS_NOTIFY + LISTBOX IDC_DI_EFFECTS, 15, 190, 291, 70, WS_TABSTOP | WS_VSCROLL | LBS_NOTIFY LTEXT "Press any button in the controller to activate the chosen effect. The effect direction can be changed with the controller axis.", IDC_STATIC, 15, 260, 291, 25 } diff --git a/dlls/joy.cpl/main.c b/dlls/joy.cpl/main.c index e5377a71aa9..279b5c07e22 100644 --- a/dlls/joy.cpl/main.c +++ b/dlls/joy.cpl/main.c @@ -714,8 +714,8 @@ static void initialize_effects_list( HWND hwnd, IDirectInputDevice8W *device )
IDirectInputDevice8_EnumEffects( device, enum_effects, device, 0 );
- SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_RESETCONTENT, 0, 0); - SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_ADDSTRING, 0, (LPARAM)L"None"); + SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_RESETCONTENT, 0, 0 ); + SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_ADDSTRING, 0, (LPARAM)L"None" );
LIST_FOR_EACH_ENTRY( effect, &effects, struct effect, entry ) { @@ -724,7 +724,7 @@ static void initialize_effects_list( HWND hwnd, IDirectInputDevice8W *device )
if (FAILED(IDirectInputEffect_GetEffectGuid( effect->effect, &guid ))) continue; if (FAILED(IDirectInputDevice8_GetEffectInfo( device, &info, &guid ))) continue; - SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_ADDSTRING, 0, (LPARAM)(info.tszName + 5)); + SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_ADDSTRING, 0, (LPARAM)( info.tszName + 5 ) ); } }
@@ -737,7 +737,7 @@ static void test_handle_joychange(HWND hwnd, struct JoystickData *data)
set_selected_device( NULL );
- i = SendDlgItemMessageW( hwnd, IDC_TESTSELECTCOMBO, CB_GETCURSEL, 0, 0 ); + i = SendDlgItemMessageW( hwnd, IDC_DI_DEVICES, CB_GETCURSEL, 0, 0 ); if (i < 0) return;
entry = list_head( &devices ); @@ -760,7 +760,7 @@ static void ff_handle_effectchange( HWND hwnd )
set_selected_effect( NULL );
- sel = SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_GETCURSEL, 0, 0) - 1; + sel = SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_GETCURSEL, 0, 0 ) - 1; if (sel < 0) return;
entry = list_head( &effects ); @@ -825,11 +825,10 @@ static void draw_joystick_buttons(HWND hwnd, struct JoystickData* data)
static void draw_joystick_axes(HWND hwnd, struct JoystickData* data) { + static const WCHAR *axes_names[TEST_MAX_AXES] = {L"X,Y", L"Rx,Ry", L"Z,Rz", L"POV"}; + static const DWORD axes_idc[TEST_MAX_AXES] = {IDC_DI_AXIS_X_Y, IDC_DI_AXIS_RX_RY, IDC_DI_AXIS_Z_RZ, IDC_DI_AXIS_POV_0}; int i; HINSTANCE hinst = (HINSTANCE) GetWindowLongPtrW(hwnd, GWLP_HINSTANCE); - static const WCHAR axes_names[TEST_MAX_AXES][7] = { L"X,Y", L"Rx,Ry", L"Z,Rz", L"POV"}; - static const DWORD axes_idc[TEST_MAX_AXES] = { IDC_TESTGROUPXY, IDC_TESTGROUPRXRY, - IDC_TESTGROUPZRZ, IDC_TESTGROUPPOV };
for (i = 0; i < TEST_MAX_AXES; i++) { @@ -853,17 +852,17 @@ static void draw_joystick_axes(HWND hwnd, struct JoystickData* data) * test_dlgproc [internal] * */ -static void refresh_test_joystick_list(HWND hwnd, struct JoystickData *data) +static void di_update_select_combo( HWND hwnd ) { struct device *entry;
- SendDlgItemMessageW(hwnd, IDC_TESTSELECTCOMBO, CB_RESETCONTENT, 0, 0); + SendDlgItemMessageW( hwnd, IDC_DI_DEVICES, CB_RESETCONTENT, 0, 0 );
LIST_FOR_EACH_ENTRY( entry, &devices, struct device, entry ) { DIDEVICEINSTANCEW info = {.dwSize = sizeof(DIDEVICEINSTANCEW)}; if (FAILED(IDirectInputDevice8_GetDeviceInfo( entry->device, &info ))) continue; - SendDlgItemMessageW( hwnd, IDC_TESTSELECTCOMBO, CB_ADDSTRING, 0, (LPARAM)info.tszInstanceName ); + SendDlgItemMessageW( hwnd, IDC_DI_DEVICES, CB_ADDSTRING, 0, (LPARAM)info.tszInstanceName ); } }
@@ -879,7 +878,7 @@ static INT_PTR CALLBACK test_dlgproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM { data = (struct JoystickData*) ((PROPSHEETPAGEW*)lparam)->lParam;
- refresh_test_joystick_list(hwnd, data); + di_update_select_combo( hwnd ); draw_joystick_buttons(hwnd, data); draw_joystick_axes(hwnd, data);
@@ -889,16 +888,16 @@ static INT_PTR CALLBACK test_dlgproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM case WM_COMMAND: switch(wparam) { - case MAKEWPARAM(IDC_TESTSELECTCOMBO, CBN_SELCHANGE): - test_handle_joychange(hwnd, data); + case MAKEWPARAM( IDC_DI_DEVICES, CBN_SELCHANGE ): + test_handle_joychange( hwnd, data );
- SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_SETCURSEL, 0, 0); - ff_handle_effectchange( hwnd ); - break; + SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_SETCURSEL, 0, 0 ); + ff_handle_effectchange( hwnd ); + break;
- case MAKEWPARAM(IDC_FFEFFECTLIST, LBN_SELCHANGE): - ff_handle_effectchange( hwnd ); - break; + case MAKEWPARAM( IDC_DI_EFFECTS, LBN_SELCHANGE ): + ff_handle_effectchange( hwnd ); + break; } return TRUE;
@@ -909,15 +908,15 @@ static INT_PTR CALLBACK test_dlgproc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM { DWORD tid;
- refresh_test_joystick_list(hwnd, data); + di_update_select_combo( hwnd );
data->stop = FALSE;
/* Set the first joystick as default */ - SendDlgItemMessageW(hwnd, IDC_TESTSELECTCOMBO, CB_SETCURSEL, 0, 0); + SendDlgItemMessageW( hwnd, IDC_DI_DEVICES, CB_SETCURSEL, 0, 0 ); test_handle_joychange(hwnd, data);
- SendDlgItemMessageW(hwnd, IDC_FFEFFECTLIST, LB_SETCURSEL, 0, 0); + SendDlgItemMessageW( hwnd, IDC_DI_EFFECTS, LB_SETCURSEL, 0, 0 ); ff_handle_effectchange( hwnd );
thread = CreateThread(NULL, 0, input_thread, (void*) data, 0, &tid); @@ -997,7 +996,7 @@ static void display_cpl_sheets(HWND parent, struct JoystickData *data)
psp[id].dwSize = sizeof (PROPSHEETPAGEW); psp[id].hInstance = hcpl; - psp[id].u.pszTemplate = MAKEINTRESOURCEW(IDD_TEST); + psp[id].u.pszTemplate = MAKEINTRESOURCEW(IDD_TEST_DI); psp[id].pfnDlgProc = test_dlgproc; psp[id].lParam = (INT_PTR) data; id++; diff --git a/dlls/joy.cpl/resource.h b/dlls/joy.cpl/resource.h index c15f8dfbdeb..74a81d74cf0 100644 --- a/dlls/joy.cpl/resource.h +++ b/dlls/joy.cpl/resource.h @@ -35,7 +35,7 @@ #define IDC_STATIC -1
#define IDD_LIST 1000 -#define IDD_TEST 1001 +#define IDD_TEST_DI 1001
#define IDC_JOYSTICKLIST 2000 #define IDC_DISABLEDLIST 2001 @@ -45,12 +45,12 @@ #define IDC_BUTTONRESET 2012 #define IDC_BUTTONOVERRIDE 2013
-#define IDC_TESTSELECTCOMBO 2100 -#define IDC_TESTGROUPXY 2101 -#define IDC_TESTGROUPRXRY 2102 -#define IDC_TESTGROUPZRZ 2103 -#define IDC_TESTGROUPPOV 2104 -#define IDC_FFEFFECTLIST 2105 +#define IDC_DI_DEVICES 2100 +#define IDC_DI_AXIS_X_Y 2101 +#define IDC_DI_AXIS_RX_RY 2102 +#define IDC_DI_AXIS_Z_RZ 2103 +#define IDC_DI_AXIS_POV_0 2104 +#define IDC_DI_EFFECTS 2105
#define ICO_MAIN 100