From 979022ff03c6f2f43d36fdcad436cf01dc1c6578 Mon Sep 17 00:00:00 2001 From: Christoph von Wittich Date: Mon, 13 Apr 2015 09:53:35 +0000 Subject: [PATCH] [CALC] only update the layout when necessary svn path=/trunk/; revision=67185 --- reactos/base/applications/calc/winmain.c | 63 ++++++++++++++---------- 1 file changed, 36 insertions(+), 27 deletions(-) diff --git a/reactos/base/applications/calc/winmain.c b/reactos/base/applications/calc/winmain.c index 4100ee16a40..5879c1ec985 100644 --- a/reactos/base/applications/calc/winmain.c +++ b/reactos/base/applications/calc/winmain.c @@ -1346,40 +1346,49 @@ static INT_PTR CALLBACK DlgMainProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) #endif return TRUE; case IDM_VIEW_STANDARD: - calc.layout = CALC_LAYOUT_STANDARD; - calc.action = IDM_VIEW_STANDARD; - DestroyWindow(hWnd); - save_config(); + if (calc.layout != CALC_LAYOUT_STANDARD) + { + calc.layout = CALC_LAYOUT_STANDARD; + calc.action = IDM_VIEW_STANDARD; + DestroyWindow(hWnd); + save_config(); - CheckMenuRadioItem(GetMenu(hWnd), - IDM_VIEW_STANDARD, - IDM_VIEW_CONVERSION, - IDM_VIEW_STANDARD, - MF_BYCOMMAND); + CheckMenuRadioItem(GetMenu(hWnd), + IDM_VIEW_STANDARD, + IDM_VIEW_CONVERSION, + IDM_VIEW_STANDARD, + MF_BYCOMMAND); + } return TRUE; case IDM_VIEW_SCIENTIFIC: - calc.layout = CALC_LAYOUT_SCIENTIFIC; - calc.action = IDM_VIEW_SCIENTIFIC; - DestroyWindow(hWnd); - save_config(); + if (calc.layout != CALC_LAYOUT_SCIENTIFIC) + { + calc.layout = CALC_LAYOUT_SCIENTIFIC; + calc.action = IDM_VIEW_SCIENTIFIC; + DestroyWindow(hWnd); + save_config(); - CheckMenuRadioItem(GetMenu(hWnd), - IDM_VIEW_STANDARD, - IDM_VIEW_CONVERSION, - IDM_VIEW_SCIENTIFIC, - MF_BYCOMMAND); + CheckMenuRadioItem(GetMenu(hWnd), + IDM_VIEW_STANDARD, + IDM_VIEW_CONVERSION, + IDM_VIEW_SCIENTIFIC, + MF_BYCOMMAND); + } return TRUE; case IDM_VIEW_CONVERSION: - calc.layout = CALC_LAYOUT_CONVERSION; - calc.action = IDM_VIEW_CONVERSION; - DestroyWindow(hWnd); - save_config(); + if (calc.layout != CALC_LAYOUT_CONVERSION) + { + calc.layout = CALC_LAYOUT_CONVERSION; + calc.action = IDM_VIEW_CONVERSION; + DestroyWindow(hWnd); + save_config(); - CheckMenuRadioItem(GetMenu(hWnd), - IDM_VIEW_STANDARD, - IDM_VIEW_CONVERSION, - IDM_VIEW_CONVERSION, - MF_BYCOMMAND); + CheckMenuRadioItem(GetMenu(hWnd), + IDM_VIEW_STANDARD, + IDM_VIEW_CONVERSION, + IDM_VIEW_CONVERSION, + MF_BYCOMMAND); + } return TRUE; case IDM_VIEW_HEX: case IDM_VIEW_DEC: