ReactOS 0.4.15-dev-7953-g1f49173
spider.cpp File Reference
#include "spider.h"
#include <commctrl.h>
#include <shellapi.h>
#include <tchar.h>
Include dependency graph for spider.cpp:

Go to the source code of this file.

Classes

struct  _CardBack
 

Typedefs

typedef struct _CardBack CARDBACK
 
typedef struct _CardBackPCARDBACK
 

Functions

LRESULT CALLBACK WndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
 
void MakePath (TCHAR *szDest, UINT nDestLen, const TCHAR *szExt)
 
INT_PTR CALLBACK DifficultyDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
int WINAPI _tWinMain (HINSTANCE hInst, HINSTANCE hPrev, LPTSTR szCmdLine, int iCmdShow)
 
LRESULT CALLBACK CardImageWndProc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 
INT_PTR CALLBACK CardBackDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
VOID ShowDeckOptionsDlg (HWND hwnd)
 

Variables

TCHAR szHelpPath [MAX_PATH]
 
DWORD dwAppStartTime
 
HWND hwndMain
 
HINSTANCE hInstance
 
TCHAR szAppName [128]
 
TCHAR MsgQuit [128]
 
TCHAR MsgAbout [128]
 
TCHAR MsgWin [128]
 
TCHAR MsgDeal [128]
 
DWORD dwDifficulty
 
CardWindow SpiderWnd
 

Typedef Documentation

◆ CARDBACK

◆ PCARDBACK

Function Documentation

◆ _tWinMain()

int WINAPI _tWinMain ( HINSTANCE  hInst,
HINSTANCE  hPrev,
LPTSTR  szCmdLine,
int  iCmdShow 
)

Definition at line 82 of file spider.cpp.

