* Slap *some* sense into our header inclusions.
[reactos.git] / reactos / base / applications / games / spider / spider.h
1 #define WIN32_NO_STATUS
2 #include <stdarg.h>
3 #include <windef.h>
4 #include <winbase.h>
5 #include <winuser.h>
6 #include <commctrl.h>
7 #include <tchar.h>
8 #include <cardlib.h>
9
10 #include "resource.h"
11
12 #define DIFFICULTY_ONE_COLOR 1
13 #define DIFFICULTY_TWO_COLORS 2
14 #define DIFFICULTY_FOUR_COLORS 3
15 #define CARDBACK_START IDC_CARDBACK1
16 #define CARDBACK_END IDC_CARDBACK12
17 #define NUM_CARDBACKS (CARDBACK_END - CARDBACK_START + 1)
18 #define CARDBACK_RES_START 53
19 /* Display option cards with half the size */
20 #define CARDBACK_OPTIONS_WIDTH 36
21 #define CARDBACK_OPTIONS_HEIGHT 48
22
23 #define X_BORDER 6
24 #define Y_BORDER 12
25
26 #define NUM_STACKS 10
27
28 extern HWND hwndMain;
29 extern CardWindow SpiderWnd;
30 extern TCHAR szAppName[];
31 extern bool fGameStarted;
32 extern int yRowStackCardOffset;
33 extern DWORD dwDifficulty;
34 extern TCHAR MsgDeal[];
35 extern TCHAR MsgWin[];
36
37 void CreateSpider(void);
38 void NewGame(void);
39
40 bool CARDLIBPROC RowStackDragProc(CardRegion &stackobj, int iNumCards);
41 bool CARDLIBPROC RowStackDropProc(CardRegion &stackobj, const CardStack &dragcards);
42
43 void CARDLIBPROC RowStackClickProc(CardRegion &stackobj, int iNumClicked);
44
45 void CARDLIBPROC DeckClickProc(CardRegion &stackobj, int iNumClicked);
46 void CARDLIBPROC PileDblClickProc(CardRegion &stackobj, int iNumClicked);
47
48 void CARDLIBPROC PileRemoveProc(CardRegion &stackobj, int iRemoved);