|
|
1.1 root 1:
2: /******************************************************************************\
3: * This is a part of the Microsoft Source Code Samples.
4: * Copyright (C) 1993 Microsoft Corporation.
5: * All rights reserved.
6: * This source code is only intended as a supplement to
7: * Microsoft Development Tools and/or WinHelp documentation.
8: * See these sources for detailed information regarding the
9: * Microsoft samples programs.
10: \******************************************************************************/
11:
12: /* maskblt.h - header file for the maskblt demonstration program. */
13:
14:
15: /* function prototypes for the window procedures. */
16: LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);
17: LRESULT CALLBACK DlgProc (HWND, UINT, WPARAM, LPARAM);
18:
19: VOID DrawGrids (HDC, int, int);
20:
21:
22: /* Top dialog item IDs */
23: #define DID_X 100
24: #define DID_Y 101
25: #define DID_WIDTH 102
26: #define DID_HEIGHT 103
27: #define DID_XSRC 104
28: #define DID_YSRC 105
29: #define DID_XMASK 106
30: #define DID_YMASK 107
31:
32: #define DID_ROP0 110
33: #define DID_ROP1 111
34: #define DID_ROP2 112
35: #define DID_ROP3 113
36:
37: #define DID_NEWSRC 300
38: #define DID_NEWMASK 301
39:
40: #define DID_DRAW 302
41:
42: #define DID_CB_MODE 150
43: #define DID_CB_PATTERN 151
44: #define DID_CB_ROPS 152
45:
46:
47:
48: /* accelerator IDs */
49: #define AID_PASTE 55
50: #define AID_COPY 56
51: #define AID_CYCLE 57
52:
53:
54:
55: /* Misc. defines for size, color, and appearance of drawing. */
56: #define GRIDCOLOR (COLORREF) 0x01000006
57: #define DIALOGHEIGHT 90
58: #define SEPARATORWIDTH 4
59: #define MAXCHARS 32
60: #define INC 5
61:
62:
63:
64: /* other user messages sent to the main window or the dialog */
65: #define WM_PUTUPDESTRECT WM_USER+20
66: #define WM_PUTUPSRCRECT WM_USER+21
67: #define WM_PUTUPMASKPT WM_USER+22
68: #define WM_MASKBLT WM_USER+23
69:
70:
71:
72: /* structure for the lookup tables. */
73: typedef struct tagLookupEntry{
74: int Value;
75: char String[30];
76: } LookupEntry;
77:
78:
79: #define NROPS 17
80: LookupEntry StandardROPs[NROPS] =
81: {{ SRCCOPY , "SRCCOPY" },
82: { SRCPAINT , "SRCPAINT" },
83: { SRCAND , "SRCAND" },
84: { SRCINVERT , "SRCINVERT" },
85: { SRCERASE , "SRCERASE" },
86: { NOTSRCCOPY , "NOTSRCCOPY" },
87: { NOTSRCERASE , "NOTSRCERASE"},
88: { MERGECOPY , "MERGECOPY" },
89: { MERGEPAINT , "MERGEPAINT" },
90: { PATCOPY , "PATCOPY" },
91: { PATPAINT , "PATPAINT" },
92: { PATINVERT , "PATINVERT" },
93: { DSTINVERT , "DSTINVERT" },
94: { BLACKNESS , "BLACKNESS" },
95: { WHITENESS , "WHITENESS" },
96: { 0xccaa0000 , "Transparent1" },
97: { 0xaacc0000 , "Transparent2" }};
98:
99:
100: #define NPATTERNS 6
101: LookupEntry Patterns[NPATTERNS] =
102: {{ 0, "WHITE_BRUSH "},
103: { 1, "LTGRAY_BRUSH"},
104: { 2, "GRAY_BRUSH "},
105: { 3, "DKGRAY_BRUSH"},
106: { 4, "BLACK_BRUSH "},
107: { 5, "NULL_BRUSH "}};
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.