xref: /reactos/dll/win32/cards/cards.h (revision dc0433f0)
1 /*
2  * ReactOS Cards
3  *
4  * Copyright (C) 2003  Filip Navara <xnavara@volny.org>
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
19  */
20 
21 #pragma once
22 
23 /*
24  * 52 card faces +
25  * 12 card backs +
26  * X Sign +
27  * O Sign +
28  * FreeCard +
29  * Joker
30  */
31 #define MAX_CARD_BITMAPS    68
32 
33 #define ectFACES            0
34 #define ectBACKS            1
35 #define ectINVERTED         2
36 #define ectEMPTY            3
37 #define ectERASE            4
38 #define ectEMPTYNOBG        5
39 #define ectREDX             6
40 #define ectGREENO           7
41 #define ectSAVEEDGESMASK    0x80000000
42 
43 #if defined(CARDSTYLE_DEFAULT)
44 #   define CARD_WIDTH       72  // The original Microsoft cards are 71px wide, but ours are taken from http://united3dartists.com
45 #   define CARD_HEIGHT      112
46 #elif defined(CARDSTYLE_BAVARIAN)
47 #   define CARD_WIDTH       110
48 #   define CARD_HEIGHT      198
49 #else
50 #   error No or unsupported cardstyle defined
51 #endif
52 
53 #define ISREDCARD(x)    (x >= 13 && x <= 39)
54 
55 BOOL WINAPI cdtInit(int *width, int *height);
56 BOOL WINAPI cdtDraw(HDC hdc, int x, int y, int card, int type, DWORD color);
57 BOOL WINAPI cdtDrawExt(HDC hdc, int x, int y, int dx, int dy, int card, int suit, DWORD color);
58 BOOL WINAPI cdtAnimate(HDC hdc, int cardback, int x, int y, int frame);
59 void WINAPI cdtTerm(void);
60