83{
84 HWND hwnd;
85 MSG msg;
86 WNDCLASS wndclass;
88 HACCEL hAccelTable;
89
91
92 /* Load application title */
94 /* Load MsgBox() texts here to avoid loading them many times later */
95 LoadString(hInst, IDS_SPI_ABOUT, MsgAbout, sizeof(MsgAbout) / sizeof(MsgAbout[0]));
96 LoadString(hInst, IDS_SPI_QUIT, MsgQuit, sizeof(MsgQuit) / sizeof(MsgQuit[0]));
97 LoadString(hInst, IDS_SPI_WIN, MsgWin, sizeof(MsgWin) / sizeof(MsgWin[0]));
98 LoadString(hInst, IDS_SPI_DEAL, MsgDeal, sizeof(MsgDeal) / sizeof(MsgDeal[0]));
99
100 /* Window class for the main application parent window */
101 wndclass.style = 0;
102 wndclass.lpfnWndProc = WndProc;
103 wndclass.cbClsExtra = 0;
104 wndclass.cbWndExtra = 0;
105 wndclass.hInstance = hInst;
107 wndclass.hCursor = LoadCursor (NULL, IDC_ARROW);
108 wndclass.hbrBackground = (HBRUSH)NULL;
110 wndclass.lpszClassName = szAppName;
111
112 RegisterClass(&wndclass);
113
114 ice.dwSize = sizeof(ice);
117
118 srand((unsigned)GetTickCount());
119
120 /* InitCardLib(); */
121
122 /* Construct the path to our help file */
123 MakePath(szHelpPath, MAX_PATH, _T(".hlp"));
124
126 szAppName,
130 0, /*The real size will be computed in WndProc through WM_GETMINMAXINFO */
131 0, /* The real size will be computed in WndProc through WM_GETMINMAXINFO */
132 NULL,
133 NULL,
134 hInst,
135 NULL);
136
137 hwndMain = hwnd;
138
139 ShowWindow(hwnd, iCmdShow);
141
143
145
146 while (GetMessage(&msg, NULL,0,0))
147 {
148 if (!TranslateAccelerator(hwnd, hAccelTable, &msg))
149 {
152 }
153 }
154 return msg.wParam;
155}
#define msg(x)
Definition: auth_time.c:54
#define IDR_MENU1
Definition: resource.h:6
#define IDR_ACCELERATOR1
Definition: resource.h:7
#define IDD_DIFFICULTY
Definition: resource.h:31
#define IDS_SPI_QUIT
Definition: resource.h:39
#define IDS_SPI_NAME
Definition: resource.h:37
#define IDS_SPI_WIN
Definition: resource.h:40
#define IDS_SPI_DEAL
Definition: resource.h:41
#define IDS_SPI_ABOUT
Definition: resource.h:38
#define IDI_SPIDER
Definition: resource.h:4
BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *lpInitCtrls)
Definition: commctrl.c:893
#define NULL
Definition: types.h:112
#define MAX_PATH
Definition: compat.h:34
DWORD WINAPI GetTickCount(VOID)
Definition: time.c:455
HINSTANCE hInst
Definition: dxdiag.c:13
void __cdecl srand(_In_ unsigned int _Seed)
#define WS_OVERLAPPEDWINDOW
Definition: pedump.c:637
#define ICC_BAR_CLASSES
Definition: commctrl.h:60
TCHAR szAppName[128]
Definition: spider.cpp:21
INT_PTR CALLBACK DifficultyDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: spider.cpp:50
TCHAR szHelpPath[MAX_PATH]
Definition: spider.cpp:15
TCHAR MsgDeal[128]
Definition: spider.cpp:25
TCHAR MsgAbout[128]
Definition: spider.cpp:23
TCHAR MsgWin[128]
Definition: spider.cpp:24
void MakePath(TCHAR *szDest, UINT nDestLen, const TCHAR *szExt)
Definition: spider.cpp:41
HINSTANCE hInstance
Definition: spider.cpp:19
HWND hwndMain
Definition: spider.cpp:18
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
Definition: spider.cpp:306
TCHAR MsgQuit[128]
Definition: spider.cpp:22
HBRUSH hbrBackground
Definition: winuser.h:3170
HICON hIcon
Definition: winuser.h:3168
HINSTANCE hInstance
Definition: winuser.h:3167
HCURSOR hCursor
Definition: winuser.h:3169
int cbWndExtra
Definition: winuser.h:3166
UINT style
Definition: winuser.h:3163
LPCSTR lpszMenuName
Definition: winuser.h:3171
LPCSTR lpszClassName
Definition: winuser.h:3172
WNDPROC lpfnWndProc
Definition: winuser.h:3164
int cbClsExtra
Definition: winuser.h:3165
TW_UINT32 TW_UINT16 TW_UINT16 MSG
Definition: twain.h:1829
#define _T(x)
Definition: vfdio.h:22
_In_ LONG _In_ HWND hwnd
Definition: winddi.h:4023
BOOL WINAPI TranslateMessage(_In_ const MSG *)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
#define IDC_ARROW
Definition: winuser.h:687
#define CreateWindow
Definition: winuser.h:5754
#define GetMessage
Definition: winuser.h:5790
#define LoadIcon
Definition: winuser.h:5813
BOOL WINAPI UpdateWindow(_In_ HWND)
#define LoadCursor
Definition: winuser.h:5812
#define CW_USEDEFAULT
Definition: winuser.h:225
#define LoadString
Definition: winuser.h:5819
#define RegisterClass
Definition: winuser.h:5836
#define DispatchMessage
Definition: winuser.h:5765
#define TranslateAccelerator
Definition: winuser.h:5860
#define MAKEINTRESOURCE
Definition: winuser.h:591
#define LoadAccelerators
Definition: winuser.h:5810
#define DialogBox
Definition: winuser.h:5761

◆ CardBackDlgProc()

