diff --git a/base/applications/magnify/magnifier.c b/base/applications/magnify/magnifier.c index 13a0a3cd190..3b3cc924e90 100644 --- a/base/applications/magnify/magnifier.c +++ b/base/applications/magnify/magnifier.c @@ -404,8 +404,8 @@ void Draw(HDC aDc) DeleteDC(hdcOffscreen); } - sourceWidth = AppWidth / iZoom; - sourceHeight = AppHeight / iZoom; + sourceWidth = AppWidth / uiZoom; + sourceHeight = AppHeight / uiZoom; /* Create a memory DC compatible with client area DC */ hdcOffscreen = CreateCompatibleDC(desktopHdc); @@ -882,7 +882,7 @@ INT_PTR CALLBACK OptionsProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lPar break; case WM_INITDIALOG: { - // Add the zoom items... + /* Add the zoom items */ SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("1")); SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("2")); SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("3")); @@ -891,8 +891,10 @@ INT_PTR CALLBACK OptionsProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lPar SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("6")); SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("7")); SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("8")); + SendDlgItemMessage(hDlg, IDC_ZOOM, CB_ADDSTRING, 0, (LPARAM)("9")); - SendDlgItemMessage(hDlg, IDC_ZOOM, CB_SETCURSEL, iZoom - 1, 0); + if (uiZoom >= 1 && uiZoom <= 9) + SendDlgItemMessage(hDlg, IDC_ZOOM, CB_SETCURSEL, uiZoom - 1, 0); if (bFollowMouse) SendDlgItemMessage(hDlg,IDC_FOLLOWMOUSECHECK,BM_SETCHECK , wParam ,0); @@ -936,7 +938,10 @@ INT_PTR CALLBACK OptionsProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lPar /* Get index of current selection and the text of that selection */ int currentSelectionIndex = ComboBox_GetCurSel(hCombo); ComboBox_GetLBText(hCombo, currentSelectionIndex, currentZoomValue); - iZoom = _ttoi(currentZoomValue); + uiZoom = (UINT)_ttoi(currentZoomValue); + /* The zoom factor cannot be smaller than 1 (and not zero) or greater than 9 */ + if (uiZoom < 1 || uiZoom > 9) + uiZoom = 1; /* Trigger the Draw function to rezoom (which will be set false automatically after rezooming) */ bRecreateOffscreenDC = TRUE; diff --git a/base/applications/magnify/magnifier.h b/base/applications/magnify/magnifier.h index 7f29006b834..01e742d4ff1 100644 --- a/base/applications/magnify/magnifier.h +++ b/base/applications/magnify/magnifier.h @@ -24,7 +24,7 @@ #include #include -extern int iZoom; +extern UINT uiZoom; struct _AppBarConfig_t { DWORD cbSize; diff --git a/base/applications/magnify/settings.c b/base/applications/magnify/settings.c index a6d4cf0af53..ab6c585b0ab 100644 --- a/base/applications/magnify/settings.c +++ b/base/applications/magnify/settings.c @@ -12,7 +12,7 @@ #include #include -int iZoom = 3; +UINT uiZoom = 3; BOOL bShowWarning = TRUE; @@ -50,38 +50,38 @@ void LoadSettings() } } - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryMagLevel"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) { if (value >= 0 && value <= 9) - iZoom = value; + uiZoom = value; } - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("ShowWarning"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bShowWarning = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryInvertColors"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bInvertColors = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryStartMinimized"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bStartMinimized = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryTrackCursor"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bFollowMouse = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryTrackFocus"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bFollowFocus = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryTrackSecondaryFocus"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bFollowFocus = (value == 0 ? FALSE : TRUE); - len = 4; + len = sizeof(value); if (RegQueryValueEx(hkey, _T("StationaryTrackText"), 0, 0, (BYTE *)&value, &len) == ERROR_SUCCESS) bFollowCaret = (value == 0 ? FALSE : TRUE); @@ -98,7 +98,7 @@ void SaveSettings() { RegSetValueEx(hkey, _T("AppBar"), 0, REG_BINARY, (BYTE *)&AppBarConfig, sizeof(AppBarConfig)); - value = iZoom; + value = uiZoom; RegSetValueEx(hkey, _T("StationaryMagLevel"), 0, REG_DWORD, (BYTE *)&value, sizeof(value)); value = bShowWarning;