2007-02-12 03:32:40 +00:00
|
|
|
|
|
|
|
/* 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 */
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
COLORREF crColor[NUM_COLORS];
|
|
|
|
LOGFONT lfFont[NUM_FONTS];
|
2007-10-16 05:56:44 +00:00
|
|
|
UINT64 Size[NUM_SIZES];
|
2007-02-12 03:32:40 +00:00
|
|
|
BOOL bFlatMenus;
|
|
|
|
BOOL bHasChanged;
|
|
|
|
BOOL bIsCustom;
|
|
|
|
} 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;
|
2007-02-17 21:40:39 +00:00
|
|
|
INT ColorList[NUM_COLORS];
|
2007-02-12 03:32:40 +00:00
|
|
|
HBITMAP hbmpColor[3];
|
2007-02-17 21:40:39 +00:00
|
|
|
INT CurrentElement;
|
2007-02-12 03:32:40 +00:00
|
|
|
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];
|
2007-02-17 21:40:39 +00:00
|
|
|
extern const INT g_SizeMetric[NUM_SIZES];
|
2007-02-12 03:32:40 +00:00
|
|
|
|
|
|
|
/* prototypes for appearance.c */
|
|
|
|
INT_PTR CALLBACK AppearancePageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
|
|
|
|
|
|
/* prototypes for advappearancedlg.c */
|
|
|
|
INT_PTR CALLBACK AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|