INT_PTR CALLBACK CardBackDlgProc ( HWND  hDlg,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 226 of file spider.cpp.

227{
228 static PCARDBACK pCardBacks = NULL;
229
230 switch (uMsg)
231 {
232 case WM_INITDIALOG:
233 {
234 INT i, c;
235 SIZE_T size = sizeof(CARDBACK) * NUM_CARDBACKS;
236
237 pCardBacks = (PCARDBACK)HeapAlloc(GetProcessHeap(), 0, size);
238
239 if (!pCardBacks)
240 return FALSE;
241
242 for (i = 0, c = CARDBACK_START; c <= CARDBACK_END; i++, c++)
243 {
244 pCardBacks[i].hSelf = GetDlgItem(hDlg, c);
245 pCardBacks[i].bSelected = FALSE;
246 pCardBacks[i].hdcNum = CARDBACK_RES_START + i;
247 pCardBacks[i].imgNum = i + 1;
248 pCardBacks[i].hOldProc = (WNDPROC)SetWindowLongPtr(pCardBacks[i].hSelf,
251
252 SetWindowLongPtr(pCardBacks[i].hSelf, GWLP_USERDATA, (LONG_PTR)&pCardBacks[i]);
253 }
254
255 return TRUE;
256 }
257
258 case WM_COMMAND:
259 if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
260 {
261 INT i, num = 0;
262 for (i = 0; i < NUM_CARDBACKS; i++)
263 {
264 if (pCardBacks[i].bSelected)
265 {
266 num = pCardBacks[i].imgNum;
267 }
268 }
269
270 EndDialog(hDlg, LOWORD(wParam) == IDOK ? num : FALSE);
271 HeapFree(GetProcessHeap(), 0, pCardBacks);
272 return TRUE;
273 }
274
275 if (HIWORD(wParam) == STN_CLICKED)
276 {
277 INT i;
278 RECT rc;
279 for (i = 0; i < NUM_CARDBACKS; i++)
280 {
281 pCardBacks[i].bSelected = pCardBacks[i].hSelf == (HWND)lParam;
282
283 GetClientRect(pCardBacks[i].hSelf, &rc);
284 InvalidateRect(pCardBacks[i].hSelf, &rc, TRUE);
285 }
286
287 break;
288 }
289 }
290
291 return FALSE;
292}
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define GetProcessHeap()
Definition: compat.h:736
HANDLE HWND
Definition: compat.h:19
#define HeapAlloc
Definition: compat.h:733
#define HeapFree(x, y, z)
Definition: compat.h:735
GLsizeiptr size
Definition: glext.h:5919
const GLubyte * c
Definition: glext.h:8905
GLuint GLuint num
Definition: glext.h:9618
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define c
Definition: ke_i.h:80
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
#define LOWORD(l)
Definition: pedump.c:82
#define CARDBACK_END
Definition: solitaire.h:17
#define NUM_CARDBACKS
Definition: solitaire.h:18
#define CARDBACK_START
Definition: solitaire.h:16
#define CARDBACK_RES_START
Definition: solitaire.h:19
struct _CardBack CARDBACK
LRESULT CALLBACK CardImageWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: spider.cpp:157
struct _CardBack * PCARDBACK
HWND hSelf
Definition: solitaire.cpp:38
BOOL bSelected
Definition: solitaire.cpp:42
INT imgNum
Definition: solitaire.cpp:41
WNDPROC hOldProc
Definition: solitaire.cpp:39
INT hdcNum
Definition: solitaire.cpp:40
#define SetWindowLongPtr
Definition: treelist.c:70
#define GWLP_WNDPROC
Definition: treelist.c:66
#define GWLP_USERDATA
Definition: treelist.c:63
ULONG_PTR SIZE_T
Definition: typedefs.h:80
int32_t INT
Definition: typedefs.h:58
#define HIWORD(l)
Definition: typedefs.h:247
#define IDCANCEL
Definition: winuser.h:831
#define WM_COMMAND
Definition: winuser.h:1740
#define WM_INITDIALOG
Definition: winuser.h:1739
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
#define IDOK
Definition: winuser.h:830
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
Definition: winuser.h:2906
#define STN_CLICKED
Definition: winuser.h:2094
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)

Referenced by ShowDeckOptionsDlg().

◆ CardImageWndProc()

LRESULT CALLBACK CardImageWndProc ( HWND  hwnd,
UINT  msg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 157 of file spider.cpp.

158{
160 static WNDPROC hOldProc = NULL;
161
162 if (!pCardBack)
163 return FALSE;
164
165 if (!hOldProc)
166 hOldProc = pCardBack->hOldProc;
167
168 switch (msg)
169 {
170 case WM_PAINT:
171 {
172 HDC hdc;
173 PAINTSTRUCT ps;
174 HPEN hPen, hOldPen;
175 HBRUSH hBrush, hOldBrush;
176 RECT rc;
177
178 hdc = BeginPaint(hwnd, &ps);
179
180 if (pCardBack->bSelected)
181 {
182 hPen = CreatePen(PS_SOLID, 2, RGB(0,0,0));
183 }
184 else
185 {
187 hPen = CreatePen(PS_SOLID, 2, Face);
188 }
189
190 GetClientRect(hwnd, &rc);
191 hBrush = (HBRUSH)GetStockObject(NULL_BRUSH);
192 hOldPen = (HPEN)SelectObject(hdc, hPen);
193 hOldBrush = (HBRUSH)SelectObject(hdc, hBrush);
194
195 Rectangle(hdc, rc.left+1, rc.top+1, rc.right, rc.bottom);
196
198 2,
199 2,
203 pCardBack->hdcNum * __cardwidth,
204 0,
207 SRCCOPY);
208
209 SelectObject(hdc, hOldPen);
210 SelectObject(hdc, hOldBrush);
211
212 EndPaint(hwnd, &ps);
213
214 break;
215 }
216
217 case WM_LBUTTONDOWN:
218 pCardBack->bSelected = pCardBack->bSelected ? FALSE : TRUE;
219 break;
220 }
221
222 return CallWindowProc(hOldProc, hwnd, msg, wParam, lParam);
223}
int __cardwidth
Definition: cardlib.cpp:25
int __cardheight
Definition: cardlib.cpp:26
HDC __hdcCardBitmaps
Definition: cardlib.cpp:18
#define RGB(r, g, b)
Definition: precomp.h:71
unsigned long DWORD
Definition: ntddk_ex.h:95
HDC hdc
Definition: main.c:9
static HDC
Definition: imagelist.c:92
#define CARDBACK_OPTIONS_HEIGHT
Definition: solitaire.h:21
#define CARDBACK_OPTIONS_WIDTH
Definition: solitaire.h:20
LONG right
Definition: windef.h:308
LONG bottom
Definition: windef.h:309
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
#define GetWindowLongPtr
Definition: treelist.c:73
HGDIOBJ WINAPI GetStockObject(_In_ int)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
Definition: dc.c:1539
BOOL WINAPI StretchBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_opt_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD)
#define SRCCOPY
Definition: wingdi.h:333
#define NULL_BRUSH
Definition: wingdi.h:901
BOOL WINAPI Rectangle(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int)
HPEN WINAPI CreatePen(_In_ int, _In_ int, _In_ COLORREF)
#define PS_SOLID
Definition: wingdi.h:586
#define WM_PAINT
Definition: winuser.h:1620
DWORD WINAPI GetSysColor(_In_ int)
#define CallWindowProc
Definition: winuser.h:5735
#define WM_LBUTTONDOWN
Definition: winuser.h:1776
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
#define COLOR_3DFACE
Definition: winuser.h:929

