2 /* Some definitions for appearance page */
3 #define SIZE_BORDER_X 0
4 #define SIZE_BORDER_Y 1
5 #define SIZE_CAPTION_Y 2
8 #define SIZE_ICON_SPC_X 5
9 #define SIZE_ICON_SPC_Y 6
12 #define SIZE_SCROLL_X 9
13 #define SIZE_SCROLL_Y 10
14 #define SIZE_SMCAPTION_Y 11
16 #define FONT_CAPTION 0
17 #define FONT_SMCAPTION 1
18 #define FONT_HILIGHT 2
24 #define NUM_ELEMENTS 22
28 #define MAX_TEMPLATES 50
29 #define MAX_COLORNAMELENGTH 30
30 #define MAX_TEMPLATENAMELENTGH 80
32 /* Some typedefs for appearance */
34 /* Most (but not all) fields below correspond to HKCU\Control Panel\Desktop\UserPreferencesMask */
37 BOOL bActiveWindowTracking
;
39 BOOL bComboBoxAnimation
;
40 BOOL bListBoxSmoothScrolling
;
41 BOOL bGradientCaptions
;
43 BOOL bActiveWndTrkZorder
;
47 BOOL bTooltipAnimation
;
52 BOOL bDragFullWindows
;
53 UINT uiFontSmoothingType
;
58 COLORREF crColor
[NUM_COLORS
];
59 LOGFONT lfFont
[NUM_FONTS
];
60 UINT64 Size
[NUM_SIZES
];
72 TCHAR strDisplayName
[MAX_TEMPLATENAMELENTGH
];
73 TCHAR strLegacyName
[MAX_TEMPLATENAMELENTGH
];
87 /* This is the global structure used to store the current values.
88 A pointer of this get's passed to the functions either directly
89 or by passing hwnd and getting the pointer by GetWindowLongPtr */
90 typedef struct tagGLOBALS
92 THEME_PRESET ThemeTemplates
[MAX_TEMPLATES
];
95 INT ColorList
[NUM_COLORS
];
98 COLORREF crCOLOR_BTNFACE
;
99 COLORREF crCOLOR_BTNSHADOW
;
100 COLORREF crCOLOR_BTNTEXT
;
101 COLORREF crCOLOR_BTNHIGHLIGHT
;
107 extern const ASSIGNMENT g_Assignment
[NUM_ELEMENTS
];
108 extern const TCHAR g_RegColorNames
[NUM_COLORS
][MAX_COLORNAMELENGTH
];
109 extern const INT g_SizeMetric
[NUM_SIZES
];
111 /* prototypes for appearance.c */
112 INT_PTR CALLBACK
AppearancePageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
114 /* prototypes for advappdlg.c */
115 INT_PTR CALLBACK
AdvAppearanceDlgProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
117 /* prototypes for effappdlg.c */
118 INT_PTR CALLBACK
EffAppearanceDlgProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);