Skip to content

Commit 93c76ad

Browse files
committed
[DESK] Apply the Shell Icon Size properly
- Implement 3-state checkbox for the use of large icons - Add missing registry value write on applying a scheme - Misc: Update preview on saving "Effects" settings (for flat menus) CORE-12905
1 parent 174b9d6 commit 93c76ad

32 files changed

Lines changed: 67 additions & 29 deletions

‎dll/cpl/desk/appearance.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,8 @@ AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
242242
PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
243243
g->Scheme = g->SchemeAdv;
244244
g->bSchemeChanged = TRUE;
245+
246+
AppearancePage_UpdateThemePreview(hwndDlg, g);
245247
}
246248
break;
247249

‎dll/cpl/desk/effappdlg.c‎

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
#include "desk.h"
1010

11+
INT g_CustomIconSize;
12+
1113
/* Update all the controls with the current values for the selected screen element */
1214
static VOID
1315
EffAppearanceDlgUpdateControls(HWND hwndDlg, GLOBALS *g)
@@ -41,6 +43,11 @@ do { \
4143
SAVE_CHECKBOX(IDC_EFFAPPEARANCE_SMOOTHING, bFontSmoothing);
4244
RSET_COMBOBOX(IDC_EFFAPPEARANCE_SMOOTHINGTYPE, bFontSmoothing, uiFontSmoothingType - 1);
4345

46+
/* Large icons */
47+
state = SendDlgItemMessageW(hwndDlg, IDC_EFFAPPEARANCE_LARGEICONS, BM_GETCHECK, 0, 0);
48+
g->SchemeAdv.iIconSize = (state == BST_UNCHECKED ? 32 :
49+
(state == BST_CHECKED ? 48 : g_CustomIconSize));
50+
4451
/* Other checkboxes */
4552
SAVE_CHECKBOX(IDC_EFFAPPEARANCE_SETDROPSHADOW, bDropShadow);
4653
SAVE_CHECKBOX(IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, bDragFullWindows);
@@ -111,6 +118,19 @@ do { \
111118
FILL_COMBOBOX(IDC_EFFAPPEARANCE_SMOOTHINGTYPE, IDS_STANDARDEFFECT,
112119
IDS_CLEARTYPEEFFECT);
113120

121+
/* Large icons */
122+
if (g->SchemeAdv.iIconSize == 32)
123+
state = BST_UNCHECKED;
124+
else if (g->SchemeAdv.iIconSize == 48)
125+
state = BST_CHECKED;
126+
else
127+
{
128+
g_CustomIconSize = g->SchemeAdv.iIconSize;
129+
state = BST_INDETERMINATE;
130+
SendDlgItemMessageW(hwndDlg, IDC_EFFAPPEARANCE_LARGEICONS, BM_SETSTYLE, BS_AUTO3STATE, TRUE);
131+
}
132+
SendDlgItemMessageW(hwndDlg, IDC_EFFAPPEARANCE_LARGEICONS, BM_SETCHECK, state, 0);
133+
114134
/* Other checkboxes */
115135
INIT_CHECKBOX(IDC_EFFAPPEARANCE_SETDROPSHADOW, bDropShadow);
116136
INIT_CHECKBOX(IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, bDragFullWindows);
@@ -157,6 +177,7 @@ EffAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
157177

158178
case IDC_EFFAPPEARANCE_ANIMATION:
159179
case IDC_EFFAPPEARANCE_SMOOTHING:
180+
case IDC_EFFAPPEARANCE_LARGEICONS:
160181
case IDC_EFFAPPEARANCE_SETDROPSHADOW:
161182
case IDC_EFFAPPEARANCE_DRAGFULLWINDOWS:
162183
case IDC_EFFAPPEARANCE_KEYBOARDCUES:

‎dll/cpl/desk/lang/bg-BG.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ BEGIN
114114
AUTOCHECKBOX "&Използване на следния похват за изглаждане ръбовете на екранните шрифтове:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19//FIXME: text truncation. I used "&Изгладете ръбовете на екранните шрифтове чрез" for the backport
115115
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
116116
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
117-
AUTOCHECKBOX "Използван&е на големи значета", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
117+
AUTOCHECKBOX "Използван&е на големи значета", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
118118
AUTOCHECKBOX "Изобразяване на &сенки под изборницте", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
119119
AUTOCHECKBOX "Показване на съдържанието на &прозорците по време на влачене", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
120120
AUTOCHECKBOX "С&криване на подчертаването за клавиатурното насочване, до натискане на Alt", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19//FIXME: text truncation. I used "С&криване на осветяването за клавиатурата, докато не бъде натиснат Alt" for the backport

‎dll/cpl/desk/lang/cs-CZ.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ BEGIN
123123
AUTOCHECKBOX "P&oužít následující metodu vyhlazování &hran obrazovkových písem:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
124124
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
125125
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
126-
AUTOCHECKBOX "Použít &velké ikony", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
126+
AUTOCHECKBOX "Použít &velké ikony", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
127127
AUTOCHECKBOX "Zo&brazovat stíny pod nabídkami", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
128128
AUTOCHECKBOX "&Zobrazovat obsah okna během přesouvání", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
129129
AUTOCHECKBOX "&Skrýt podtržení písmen klávesových zkratek do stisknutí klávesy Alt", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/de-DE.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ BEGIN
114114
AUTOCHECKBOX "V&erwende folgende Kantenglättungsmethode für Bildschirmschriften:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
115115
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
116116
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
117-
AUTOCHECKBOX "Ve&rwende große Icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
117+
AUTOCHECKBOX "Ve&rwende große Icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
118118
AUTOCHECKBOX "Zeige Menüsch&atten", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
119119
AUTOCHECKBOX "Zeige &Fensterinhalt beim Verschieben", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
120120
AUTOCHECKBOX "Ver&stecke Unterstrich der Tastaturnavigation bis zum Druck der Alt-Taste", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/el-GR.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ BEGIN
114114
AUTOCHECKBOX "U&se the following method to smooth edges of screen fonts:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
115115
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
116116
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
117-
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
117+
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
118118
AUTOCHECKBOX "Show sh&adows under menus", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
119119
AUTOCHECKBOX "Show &window contents while dragging", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
120120
AUTOCHECKBOX "&Hide underlined letters for keyboard navigation until I press the Alt key", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/en-GB.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ BEGIN
114114
AUTOCHECKBOX "U&se the following method to smooth edges of screen fonts:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
115115
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
116116
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
117-
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
117+
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
118118
AUTOCHECKBOX "Show sh&adows under menus", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
119119
AUTOCHECKBOX "Show &window contents while dragging", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
120120
AUTOCHECKBOX "&Hide underlined letters for keyboard navigation until I press the Alt key", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/en-US.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ BEGIN
114114
AUTOCHECKBOX "U&se the following method to smooth edges of screen fonts:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
115115
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
116116
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
117-
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
117+
AUTOCHECKBOX "Us&e large icons", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
118118
AUTOCHECKBOX "Show sh&adows under menus", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
119119
AUTOCHECKBOX "Show &window contents while dragging", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
120120
AUTOCHECKBOX "&Hide underlined letters for keyboard navigation until I press the Alt key", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/es-ES.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ BEGIN
124124
AUTOCHECKBOX "U&sar el siguiente método para suavizar los bordes de las fuentes de pantalla:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
125125
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
126126
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
127-
AUTOCHECKBOX "Usar i&conos grandes", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
127+
AUTOCHECKBOX "Usar i&conos grandes", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
128128
AUTOCHECKBOX "Mostrar som&bras bajo los menús", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
129129
AUTOCHECKBOX "&Mostrar el contenido de la ventana mientras se arrastra", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
130130
AUTOCHECKBOX "&Ocultar el subrayado de acceso rápido hasta presionar la tecla Alt", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

‎dll/cpl/desk/lang/et-EE.rc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ BEGIN
121121
AUTOCHECKBOX "K&asuta ekraanifontide serva tasandamiseks järgmist meetodit:", IDC_EFFAPPEARANCE_SMOOTHING, 10, 42, 267, 19
122122
COMBOBOX IDC_EFFAPPEARANCE_SMOOTHINGTYPE, 20, 62, 95, 19, CBS_DROPDOWNLIST |
123123
CBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
124-
AUTOCHECKBOX "Ka&suta suuri ikoone", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP | WS_DISABLED
124+
AUTOCHECKBOX "Ka&suta suuri ikoone", IDC_EFFAPPEARANCE_LARGEICONS, 10, 80, 267, 19, WS_TABSTOP
125125
AUTOCHECKBOX "Kuva menüüde all &varjustus", IDC_EFFAPPEARANCE_SETDROPSHADOW, 10, 95, 267, 19
126126
AUTOCHECKBOX "Kuva lohistamise ajal akna &sisu", IDC_EFFAPPEARANCE_DRAGFULLWINDOWS, 10, 110, 267, 19
127127
AUTOCHECKBOX "&Peida kiirkla&hvide jaoks allakriipsutatud tähed muuteklahvi (Alt) vajutamiseni", IDC_EFFAPPEARANCE_KEYBOARDCUES, 10, 125, 267, 19

0 commit comments

Comments
 (0)