Referenced by CardBackDlgProc().

◆ DifficultyDlgProc()

INT_PTR CALLBACK DifficultyDlgProc ( HWND  hDlg,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 50 of file spider.cpp.

51{
52 switch (uMsg)
53 {
54 case WM_INITDIALOG:
56 return TRUE;
57
58 case WM_COMMAND:
59 switch(LOWORD(wParam))
60 {
61 case IDOK:
68
69 NewGame();
70 EndDialog(hDlg, TRUE);
71 return TRUE;
72
73 case IDCANCEL:
74 EndDialog(hDlg, FALSE);
75 return TRUE;
76 }
77 break;
78 }
79 return FALSE;
80}
#define IDC_DIF_FOURCOLORS
Definition: resource.h:34
#define IDC_DIF_ONECOLOR
Definition: resource.h:32
#define IDC_DIF_TWOCOLORS
Definition: resource.h:33
void NewGame(void)
Definition: solgame.cpp:18
DWORD dwDifficulty
Definition: spider.cpp:26
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
BOOL WINAPI CheckRadioButton(_In_ HWND, _In_ int, _In_ int, _In_ int)
#define BST_CHECKED
Definition: winuser.h:197

Referenced by _tWinMain().

◆ MakePath()

void MakePath ( TCHAR szDest,
UINT  nDestLen,
const TCHAR szExt 
)

Definition at line 41 of file spider.cpp.

42{
43 TCHAR *ptr;
44
45 ptr = szDest + GetModuleFileName(GetModuleHandle(0), szDest, nDestLen) - 1;
46 while(*ptr-- != '.');
47 lstrcpy(ptr + 1, szExt);
48}
static PVOID ptr
Definition: dispmode.c:27
#define GetModuleHandle
Definition: winbase.h:3827
#define lstrcpy
Definition: winbase.h:3874
#define GetModuleFileName
Definition: winbase.h:3831
char TCHAR
Definition: xmlstorage.h:189

Referenced by _tWinMain().

◆ ShowDeckOptionsDlg()

VOID ShowDeckOptionsDlg ( HWND  hwnd)

Definition at line 295 of file spider.cpp.

296{
297 INT cardBack;
298
300 {
303 }
304}
#define IDD_CARDBACK
Definition: resource.h:28
void SetBackCardIdx(UINT uBackIdx)
Definition: cardwindow.cpp:728
void Redraw(void)
Definition: cardwindow.cpp:553
INT_PTR CALLBACK CardBackDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: spider.cpp:226
CardWindow SpiderWnd
Definition: spider.cpp:28

Referenced by WndProc().

◆ WndProc()

LRESULT CALLBACK WndProc ( HWND  hwnd,
UINT  iMsg,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 306 of file spider.cpp.

307{
308 static int nWidth, nHeight;
309
310 switch (iMsg)
311 {
312 case WM_CREATE:
313 {
314 // For now, the Help dialog is disabled because of lacking of HTML Help support
316
317 SpiderWnd.Create(hwnd, 0, WS_CHILD | WS_VISIBLE, 0, 0, 100, 100);
319 CreateSpider();
320
322
324
325 return 0;
326 }
327
328 case WM_DESTROY:
330 return 0;
331
332 case WM_SIZE:
333 nWidth = LOWORD(lParam);
334 nHeight = HIWORD(lParam);
335
336 MoveWindow(SpiderWnd, 0, 0, nWidth, nHeight, TRUE);
337 return 0;
338
339 case WM_GETMINMAXINFO:
340 {
341 MINMAXINFO *mmi;
342
343 mmi = (MINMAXINFO *)lParam;
344 mmi->ptMinTrackSize.x = NUM_STACKS * __cardwidth + (NUM_STACKS + 3) * X_BORDER + 12; // Border left and right of 6px
347 2 * Y_BORDER +
348 3 * __cardheight +
350 return 0;
351 }
352
353 case WM_COMMAND:
354 switch (LOWORD(wParam))
355 {
356 case IDM_GAME_NEW:
357 NewGame();
358 return 0;
359
360 case IDM_GAME_DECK:
362 return 0;
363
365 WinHelp(hwnd, szHelpPath, HELP_CONTENTS, 0);//HELP_KEY, (DWORD)"How to play");
366 return 0;
367
368 case IDM_HELP_ABOUT:
371 return 0;
372
373 case IDM_GAME_EXIT:
374 PostMessage(hwnd, WM_CLOSE, 0, 0);
375 return 0;
376 }
377
378 return 0;
379
380 case WM_CLOSE:
381 if (fGameStarted == false)
382 {
384 return 0;
385 }
386 else
387 {
388 int ret;
389
391 if (ret == IDYES)
392 {
395 }
396 }
397 return 0;
398 }
399 return DefWindowProc (hwnd, iMsg, wParam, lParam);
400}
#define IDM_HELP_ABOUT
Definition: resource.h:387
#define IDM_HELP_CONTENTS
Definition: resource.h:15
#define IDM_GAME_NEW
Definition: resource.h:10
#define IDM_GAME_DECK
Definition: resource.h:12
#define IDM_GAME_EXIT
Definition: resource.h:14
BOOL Create(HWND hwndParent, DWORD dwExStyle, DWORD dwStyle, int x, int y, int width, int height)
Definition: cardwindow.cpp:109
#define WS_CHILD
Definition: pedump.c:617
#define WS_VISIBLE
Definition: pedump.c:620
#define DefWindowProc
Definition: ros2win.h:31
#define ShellAbout
Definition: shellapi.h:692
int yRowStackCardOffset
Definition: solcreate.cpp:10
bool fGameStarted
Definition: solgame.cpp:15
#define Y_BORDER
Definition: solitaire.h:53
#define X_BORDER
Definition: solitaire.h:49
VOID ShowDeckOptionsDlg(HWND hwnd)
Definition: spider.cpp:295
DWORD dwAppStartTime
Definition: spider.cpp:17
#define NUM_STACKS
Definition: spider.h:21
void CreateSpider(void)
Definition: spigame.cpp:279
POINT ptMinTrackSize
Definition: winuser.h:3630
long y
Definition: polytest.cpp:48
long x
Definition: polytest.cpp:48
int ret
#define WM_CLOSE
Definition: winuser.h:1621
#define MF_BYCOMMAND
Definition: winuser.h:202
#define WinHelp
Definition: winuser.h:5864
#define HELP_QUIT
Definition: winuser.h:2414
#define WM_CREATE
Definition: winuser.h:1608
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
__analysis_noreturn void WINAPI PostQuitMessage(_In_ int)
#define WM_SIZE
Definition: winuser.h:1611
#define HELP_CONTENTS
Definition: winuser.h:2405
#define SWP_NOMOVE
Definition: winuser.h:1244
#define SM_CYMENU
Definition: winuser.h:976
#define MB_YESNO
Definition: winuser.h:817
#define WM_GETMINMAXINFO
Definition: winuser.h:1640
#define PostMessage
Definition: winuser.h:5832
#define MB_ICONQUESTION
Definition: winuser.h:789
#define MessageBox
Definition: winuser.h:5822
#define WM_DESTROY
Definition: winuser.h:1609
#define IDYES
Definition: winuser.h:835
#define SWP_NOZORDER
Definition: winuser.h:1247
BOOL WINAPI DestroyWindow(_In_ HWND)
BOOL WINAPI EnableMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
#define SM_CYCAPTION
Definition: winuser.h:963
int WINAPI GetSystemMetrics(_In_ int)
BOOL WINAPI MoveWindow(_In_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ BOOL)
HMENU WINAPI GetMenu(_In_ HWND)
#define MF_GRAYED
Definition: winuser.h:129

Referenced by _tWinMain().

Variable Documentation

◆ dwAppStartTime

DWORD dwAppStartTime

Definition at line 17 of file spider.cpp.

Referenced by WndProc().

◆ dwDifficulty

DWORD dwDifficulty

Definition at line 26 of file spider.cpp.

Referenced by CreatePlayDeck(), DifficultyDlgProc(), and WndProc().

◆ hInstance

HINSTANCE hInstance

Definition at line 19 of file spider.cpp.

Referenced by _tWinMain(), ShowDeckOptionsDlg(), and WndProc().

◆ hwndMain

HWND hwndMain

Definition at line 18 of file spider.cpp.

Referenced by _tWinMain().

◆ MsgAbout

TCHAR MsgAbout[128]

Definition at line 23 of file spider.cpp.

Referenced by _tWinMain(), and WndProc().

◆ MsgDeal

TCHAR MsgDeal[128]

Definition at line 25 of file spider.cpp.

Referenced by _tWinMain(), GameFinished(), and SuitStackAddProc().

◆ MsgQuit

TCHAR MsgQuit[128]

Definition at line 22 of file spider.cpp.

Referenced by _tWinMain(), and WndProc().

◆ MsgWin

TCHAR MsgWin[128]

Definition at line 24 of file spider.cpp.

Referenced by _tWinMain(), GameFinished(), and SuitStackAddProc().

◆ SpiderWnd

CardWindow SpiderWnd

◆ szAppName

TCHAR szAppName[128]

Definition at line 21 of file spider.cpp.

Referenced by _tWinMain(), and WndProc().

◆ szHelpPath

TCHAR szHelpPath[MAX_PATH]

Definition at line 15 of file spider.cpp.

Referenced by _tWinMain(), and WndProc().