[KSPROXY]
[reactos.git] / reactos / dll / cpl / desk / settings.c
index 269a9ef..1ede0e7 100644 (file)
@@ -107,6 +107,7 @@ GetPossibleSettings(IN LPCTSTR DeviceName, OUT DWORD* pSettingsCount, OUT PSETTI
                        Current->dmPelsWidth = devmode.dmPelsWidth;
                        Current->dmPelsHeight = devmode.dmPelsHeight;
                        Current->dmBitsPerPel = devmode.dmBitsPerPel;
+                       Current->dmDisplayFrequency = devmode.dmDisplayFrequency;
                        while (Next != NULL && (
                               Next->dmPelsWidth < Current->dmPelsWidth ||
                               (Next->dmPelsWidth == Current->dmPelsWidth && Next->dmPelsHeight < Current->dmPelsHeight) ||
@@ -625,6 +626,7 @@ INT_PTR CALLBACK
 SettingsPageProc(IN HWND hwndDlg, IN UINT uMsg, IN WPARAM wParam, IN LPARAM lParam)
 {
        PGLOBAL_DATA pGlobalData;
+       TCHAR Message[1024], Title[256];
 
        pGlobalData = (PGLOBAL_DATA)GetWindowLongPtr(hwndDlg, DWLP_USER);
 
@@ -696,7 +698,8 @@ SettingsPageProc(IN HWND hwndDlg, IN UINT uMsg, IN WPARAM wParam, IN LPARAM lPar
                                        devmode.dmPelsWidth = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmPelsWidth;
                                        devmode.dmPelsHeight = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmPelsHeight;
                                        devmode.dmBitsPerPel = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmBitsPerPel;
-                                       devmode.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL;
+                                       devmode.dmDisplayFrequency = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmDisplayFrequency;
+                                       devmode.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY;
                                        rc = ChangeDisplaySettingsEx(
                                                pGlobalData->CurrentDisplayDevice->DeviceName,
                                                &devmode,
@@ -710,14 +713,16 @@ SettingsPageProc(IN HWND hwndDlg, IN UINT uMsg, IN WPARAM wParam, IN LPARAM lPar
                                                        pGlobalData->CurrentDisplayDevice->InitialSettings.dmPelsHeight = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmPelsHeight;
                                                        pGlobalData->CurrentDisplayDevice->InitialSettings.dmBitsPerPel = pGlobalData->CurrentDisplayDevice->CurrentSettings->dmBitsPerPel;
                                                        break;
-                                               case DISP_CHANGE_FAILED:
-                                                       MessageBox(NULL, TEXT("Failed to apply new settings..."), TEXT("Display settings"), MB_OK | MB_ICONSTOP);
-                                                       break;
                                                case DISP_CHANGE_RESTART:
-                                                       MessageBox(NULL, TEXT("You need to restart your computer to apply changes."), TEXT("Display settings"), MB_OK | MB_ICONINFORMATION);
+                                                       LoadString(hApplet, IDS_DISPLAY_SETTINGS, Title, sizeof(Title) / sizeof(TCHAR));
+                                                       LoadString(hApplet, IDS_APPLY_NEEDS_RESTART, Message, sizeof(Message) / sizeof (TCHAR));
+                                                       MessageBox(hwndDlg, Message, Title, MB_OK | MB_ICONINFORMATION);
                                                        break;
+                                               case DISP_CHANGE_FAILED:
                                                default:
-                                                       MessageBox(NULL, TEXT("Unknown error when applying new settings..."), TEXT("Display settings"), MB_OK | MB_ICONSTOP);
+                                                       LoadString(hApplet, IDS_DISPLAY_SETTINGS, Title, sizeof(Title) / sizeof(TCHAR));
+                                                       LoadString(hApplet, IDS_APPLY_FAILED, Message, sizeof(Message) / sizeof (TCHAR));
+                                                       MessageBox(hwndDlg, Message, Title, MB_OK | MB_ICONSTOP);
                                                        break;
                                        }
                                }