windows-nt/Source/XPSP1/NT/shell/osshell/accessib/accwiz/desk.h
2020-09-26 16:20:57 +08:00

143 lines
4.1 KiB
C

//Copyright (c) 1997-2000 Microsoft Corporation
#ifdef ARRAYSIZE
#undef ARRAYSIZE
#endif
#ifdef SIZEOF
#undef SIZEOF
#endif
#define CCH_NONE 20 /* ARRAYSIZE( "(None)" ), big enough for German */
#define CCH_CLOSE 20 /* ARRAYSIZE( "Close" ), big enough for German */
#define CMSEC_COVER_WINDOW_TIMEOUT (15 * 1000) // 15 second timeout
#define ID_CVRWND_TIMER 0x96F251CC // somewhat uniq id
// information about the monitor bitmap
// x, y, dx, dy define the size of the "screen" part of the bitmap
// the RGB is the color of the screen's desktop
// these numbers are VERY hard-coded to a monitor bitmap
#define MON_X 16
#define MON_Y 17
#define MON_DX 152
#define MON_DY 112
#define MON_RGB RGB(0, 128, 128)
#define MON_TRAY 8
#define MIN_MINUTES 1
#define MAX_MINUTES 60
#define BUFFER_SIZE 400
#define MAX_METHODS 100
VOID RefreshColors (void);
BOOL DeskInitCpl(void);
void DeskShowPropSheet( HINSTANCE hInst, HWND hwndParent, LPCTSTR szCmdLine );
BOOL APIENTRY BackgroundDlgProc( HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
BOOL APIENTRY ScreenSaverDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
BOOL APIENTRY AppearanceDlgProc( HWND hDlg, UINT message, UINT wParam, LONG lParam);
BOOL CALLBACK DisplayPageProc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
BOOL FAR GetMonitorSettingsPage(LPPROPSHEETPAGE psp, int iDevice);
BOOL APIENTRY DeskDefPropPageProc( HWND hDlg, UINT message, UINT wParam, LONG lParam);
LONG WINAPI MyStrToLong(LPCTSTR sz);
// background previewer includes
#define DIBERR_SUCCESS 1 // successful open
#define DIBERR_NOOPEN -1 // file could not be opened
#define DIBERR_INVALID -2 // file is not a valid bitmap
#define BP_NEWPAT 0x01 // pattern changed
#define BP_NEWWALL 0x02 // wallpaper changed
#define BP_TILE 0x04 // tile the wallpaper (center otherwise)
#define BP_REINIT 0x08 // reload the image (system colors changed)
#define WM_SETBACKINFO (WM_USER + 1)
#define BACKPREV_CLASS TEXT("BackgroundPreview")
#define LOOKPREV_CLASS TEXT("LookPreview")
BOOL FAR PASCAL RegisterBackPreviewClass(HINSTANCE hInst);
BOOL FAR PASCAL RegisterLookPreviewClass(HINSTANCE hInst);
HBITMAP FAR LoadMonitorBitmap( BOOL bFillDesktop );
#ifdef UNICODE
UINT WinExecN( LPCTSTR lpCmdLine, UINT uCmdShow );
#else
// If we're on Win95, then just use the ANSI-only WinExec instead of
// rolling our own
# define WinExecN WinExec
#endif
#define SETTINGSPAGE_DEFAULT -1
#define SETTINGSPAGE_FALLBACK 0
#define Assert(p) /* nothing */
#define ARRAYSIZE( a ) (sizeof(a) / sizeof(a[0]))
#define SIZEOF( a ) sizeof(a)
//
// CreateCoverWindow
//
// creates a window which obscures the display
// flags:
// 0 means erase to black
// COVER_NOPAINT means "freeze" the display
//
// just post it a WM_CLOSE when you're done with it
//
#define COVER_NOPAINT (0x1)
//
HWND FAR PASCAL CreateCoverWindow( DWORD flags );
//
//
// Macro to replace MAKEPOINT() since points now have 32 bit x & y
//
#define LPARAM2POINT( lp, ppt ) \
((ppt)->x = LOWORD(lp), (ppt)->y = HIWORD(lp))
//
// Globals
//
extern TCHAR g_szNULL[];
extern TCHAR g_szNone[CCH_NONE];
extern TCHAR g_szClose[CCH_CLOSE];
extern TCHAR g_szControlIni[];
extern TCHAR g_szPatterns[];
extern TCHAR g_szCurPattern[]; // name of currently selected pattern
extern TCHAR g_szCurWallpaper[]; // name of currently selected wallpaper
extern BOOL g_bValidBitmap; // whether or not wallpaper is valid
extern TCHAR g_szBoot[];
extern TCHAR g_szSystemIni[];
extern TCHAR g_szWindows[];
extern HDC g_hdcMem;
#if 0
# pragma message(__FILE__"(134): warning : remove debug code before checkin")
# define DBG_PRINT
# define DPRINT(s) OutputDebugString(TEXT(s) TEXT("\n"))
# define DPRINTF(p) if(1){TCHAR szdbuf[256]; wsprintf p; OutputDebugString(szdbuf);}else
# ifdef DM_TRACE
# undef DM_TRACE
# endif
# define DM_TRACE szdbuf
#else
// Remove all the DPRINTS once we have debugged USER
# define DPRINT(s)
# define DPRINTF(p)
#endif