[CARDS]: Code formatting only (tabs --> spaces).
[reactos.git] / reactos / dll / win32 / cards / cards.h
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 MacSolitaireX
45 # define CARD_HEIGHT 96
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);