[ntoskrnl/cc]
[reactos.git] / reactos / base / applications / games / spider / spider.h
1 #ifndef SOLITAIRE_INCLUDED
2 #define SOLITAIRE_INCLUDED
3
4 #define DIFFICULTY_ONE_COLOR 1
5 #define DIFFICULTY_TWO_COLORS 2
6 #define DIFFICULTY_FOUR_COLORS 3
7 #define CARDBACK_START IDC_CARDBACK1
8 #define CARDBACK_END IDC_CARDBACK12
9 #define NUM_CARDBACKS (CARDBACK_END - CARDBACK_START + 1)
10 #define CARDBACK_RES_START 53
11 /* Display option cards with half the size */
12 #define CARDBACK_OPTIONS_WIDTH 36
13 #define CARDBACK_OPTIONS_HEIGHT 48
14
15 #define X_BORDER 6
16 #define Y_BORDER 12
17
18 #define NUM_STACKS 10
19
20 extern HWND hwndMain;
21 extern CardWindow SpiderWnd;
22 extern TCHAR szAppName[];
23 extern bool fGameStarted;
24 extern int yRowStackCardOffset;
25 extern DWORD dwDifficulty;
26 extern TCHAR MsgDeal[];
27 extern TCHAR MsgWin[];
28
29 void CreateSpider();
30 void NewGame(void);
31
32 bool CARDLIBPROC RowStackDragProc(CardRegion &stackobj, int iNumCards);
33 bool CARDLIBPROC RowStackDropProc(CardRegion &stackobj, const CardStack &dragcards);
34
35 void CARDLIBPROC RowStackClickProc(CardRegion &stackobj, int iNumClicked);
36
37 void CARDLIBPROC DeckClickProc(CardRegion &stackobj, int iNumClicked);
38 void CARDLIBPROC PileDblClickProc(CardRegion &stackobj, int iNumClicked);
39
40 void CARDLIBPROC PileRemoveProc(CardRegion &stackobj, int iRemoved);
41
42 #endif