rnd-20001125-1-src
[rocksndiamonds.git] / src / system.h
1 /***********************************************************
2 *  Rocks'n'Diamonds -- McDuffin Strikes Back!              *
3 *----------------------------------------------------------*
4 *  ©1995 Artsoft Development                               *
5 *        Holger Schemel                                    *
6 *        33659 Bielefeld-Senne                             *
7 *        Telefon: (0521) 493245                            *
8 *        eMail: aeglos@valinor.owl.de                      *
9 *               aeglos@uni-paderborn.de                    *
10 *               q99492@pbhrzx.uni-paderborn.de             *
11 *----------------------------------------------------------*
12 *  system.h                                                *
13 ***********************************************************/
14
15 #ifndef SYSTEM_H
16 #define SYSTEM_H
17
18 #if defined(XPM_INCLUDE_FILE) && !defined(MSDOS)
19 #define USE_XPM_LIBRARY
20 #include XPM_INCLUDE_FILE
21 #endif
22
23 #if defined(MSDOS)
24 #include "msdos.h"
25 #endif
26
27 #if defined(USE_SDL_LIBRARY)
28 #include "sdl.h"
29 #elif defined(USE_X11_LIBRARY)
30 #include "x11.h"
31 #endif
32
33
34 /* system-wide contant definitions */
35
36 #define DEFAULT_DEPTH                   0
37
38 #define FULLSCREEN_NOT_AVAILABLE        FALSE
39 #define FULLSCREEN_AVAILABLE            TRUE
40
41
42 /* system-wide type definitions */
43
44 typedef int (*EventFilter)(const Event *);
45
46
47 /* system-wide function definitions */
48
49 inline void InitEventFilter(EventFilter);
50 inline void InitBufferedDisplay(DrawBuffer *, DrawWindow *);
51 inline int GetDisplayDepth(void);
52 inline Bitmap CreateBitmap(int, int, int);
53 inline void ClearRectangle(Bitmap, int, int, int, int);
54 inline void BlitBitmap(Bitmap, Bitmap, int, int, int, int, int, int);
55 inline void SetClipMask(GC, Pixmap);
56 inline void SetClipOrigin(GC, int, int);
57 inline void BlitBitmapMasked(Bitmap, Bitmap, int, int, int, int, int, int);
58 inline void DrawSimpleWhiteLine(Bitmap, int, int, int, int);
59
60 inline void FlushDisplay(void);
61 inline void SyncDisplay(void);
62 inline void KeyboardAutoRepeatOn(void);
63 inline void KeyboardAutoRepeatOff(void);
64 inline boolean PointerInWindow(DrawWindow);
65
66 inline boolean PendingEvent(void);
67 inline void NextEvent(Event *event);
68
69 inline Key GetEventKey(KeyEvent *, boolean);
70
71 inline boolean SetVideoMode(void);
72 inline void ChangeVideoModeIfNeeded(void);
73
74 #endif /* SYSTEM_H */