[KSPROXY]
[reactos.git] / reactos / dll / cpl / desk / appearance.h
index 308b4d3..9d50975 100644 (file)
-\r
-/* Some definitions for appearance page */\r
-#define SIZE_BORDER_X 0\r
-#define SIZE_BORDER_Y 1\r
-#define SIZE_CAPTION_Y 2\r
-#define SIZE_ICON_X 3\r
-#define SIZE_ICON_Y 4\r
-#define SIZE_ICON_SPC_X 5\r
-#define SIZE_ICON_SPC_Y 6\r
-#define SIZE_MENU_X 7\r
-#define SIZE_MENU_Y 8\r
-#define SIZE_SCROLL_X 9\r
-#define SIZE_SCROLL_Y 10\r
-#define SIZE_SMCAPTION_Y 11\r
-\r
-#define FONT_CAPTION 0\r
-#define FONT_SMCAPTION 1\r
-#define FONT_HILIGHT 2\r
-#define FONT_MENU 2\r
-#define FONT_ICON 3\r
-#define FONT_INFO 4\r
-#define FONT_DIALOG 5\r
-\r
-#define NUM_ELEMENTS 22\r
-#define NUM_FONTS 6\r
-#define NUM_SIZES 13\r
-#define NUM_COLORS 31\r
-#define MAX_TEMPLATES 50\r
-#define MAX_COLORNAMELENGTH 30\r
-#define MAX_TEMPLATENAMELENTGH 80\r
-\r
-/* Some typedefs for appearance */\r
-typedef struct\r
-{\r
-       COLORREF crColor[NUM_COLORS];\r
-       LOGFONT lfFont[NUM_FONTS];\r
-       DWORD Size[NUM_SIZES];\r
-       BOOL bFlatMenus;\r
-       BOOL bHasChanged;\r
-       BOOL bIsCustom;\r
-} THEME;\r
-\r
-typedef struct\r
-{\r
-       TCHAR strKeyName[4];\r
-       TCHAR strSizeName[4];\r
-       TCHAR strDisplayName[MAX_TEMPLATENAMELENTGH];\r
-       TCHAR strLegacyName[MAX_TEMPLATENAMELENTGH];\r
-       INT NumSizes;\r
-} THEME_PRESET;\r
-\r
-typedef struct\r
-{\r
-       int Size;\r
-       int Size2;\r
-       int Color1;\r
-       int Color2;\r
-       int Font;\r
-       int FontColor;\r
-} ASSIGNMENT;\r
-\r
-/* This is the global structure used to store the current values.\r
-   A pointer of this get's passed to the functions either directly\r
-   or by passing hwnd and getting the pointer by GetWindowLongPtr */\r
-typedef struct tagGLOBALS\r
-{\r
-       THEME_PRESET ThemeTemplates[MAX_TEMPLATES];\r
-       THEME Theme;\r
-       THEME ThemeAdv;\r
-       INT ColorList[NUM_COLORS];\r
-       HBITMAP hbmpColor[3];\r
-       INT CurrentElement;\r
-       COLORREF crCOLOR_BTNFACE;\r
-       COLORREF crCOLOR_BTNSHADOW;\r
-       COLORREF crCOLOR_BTNTEXT;\r
-       COLORREF crCOLOR_BTNHIGHLIGHT;\r
-       HFONT hBoldFont;\r
-       HFONT hItalicFont;\r
-} GLOBALS;\r
-\r
-\r
-extern const ASSIGNMENT g_Assignment[NUM_ELEMENTS];\r
-extern const TCHAR g_RegColorNames[NUM_COLORS][MAX_COLORNAMELENGTH];\r
-extern const INT g_SizeMetric[NUM_SIZES];\r
-\r
-/* prototypes for appearance.c */\r
-INT_PTR CALLBACK AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);\r
-\r
-/* prototypes for advappearancedlg.c */\r
-INT_PTR CALLBACK AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);\r
+
+/* Some definitions for appearance page */
+#define SIZE_BORDER_X 0
+#define SIZE_BORDER_Y 1
+#define SIZE_CAPTION_Y 2
+#define SIZE_ICON_X 3
+#define SIZE_ICON_Y 4
+#define SIZE_ICON_SPC_X 5
+#define SIZE_ICON_SPC_Y 6
+#define SIZE_MENU_X 7
+#define SIZE_MENU_Y 8
+#define SIZE_SCROLL_X 9
+#define SIZE_SCROLL_Y 10
+#define SIZE_SMCAPTION_Y 11
+
+#define FONT_CAPTION 0
+#define FONT_SMCAPTION 1
+#define FONT_HILIGHT 2
+#define FONT_MENU 2
+#define FONT_ICON 3
+#define FONT_INFO 4
+#define FONT_DIALOG 5
+
+#define NUM_ELEMENTS 22
+#define NUM_FONTS 6
+#define NUM_SIZES 13
+#define NUM_COLORS 31
+#define MAX_TEMPLATES 50
+#define MAX_COLORNAMELENGTH 30
+#define MAX_TEMPLATENAMELENTGH 80
+
+/* Some typedefs for appearance */
+
+/* Most (but not all) fields below correspond to HKCU\Control Panel\Desktop\UserPreferencesMask */
+typedef struct
+{
+       BOOL bActiveWindowTracking;
+       BOOL bMenuAnimation;
+       BOOL bComboBoxAnimation;
+       BOOL bListBoxSmoothScrolling;
+       BOOL bGradientCaptions;
+       BOOL bKeyboardCues;
+       BOOL bActiveWndTrkZorder;
+       BOOL bHotTracking;
+       BOOL bMenuFade;
+       BOOL bSelectionFade;
+       BOOL bTooltipAnimation;
+       BOOL bTooltipFade;
+       BOOL bCursorShadow;
+       BOOL bUiEffects;
+       BOOL bFontSmoothing;
+       BOOL bDragFullWindows;
+       UINT uiFontSmoothingType;
+} EFFECTS;
+
+typedef struct
+{
+       COLORREF crColor[NUM_COLORS];
+       LOGFONT lfFont[NUM_FONTS];
+       UINT64 Size[NUM_SIZES];
+       INT Id;
+       BOOL bFlatMenus;
+       BOOL bHasChanged;
+       BOOL bIsCustom;
+       EFFECTS Effects;
+} THEME;
+
+typedef struct
+{
+       TCHAR strKeyName[4];
+       TCHAR strSizeName[4];
+       TCHAR strDisplayName[MAX_TEMPLATENAMELENTGH];
+       TCHAR strLegacyName[MAX_TEMPLATENAMELENTGH];
+       INT NumSizes;
+} THEME_PRESET;
+
+typedef struct
+{
+       int Size;
+       int Size2;
+       int Color1;
+       int Color2;
+       int Font;
+       int FontColor;
+} ASSIGNMENT;
+
+/* This is the global structure used to store the current values.
+   A pointer of this get's passed to the functions either directly
+   or by passing hwnd and getting the pointer by GetWindowLongPtr */
+typedef struct tagGLOBALS
+{
+       THEME_PRESET ThemeTemplates[MAX_TEMPLATES];
+       THEME Theme;
+       THEME ThemeAdv;
+       INT ColorList[NUM_COLORS];
+       HBITMAP hbmpColor[3];
+       INT CurrentElement;
+       COLORREF crCOLOR_BTNFACE;
+       COLORREF crCOLOR_BTNSHADOW;
+       COLORREF crCOLOR_BTNTEXT;
+       COLORREF crCOLOR_BTNHIGHLIGHT;
+       HFONT hBoldFont;
+       HFONT hItalicFont;
+} GLOBALS;
+
+
+extern const ASSIGNMENT g_Assignment[NUM_ELEMENTS];
+extern const TCHAR g_RegColorNames[NUM_COLORS][MAX_COLORNAMELENGTH];
+extern const INT g_SizeMetric[NUM_SIZES];
+
+/* prototypes for appearance.c */
+INT_PTR CALLBACK AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
+
+/* prototypes for advappdlg.c */
+INT_PTR CALLBACK AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
+
+/* prototypes for effappdlg.c */
+INT_PTR CALLBACK EffAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);