⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 appearance.h

📁 ReactOS是一些高手根据Windows XP的内核编写出的类XP。内核实现机理和API函数调用几乎相同。甚至可以兼容XP的程序。喜欢研究系统内核的人可以看一看。
💻 H
字号:

/* 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];
	DWORD Size[NUM_SIZES];
	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;
	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 advappearancedlg.c */
INT_PTR CALLBACK AdvAppearanceDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -