author | sheepluva |
Wed, 28 Oct 2015 01:29:39 +0100 | |
changeset 11253 | ead06147f84d |
parent 11151 | 5c40c65b619d |
child 11342 | ed5a6478e710 |
permissions | -rw-r--r-- |
4 | 1 |
(* |
1066 | 2 |
* Hedgewars, a free turn based strategy game |
11046 | 3 |
* Copyright (c) 2004-2015 Andrey Korotaev <unC0Rr@gmail.com> |
4 | 4 |
* |
183 | 5 |
* This program is free software; you can redistribute it and/or modify |
6 |
* it under the terms of the GNU General Public License as published by |
|
7 |
* the Free Software Foundation; version 2 of the License |
|
4 | 8 |
* |
183 | 9 |
* This program is distributed in the hope that it will be useful, |
10 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
12 |
* GNU General Public License for more details. |
|
4 | 13 |
* |
183 | 14 |
* You should have received a copy of the GNU General Public License |
15 |
* along with this program; if not, write to the Free Software |
|
10108
c68cf030eded
update FSF address. note: two sdl include files (by Sam Lantinga) still have the old FSF address in their copyright - but I ain't gonna touch their copyright headers
sheepluva
parents:
10015
diff
changeset
|
16 |
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
4 | 17 |
*) |
18 |
||
2690 | 19 |
{$INCLUDE "options.inc"} |
2630 | 20 |
|
4 | 21 |
unit SDLh; |
22 |
interface |
|
753 | 23 |
|
2599 | 24 |
{$IFDEF LINUX} |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
25 |
{$DEFINE UNIX} |
2599 | 26 |
{$ENDIF} |
27 |
{$IFDEF FREEBSD} |
|
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
28 |
{$DEFINE UNIX} |
4 | 29 |
{$ENDIF} |
3385 | 30 |
{$IFDEF DARWIN} |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
31 |
{$DEFINE UNIX} |
3385 | 32 |
{$ENDIF} |
33 |
{$IFDEF HAIKU} |
|
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
34 |
{$DEFINE UNIX} |
3385 | 35 |
{$ENDIF} |
4 | 36 |
|
37 |
{$IFDEF UNIX} |
|
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
38 |
{$IFDEF HAIKU} |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
39 |
{$linklib root} |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
40 |
{$ELSE} |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
41 |
{$IFNDEF ANDROID} |
8068
b35427506169
win build changes, fpc 2.6, CMAKE_PREFIX_PATH, glut header
koda
parents:
8046
diff
changeset
|
42 |
{$linklib pthread} |
b35427506169
win build changes, fpc 2.6, CMAKE_PREFIX_PATH, glut header
koda
parents:
8046
diff
changeset
|
43 |
{$ENDIF} |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
44 |
{$ENDIF} |
4 | 45 |
{$ENDIF} |
46 |
||
2599 | 47 |
{$IFDEF FPC} |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
48 |
{$PACKRECORDS C} |
2606
ed687a8d081f
updated build files for macosx and optimization system
koda
parents:
2601
diff
changeset
|
49 |
{$ELSE} |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
50 |
{$DEFINE cdecl attribute(cdecl)} |
6974
2d3beb445d64
minor changes for more compatibilities with other compilers
koda
parents:
6972
diff
changeset
|
51 |
type PByte = ^Byte; |
2d3beb445d64
minor changes for more compatibilities with other compilers
koda
parents:
6972
diff
changeset
|
52 |
type PInteger = ^Integer; |
2d3beb445d64
minor changes for more compatibilities with other compilers
koda
parents:
6972
diff
changeset
|
53 |
type PLongInt = ^LongInt; |
2599 | 54 |
{$ENDIF} |
4 | 55 |
|
1819 | 56 |
|
1997 | 57 |
(* SDL *) |
2390 | 58 |
const |
59 |
{$IFDEF WIN32} |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
60 |
SDLLibName = 'SDL.dll'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
61 |
SDL_TTFLibName = 'SDL_ttf.dll'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
62 |
SDL_MixerLibName = 'SDL_mixer.dll'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
63 |
SDL_ImageLibName = 'SDL_image.dll'; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
64 |
SDL_NetLibName = 'SDL_net.dll'; |
2600 | 65 |
{$ELSE} |
11098
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
66 |
{$IFDEF SDL2} |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
67 |
SDLLibName = 'libSDL2'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
68 |
SDL_TTFLibName = 'libSDL2_ttf'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
69 |
SDL_MixerLibName = 'libSDL2_mixer'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
70 |
SDL_ImageLibName = 'libSDL2_image'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
71 |
SDL_NetLibName = 'libSDL2_net'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
72 |
{$ELSE} |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
73 |
SDLLibName = 'libSDL'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
74 |
SDL_TTFLibName = 'libSDL_ttf'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
75 |
SDL_MixerLibName = 'libSDL_mixer'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
76 |
SDL_ImageLibName = 'libSDL_image'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
77 |
SDL_NetLibName = 'libSDL_net'; |
0032a00d915b
- Fix for new name of SDL 2 libraries
antonc27 <antonc27@mail.ru>
parents:
10973
diff
changeset
|
78 |
{$ENDIF} |
2390 | 79 |
{$ENDIF} |
2600 | 80 |
|
81 |
///////////////////////////////////////////////////////////////// |
|
82 |
///////////////////// CONSTANT DEFINITIONS ///////////////////// |
|
83 |
///////////////////////////////////////////////////////////////// |
|
84 |
||
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
85 |
// SDL_Init() flags |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
86 |
SDL_INIT_TIMER = $00000001; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
87 |
SDL_INIT_AUDIO = $00000010; |
9333 | 88 |
SDL_INIT_VIDEO = $00000020; // implies SDL_INIT_EVENTS (sdl2) |
89 |
SDL_INIT_JOYSTICK = $00000200; // implies SDL_INIT_EVENTS (sdl2) |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
90 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
91 |
SDL_INIT_HAPTIC = $00001000; |
9333 | 92 |
SDL_INIT_GAMECONTROLLER = $00002000; // implies SDL_INIT_JOYSTICK |
93 |
SDL_INIT_EVENTS = $00004000; |
|
2633 | 94 |
{$ELSE} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
95 |
SDL_INIT_CDROM = $00000100; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
96 |
SDL_INIT_EVENTTHREAD = $01000000; |
2633 | 97 |
{$ENDIF} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
98 |
SDL_INIT_NOPARACHUTE = $00100000; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
99 |
//SDL_INIT_EVERYTHING // unsafe, init subsystems one at a time |
2240
7ce9e6b7be3b
-Removal of older WAV files, now useless thanks to OpenAL
koda
parents:
2200
diff
changeset
|
100 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
101 |
SDL_ALLEVENTS = $FFFFFFFF; // dummy event type to prevent stack corruption |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
102 |
SDL_APPINPUTFOCUS = $02; |
6917 | 103 |
|
104 |
SDL_BUTTON_LEFT = 1; |
|
105 |
SDL_BUTTON_MIDDLE = 2; |
|
106 |
SDL_BUTTON_RIGHT = 3; |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
107 |
SDL_BUTTON_WHEELUP = 4; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
108 |
SDL_BUTTON_WHEELDOWN = 5; |
3463 | 109 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
110 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
111 |
{$IFDEF SDL2} |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
112 |
// SDL_Event types |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
113 |
// pascal does not support unions as is, so we list here every possible event |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
114 |
// and later associate a struct type each |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
115 |
SDL_FIRSTEVENT = 0; // type |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
116 |
SDL_COMMONDEVENT = 1; // type and timestamp |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
117 |
SDL_QUITEV = $100; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
118 |
SDL_APP_TERMINATING = $101; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
119 |
SDL_APP_LOWMEMORY = $102; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
120 |
SDL_APP_WILLENTERBACKGROUND = $103; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
121 |
SDL_APP_DIDENTERBACKGROUND = $104; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
122 |
SDL_APP_WILLENTERFOREGROUND = $105; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
123 |
SDL_APP_DIDENTERFOREGROUND = $106; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
124 |
SDL_WINDOWEVENT = $200; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
125 |
SDL_SYSWMEVENT = $201; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
126 |
SDL_KEYDOWN = $300; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
127 |
SDL_KEYUP = $301; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
128 |
SDL_TEXTEDITING = $302; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
129 |
SDL_TEXTINPUT = $303; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
130 |
SDL_MOUSEMOTION = $400; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
131 |
SDL_MOUSEBUTTONDOWN = $401; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
132 |
SDL_MOUSEBUTTONUP = $402; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
133 |
SDL_MOUSEWHEEL = $403; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
134 |
SDL_JOYAXISMOTION = $600; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
135 |
SDL_JOYBALLMOTION = $601; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
136 |
SDL_JOYHATMOTION = $602; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
137 |
SDL_JOYBUTTONDOWN = $603; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
138 |
SDL_JOYBUTTONUP = $604; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
139 |
SDL_JOYDEVICEADDED = $605; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
140 |
SDL_JOYDEVICEREMOVED = $606; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
141 |
SDL_CONTROLLERAXISMOTION = $650; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
142 |
SDL_CONTROLLERBUTTONDOWN = $651; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
143 |
SDL_CONTROLLERBUTTONUP = $652; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
144 |
SDL_CONTROLLERDEVICEADDED = $653; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
145 |
SDL_CONTROLLERDEVICEREMOVED = $654; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
146 |
SDL_CONTROLLERDEVICEREMAPPED = $655; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
147 |
SDL_FINGERDOWN = $700; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
148 |
SDL_FINGERUP = $701; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
149 |
SDL_FINGERMOTION = $702; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
150 |
SDL_DOLLARGESTURE = $800; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
151 |
SDL_DOLLARRECORD = $801; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
152 |
SDL_MULTIGESTURE = $802; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
153 |
SDL_CLIPBOARDUPDATE = $900; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
154 |
SDL_DROPFILE = $1000; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
155 |
SDL_USEREVENT = $8000; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
156 |
SDL_LASTEVENT = $FFFF; |
3697 | 157 |
|
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
158 |
// SDL_Surface flags |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
159 |
SDL_SWSURFACE = $00000000; //*< Not used */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
160 |
SDL_PREALLOC = $00000001; //*< Surface uses preallocated memory */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
161 |
SDL_RLEACCEL = $00000002; //*< Surface is RLE encoded */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
162 |
SDL_DONTFREE = $00000004; //*< Surface is referenced internally */ |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
163 |
SDL_SRCCOLORKEY = $00020000; // compatibility only |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
164 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
165 |
// SDL_RendererFlags |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
166 |
SDL_RENDERER_SOFTWARE = $00000001; //*< The renderer is a software fallback */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
167 |
SDL_RENDERER_ACCELERATED = $00000002; //*< The renderer uses hardware acceleration */ |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
168 |
SDL_RENDERER_PRESENTVSYNC = $00000004; //*< Present is synchronized with the refresh rate */ |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
169 |
SDL_RENDERER_TARGETTEXTURE = $00000008; //*< The renderer supports rendering to texture */ |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
170 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
171 |
// SDL_WindowFlags |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
172 |
SDL_WINDOW_FULLSCREEN = $00000001; //*< fullscreen window, implies borderless */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
173 |
SDL_WINDOW_OPENGL = $00000002; //*< window usable with OpenGL context */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
174 |
SDL_WINDOW_SHOWN = $00000004; //*< window is visible */ |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
175 |
SDL_WINDOW_HIDDEN = $00000008; //*< window is not visible */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
176 |
SDL_WINDOW_BORDERLESS = $00000010; //*< no window decoration */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
177 |
SDL_WINDOW_RESIZABLE = $00000020; //*< window can be resized */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
178 |
SDL_WINDOW_MINIMIZED = $00000040; //*< window is minimized */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
179 |
SDL_WINDOW_MAXIMIZED = $00000080; //*< window is maximized */ |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
180 |
SDL_WINDOW_INPUT_GRABBED = $00000100; //*< window has grabbed input focus */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
181 |
SDL_WINDOW_INPUT_FOCUS = $00000200; //*< window has input focus */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
182 |
SDL_WINDOW_MOUSE_FOCUS = $00000400; //*< window has mouse focus */ |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
183 |
SDL_WINDOW_FULLSCREEN_DESKTOP = $00001001; //*< fullscreen as maximed window */ |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
184 |
SDL_WINDOW_FOREIGN = $00000800; //*< window not created by SDL */ |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
185 |
|
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
186 |
SDL_WINDOWPOS_CENTERED_MASK = $2FFF0000; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
187 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
188 |
// SDL_WindowEventID |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
189 |
SDL_WINDOWEVENT_NONE = 0; //*< Never used |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
190 |
SDL_WINDOWEVENT_SHOWN = 1; //*< Window has been shown |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
191 |
SDL_WINDOWEVENT_HIDDEN = 2; //*< Window has been hidden |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
192 |
SDL_WINDOWEVENT_EXPOSED = 3; //*< Window has been exposed and should be redrawn |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
193 |
SDL_WINDOWEVENT_MOVED = 4; //*< Window has been moved to data1, data2 |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
194 |
SDL_WINDOWEVENT_RESIZED = 5; //*< Window size changed to data1xdata2 |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
195 |
SDL_WINDOWEVENT_SIZE_CHANGED = 6; //*< The window size has changed, [...] */ |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
196 |
SDL_WINDOWEVENT_MINIMIZED = 7; //*< Window has been minimized |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
197 |
SDL_WINDOWEVENT_MAXIMIZED = 8; //*< Window has been maximized |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
198 |
SDL_WINDOWEVENT_RESTORED = 9; //*< Window has been restored to normal size and position |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
199 |
SDL_WINDOWEVENT_ENTER = 10; //*< Window has gained mouse focus |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
200 |
SDL_WINDOWEVENT_LEAVE = 11; //*< Window has lost mouse focus |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
201 |
SDL_WINDOWEVENT_FOCUS_GAINED = 12; //*< Window has gained keyboard focus |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
202 |
SDL_WINDOWEVENT_FOCUS_LOST = 13; //*< Window has lost keyboard focus |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
203 |
SDL_WINDOWEVENT_CLOSE = 14; //*< The window manager requests that the window be closed */ |
2241
7992f7ba388d
completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents:
2240
diff
changeset
|
204 |
{$ELSE} |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
205 |
// SDL_Event types |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
206 |
SDL_NOEVENT = 0; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
207 |
SDL_ACTIVEEVENT = 1; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
208 |
SDL_KEYDOWN = 2; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
209 |
SDL_KEYUP = 3; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
210 |
SDL_MOUSEMOTION = 4; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
211 |
SDL_MOUSEBUTTONDOWN = 5; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
212 |
SDL_MOUSEBUTTONUP = 6; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
213 |
SDL_JOYAXISMOTION = 7; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
214 |
SDL_JOYBALLMOTION = 8; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
215 |
SDL_JOYHATMOTION = 9; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
216 |
SDL_JOYBUTTONDOWN = 10; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
217 |
SDL_JOYBUTTONUP = 11; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
218 |
SDL_QUITEV = 12; |
5670
e01f0b6f1969
enable window resizing (tested only on linux) - fix issue 103
koda
parents:
5660
diff
changeset
|
219 |
SDL_VIDEORESIZE = 16; |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
220 |
|
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
221 |
// SDL_Surface flags |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
222 |
SDL_SWSURFACE = $00000000; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
223 |
SDL_HWSURFACE = $00000001; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
224 |
SDL_OPENGL = $00000002; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
225 |
SDL_ASYNCBLIT = $00000004; |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
226 |
SDL_RESIZABLE = $00000010; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
227 |
SDL_NOFRAME = $00000020; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
228 |
SDL_HWACCEL = $00000100; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
229 |
SDL_SRCCOLORKEY = $00001000; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
230 |
SDL_RLEACCEL = $00004000; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
231 |
SDL_SRCALPHA = $00010000; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
232 |
SDL_ANYFORMAT = $00100000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
233 |
SDL_HWPALETTE = $20000000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
234 |
SDL_DOUBLEBUF = $40000000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
235 |
SDL_FULLSCREEN = $80000000; |
2241
7992f7ba388d
completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents:
2240
diff
changeset
|
236 |
{$ENDIF} |
945
4ead9cde4e14
- Start chat implementation: chat strings are on the screen
unc0rr
parents:
883
diff
changeset
|
237 |
|
2586
204e6b2885bc
added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents:
2579
diff
changeset
|
238 |
{$IFDEF ENDIAN_LITTLE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
239 |
RMask = $000000FF; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
240 |
GMask = $0000FF00; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
241 |
BMask = $00FF0000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
242 |
AMask = $FF000000; |
5041 | 243 |
RShift = 0; |
244 |
GShift = 8; |
|
245 |
BShift = 16; |
|
246 |
AShift = 24; |
|
2586
204e6b2885bc
added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents:
2579
diff
changeset
|
247 |
{$ELSE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
248 |
RMask = $FF000000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
249 |
GMask = $00FF0000; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
250 |
BMask = $0000FF00; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
251 |
AMask = $000000FF; |
5041 | 252 |
RShift = 24; |
253 |
GShift = 16; |
|
254 |
BShift = 8; |
|
255 |
AShift = 0; |
|
2586
204e6b2885bc
added little/big endian checks, added symbol for touch input, simplified iphoneos definitions
koda
parents:
2579
diff
changeset
|
256 |
{$ENDIF} |
2575 | 257 |
|
7191
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
258 |
KMOD_NONE = $0000; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
259 |
KMOD_LSHIFT = $0001; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
260 |
KMOD_RSHIFT = $0002; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
261 |
KMOD_LCTRL = $0040; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
262 |
KMOD_RCTRL = $0080; |
7193 | 263 |
KMOD_LALT = $0400; |
264 |
KMOD_RALT = $0800; |
|
7191
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
265 |
KMOD_LMETA = $0400; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
266 |
KMOD_RMETA = $0800; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
267 |
KMOD_NUM = $1000; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
268 |
KMOD_CAPS = $2000; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
269 |
KMOD_MODE = $4000; |
9419294e5f33
first attempt at implementing support for keys with modifiers
Xeli
parents:
7167
diff
changeset
|
270 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
271 |
{* SDL_mixer *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
272 |
MIX_MAX_VOLUME = 128; |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
273 |
MIX_INIT_FLAC = $00000001; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
274 |
MIX_INIT_MOD = $00000002; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
275 |
MIX_INIT_MP3 = $00000004; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
276 |
MIX_INIT_OGG = $00000008; |
3697 | 277 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
278 |
{* SDL_TTF *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
279 |
TTF_STYLE_NORMAL = 0; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
280 |
TTF_STYLE_BOLD = 1; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
281 |
TTF_STYLE_ITALIC = 2; |
2600 | 282 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
283 |
{* SDL Joystick *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
284 |
SDL_HAT_CENTERED = $00; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
285 |
SDL_HAT_UP = $01; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
286 |
SDL_HAT_RIGHT = $02; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
287 |
SDL_HAT_DOWN = $04; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
288 |
SDL_HAT_LEFT = $08; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
289 |
SDL_HAT_RIGHTUP = SDL_HAT_RIGHT or SDL_HAT_UP; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
290 |
SDL_HAT_RIGHTDOWN = SDL_HAT_RIGHT or SDL_HAT_DOWN; |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
291 |
SDL_HAT_LEFTUP = SDL_HAT_LEFT or SDL_HAT_UP; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
292 |
SDL_HAT_LEFTDOWN = SDL_HAT_LEFT or SDL_HAT_DOWN; |
2600 | 293 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
294 |
{* SDL_image *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
295 |
IMG_INIT_JPG = $00000001; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
296 |
IMG_INIT_PNG = $00000002; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
297 |
IMG_INIT_TIF = $00000004; |
2600 | 298 |
|
8742
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
299 |
{* SDL_keysym *} |
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
300 |
SDLK_BACKSPACE = 8; |
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
301 |
SDLK_RETURN = 13; |
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
302 |
SDLK_ESCAPE = 27; |
10836 | 303 |
SDLK_a = 97; |
10849
a772d342066a
copy&paste (wip), currently using only a local clipboard
sheepluva
parents:
10836
diff
changeset
|
304 |
SDLK_c = 99; |
8746
55539c550c33
use SDL keycode for shortcuts (doesn't fix layout issues)
koda
parents:
8745
diff
changeset
|
305 |
SDLK_q = 113; |
10849
a772d342066a
copy&paste (wip), currently using only a local clipboard
sheepluva
parents:
10836
diff
changeset
|
306 |
SDLK_v = 118; |
8746
55539c550c33
use SDL keycode for shortcuts (doesn't fix layout issues)
koda
parents:
8745
diff
changeset
|
307 |
SDLK_w = 119; |
10849
a772d342066a
copy&paste (wip), currently using only a local clipboard
sheepluva
parents:
10836
diff
changeset
|
308 |
SDLK_x = 120; |
8745 | 309 |
SDLK_DELETE = 127; |
9319
492a0ad67e33
allow to send chat messages with numpad enter key too (regression?)
koda
parents:
9317
diff
changeset
|
310 |
SDLK_KP_ENTER = 271; |
8742
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
311 |
SDLK_UP = 273; |
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
312 |
SDLK_DOWN = 274; |
8745 | 313 |
SDLK_RIGHT = 275; |
314 |
SDLK_LEFT = 276; |
|
315 |
SDLK_HOME = 278; |
|
316 |
SDLK_END = 279; |
|
317 |
SDLK_PAGEUP = 280; |
|
318 |
SDLK_PAGEDOWN = 281; |
|
8742
b7b8bd398c1b
Key returned 0 for arrows under linux. Sym works, clearer anyway.
nemo
parents:
8530
diff
changeset
|
319 |
|
5724 | 320 |
|
2600 | 321 |
///////////////////////////////////////////////////////////////// |
322 |
/////////////////////// TYPE DEFINITIONS /////////////////////// |
|
323 |
///////////////////////////////////////////////////////////////// |
|
324 |
||
6284 | 325 |
// two important reference points for the wanderers of this area |
326 |
// http://www.freepascal.org/docs-html/ref/refsu5.html |
|
327 |
// http://www.freepascal.org/docs-html/prog/progsu144.html |
|
328 |
||
3697 | 329 |
type |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
330 |
{$IFDEF SDL2} |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
331 |
PSDL_Window = Pointer; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
332 |
PSDL_Renderer = Pointer; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
333 |
PSDL_Texture = Pointer; |
5486
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
334 |
PSDL_GLContext= Pointer; |
6693 | 335 |
TSDL_TouchId = Int64; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
336 |
{$ENDIF} |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
337 |
TSDL_FingerId = Int64; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
338 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
339 |
TSDL_eventaction = (SDL_ADDEVENT, SDL_PEEPEVENT, SDL_GETEVENT); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
340 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
341 |
PSDL_Rect = ^TSDL_Rect; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
342 |
TSDL_Rect = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
343 |
{$IFDEF SDL2} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
344 |
x, y, w, h: LongInt; |
2390 | 345 |
{$ELSE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
346 |
x, y: SmallInt; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
347 |
w, h: Word; |
2390 | 348 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
349 |
end; |
4 | 350 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
351 |
TPoint = record |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
352 |
x, y: LongInt; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
353 |
end; |
4 | 354 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
355 |
PSDL_PixelFormat = ^TSDL_PixelFormat; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
356 |
TSDL_PixelFormat = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
357 |
{$IFDEF SDL2} |
6284 | 358 |
format: LongWord; |
359 |
palette: Pointer; |
|
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
360 |
BitsPerPixel : Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
361 |
BytesPerPixel: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
362 |
padding: array[0..1] of Byte; |
6284 | 363 |
RMask : LongWord; |
364 |
GMask : LongWord; |
|
365 |
BMask : LongWord; |
|
366 |
AMask : LongWord; |
|
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
367 |
Rloss : Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
368 |
Gloss : Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
369 |
Bloss : Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
370 |
Aloss : Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
371 |
Rshift: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
372 |
Gshift: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
373 |
Bshift: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
374 |
Ashift: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
375 |
refcount: LongInt; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
376 |
next: PSDL_PixelFormat; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
377 |
{$ELSE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
378 |
palette: Pointer; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
379 |
BitsPerPixel : Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
380 |
BytesPerPixel: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
381 |
Rloss : Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
382 |
Gloss : Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
383 |
Bloss : Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
384 |
Aloss : Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
385 |
Rshift: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
386 |
Gshift: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
387 |
Bshift: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
388 |
Ashift: Byte; |
6284 | 389 |
RMask : LongWord; |
390 |
GMask : LongWord; |
|
391 |
BMask : LongWord; |
|
392 |
AMask : LongWord; |
|
393 |
colorkey: LongWord; |
|
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
394 |
alpha: Byte; |
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
395 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
396 |
end; |
4 | 397 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
398 |
PSDL_Surface = ^TSDL_Surface; |
6285 | 399 |
TSDL_Surface = record |
6284 | 400 |
flags : LongWord; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
401 |
format: PSDL_PixelFormat; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
402 |
w, h : LongInt; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
403 |
pitch : {$IFDEF SDL2}LongInt{$ELSE}Word{$ENDIF}; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
404 |
pixels: Pointer; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
7565
diff
changeset
|
405 |
{$IFDEF PAS2C} |
10015 | 406 |
hwdata : Pointer; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
407 |
clip_rect: TSDL_Rect; |
10015 | 408 |
unsed1 : LongWord; |
409 |
locked : LongWord; |
|
410 |
map : Pointer; |
|
411 |
format_version: Longword; |
|
412 |
refcount : LongInt; |
|
413 |
offset : LongInt; |
|
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
7565
diff
changeset
|
414 |
{$ELSE} |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
415 |
{$IFDEF SDL2} |
10015 | 416 |
userdata : Pointer; |
417 |
locked : LongInt; |
|
418 |
lock_data : Pointer; |
|
419 |
clip_rect : TSDL_Rect; |
|
420 |
map : Pointer; |
|
421 |
refcount : LongInt; |
|
9952
32f5982604f4
Fix build (no idea what's going on in this branch btw)
unc0rr
parents:
9521
diff
changeset
|
422 |
{$ELSE} |
10015 | 423 |
offset : LongInt; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
424 |
{$ENDIF} |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
425 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
426 |
end; |
4 | 427 |
|
2248
26e11cb27c61
real fix for iphone color (reverting previous commit)
koda
parents:
2242
diff
changeset
|
428 |
|
7035 | 429 |
PSDL_Color = ^TSDL_Color; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
430 |
TSDL_Color = record |
7546
b50556f2a0e8
This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents:
7237
diff
changeset
|
431 |
r: Byte; |
b50556f2a0e8
This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents:
7237
diff
changeset
|
432 |
g: Byte; |
b50556f2a0e8
This union hasn't been needed for 5 years, and makes using other headers harder.
nemo
parents:
7237
diff
changeset
|
433 |
b: Byte; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
434 |
a: Byte; //sdl12 name is 'unused' but as long as size matches... |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
435 |
end; |
4 | 436 |
|
2248
26e11cb27c61
real fix for iphone color (reverting previous commit)
koda
parents:
2242
diff
changeset
|
437 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
438 |
(* SDL_RWops and friends *) |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
439 |
PSDL_RWops = ^TSDL_RWops; |
9378
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
440 |
{$IFDEF SDL2} |
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
441 |
TSize = function( context: PSDL_RWops): Int64; cdecl; |
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
442 |
TSeek = function( context: PSDL_RWops; offset: Int64; whence: LongInt ): Int64; cdecl; |
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
443 |
{$ELSE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
444 |
TSeek = function( context: PSDL_RWops; offset: LongInt; whence: LongInt ): LongInt; cdecl; |
9378
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
445 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
446 |
TRead = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; maxnum : LongInt ): LongInt; cdecl; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
447 |
TWrite = function( context: PSDL_RWops; Ptr: Pointer; size: LongInt; num: LongInt ): LongInt; cdecl; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
448 |
TClose = function( context: PSDL_RWops ): LongInt; cdecl; |
4 | 449 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
450 |
TStdio = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
451 |
autoclose: {$IFDEF SDL2}Boolean{$ELSE}LongInt{$ENDIF}; |
6284 | 452 |
fp: Pointer; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
453 |
end; |
2379 | 454 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
455 |
TMem = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
456 |
base: PByte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
457 |
here: PByte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
458 |
stop: PByte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
459 |
end; |
4 | 460 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
461 |
TUnknown = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
462 |
data1: Pointer; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
463 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
464 |
data2: Pointer; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
465 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
466 |
end; |
4 | 467 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
468 |
{$IFDEF ANDROID} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
469 |
TAndroidio = record |
9333 | 470 |
fileName, inputStream, readableByteChannel: Pointer; |
471 |
readMethod, assetFileDescriptor: Pointer; |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
472 |
position, size, offset: Int64; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
473 |
fd: LongInt; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
474 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
475 |
{$ELSE} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
476 |
{$IFDEF WIN32} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
477 |
TWinbuffer = record |
9333 | 478 |
data: Pointer; |
479 |
size, left: LongInt; |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
480 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
481 |
TWindowsio = record |
9333 | 482 |
append : {$IFDEF SDL2}Boolean{$ELSE}LongInt{$ENDIF}; |
483 |
h : Pointer; |
|
484 |
buffer : TWinbuffer; |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
485 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
486 |
{$ENDIF} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
487 |
{$ENDIF} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
488 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
489 |
TSDL_RWops = record |
9378
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
490 |
{$IFDEF SDL2} |
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
491 |
size: TSize; |
2be457289e60
update physlayer and sdl bindings to the new rwops interface
koda
parents:
9333
diff
changeset
|
492 |
{$ENDIF} |
6891
ab9843957664
Improve rendering of function types, ranges, and more
unc0rr
parents:
6879
diff
changeset
|
493 |
seek: TSeek; |
ab9843957664
Improve rendering of function types, ranges, and more
unc0rr
parents:
6879
diff
changeset
|
494 |
read: TRead; |
ab9843957664
Improve rendering of function types, ranges, and more
unc0rr
parents:
6879
diff
changeset
|
495 |
write: TWrite; |
ab9843957664
Improve rendering of function types, ranges, and more
unc0rr
parents:
6879
diff
changeset
|
496 |
close: TClose; |
6284 | 497 |
type_: LongWord; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
498 |
case Byte of |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
499 |
{$IFDEF ANDROID} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
500 |
0: (androidio: TAndroidio); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
501 |
{$ELSE} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
502 |
{$IFDEF WIN32} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
503 |
0: (windowsio: TWindowsio); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
504 |
{$ENDIF} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
505 |
{$ENDIF} |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
506 |
1: (stdio: TStdio); // assumes HAVE_STDIO_H |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
507 |
2: (mem: TMem); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
508 |
3: (unknown: TUnknown); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
509 |
end; |
2379 | 510 |
|
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
511 |
|
2663 | 512 |
{* SDL_Event type definition *} |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
513 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
514 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
515 |
TSDL_Keysym = record |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
516 |
scancode: LongInt; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
517 |
sym: LongInt; |
6284 | 518 |
modifier: Word; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
519 |
unused: LongWord; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
520 |
end; |
3697 | 521 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
522 |
TSDL_WindowEvent = record |
6284 | 523 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
524 |
timestamp: LongWord; |
6284 | 525 |
windowID: LongWord; |
526 |
event: Byte; |
|
527 |
padding1, padding2, padding3: Byte; |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
528 |
data1, data2: LongInt; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
529 |
end; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
530 |
|
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
531 |
// available in sdl12 but not exposed |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
532 |
TSDL_TextEditingEvent = record |
6284 | 533 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
534 |
timestamp: LongWord; |
6284 | 535 |
windowID: LongWord; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
536 |
text: array[0..31] of Byte; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
537 |
start, lenght: LongInt; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
538 |
end; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
539 |
|
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
540 |
// available in sdl12 but not exposed |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
541 |
TSDL_TextInputEvent = record |
6284 | 542 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
543 |
timestamp: LongWord; |
6284 | 544 |
windowID: LongWord; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
545 |
text: array[0..31] of Byte; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
546 |
end; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
547 |
|
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
548 |
TSDL_TouchFingerEvent = record |
6284 | 549 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
550 |
timestamp: LongWord; |
6693 | 551 |
touchId: TSDL_TouchId; |
552 |
fingerId: TSDL_FingerId; |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
553 |
x, y, dx, dy: Single; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
554 |
pressure: Single; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
555 |
end; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
556 |
|
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
557 |
TSDL_MultiGestureEvent = record |
6284 | 558 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
559 |
timestamp: LongWord; |
6693 | 560 |
touchId: TSDL_TouchId; |
6284 | 561 |
dTheta, dDist, x, y: Single; |
6283
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
562 |
numFingers, padding: Word; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
563 |
end; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
564 |
|
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
565 |
TSDL_DollarGestureEvent = record |
6284 | 566 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
567 |
timestamp: LongWord; |
6283
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
568 |
touchId: Int64; |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
569 |
gesturedId: Int64; |
6284 | 570 |
numFingers: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
571 |
error, x, y: Single; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
572 |
end; |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
573 |
|
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
574 |
TSDL_DropEvent = record |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
575 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
576 |
timestamp: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
577 |
filename: PChar; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
578 |
end; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
579 |
|
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
580 |
TSDL_SysWMEvent = record |
6284 | 581 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
582 |
timestamp: LongWord; |
6284 | 583 |
msg: Pointer; |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
584 |
end; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
585 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
586 |
TSDL_ControllerAxisEvent = record |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
587 |
type_: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
588 |
timestamp: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
589 |
which: LongInt; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
590 |
axis, padding1, padding2, padding3: Byte; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
591 |
value: SmallInt; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
592 |
padding4: Word; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
593 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
594 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
595 |
TSDL_ControllerButtonEvent = record |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
596 |
type_: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
597 |
timestamp: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
598 |
which: LongInt; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
599 |
button, states, padding1, padding2: Byte; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
600 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
601 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
602 |
TSDL_ControllerDeviceEvent = record |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
603 |
type_: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
604 |
timestamp: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
605 |
which: SmallInt; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
606 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
607 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
608 |
TSDL_JoyDeviceEvent = TSDL_ControllerDeviceEvent; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
609 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
610 |
TSDL_CommonEvent = record |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
611 |
type_: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
612 |
timestamp: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
613 |
end; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
614 |
|
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
615 |
TSDL_OSEvent = TSDL_CommonEvent; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
616 |
{$ELSE} |
3463 | 617 |
TSDL_KeySym = record |
618 |
scancode: Byte; |
|
6284 | 619 |
sym: LongWord; |
620 |
modifier: LongWord; |
|
3463 | 621 |
unicode: Word; |
622 |
end; |
|
623 |
||
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
624 |
TSDL_ActiveEvent = record |
6284 | 625 |
type_: Byte; |
626 |
gain: Byte; |
|
627 |
state: Byte; |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
628 |
end; |
2714
c85ffe57d971
update iphone frontend to the new (silly) sdl api, code cleanups for other sections
koda
parents:
2701
diff
changeset
|
629 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
630 |
TSDL_ResizeEvent = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
631 |
type_: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
632 |
w, h: LongInt; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
633 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
634 |
{$ENDIF} |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
635 |
|
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
636 |
TSDL_KeyboardEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
637 |
{$IFDEF SDL2} |
6284 | 638 |
type_: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
639 |
timestamp: LongWord; |
6284 | 640 |
windowID: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
641 |
state, repeat_, padding2, padding3: Byte; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
642 |
{$ELSE} |
6284 | 643 |
type_, which, state: Byte; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
644 |
{$ENDIF} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
645 |
keysym: TSDL_Keysym; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
646 |
end; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
647 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
648 |
TSDL_MouseMotionEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
649 |
{$IFDEF SDL2} |
6284 | 650 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
651 |
timestamp: LongWord; |
6284 | 652 |
windowID: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
653 |
which, state: LongWord; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
654 |
x, y, xrel, yrel: LongInt; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
655 |
{$ELSE} |
6284 | 656 |
type_, which, state: Byte; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
657 |
x, y, xrel, yrel: Word; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
658 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
659 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
660 |
|
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
661 |
TSDL_MouseButtonEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
662 |
{$IFDEF SDL2} |
6284 | 663 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
664 |
timestamp: LongWord; |
6284 | 665 |
windowID: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
666 |
which: LongWord; |
6917 | 667 |
button, state, padding1, padding2: Byte; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
668 |
x, y: LongInt; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
669 |
{$ELSE} |
6284 | 670 |
type_, which, button, state: Byte; |
671 |
x, y: Word; |
|
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
672 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
673 |
end; |
2376 | 674 |
|
6283
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
675 |
TSDL_MouseWheelEvent = record |
6284 | 676 |
type_: LongWord; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
677 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
678 |
timestamp: LongWord; |
6284 | 679 |
windowID: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
680 |
which: LongWord; |
6283
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
681 |
{$ELSE} |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
682 |
which: Byte; |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
683 |
{$ENDIF} |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
684 |
x, y: LongInt; |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
685 |
end; |
6ec7bf51e04f
oops, fix the size of a few event structs i just added
koda
parents:
6282
diff
changeset
|
686 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
687 |
TSDL_JoyAxisEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
688 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
689 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
690 |
timestamp: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
691 |
which: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
692 |
{$ELSE} |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
693 |
type_: Byte; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
694 |
which: Byte; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
695 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
696 |
axis: Byte; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
697 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
698 |
padding1, padding2, padding3: Byte; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
699 |
value: LongInt; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
700 |
padding4: Word; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
701 |
{$ELSE} |
6284 | 702 |
value: SmallInt; |
3697 | 703 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
704 |
end; |
3697 | 705 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
706 |
TSDL_JoyBallEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
707 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
708 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
709 |
timestamp: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
710 |
which: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
711 |
{$ELSE} |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
712 |
type_: Byte; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
713 |
which: Byte; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
714 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
715 |
ball: Byte; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
716 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
717 |
padding1, padding2, padding3: Byte; |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
718 |
{$ENDIF} |
6284 | 719 |
xrel, yrel: SmallInt; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
720 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
721 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
722 |
TSDL_JoyHatEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
723 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
724 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
725 |
timestamp: LongWord; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
726 |
which: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
727 |
{$ELSE} |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
728 |
type_: Byte; |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
729 |
which: Byte; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
730 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
731 |
hat: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
732 |
value: Byte; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
733 |
{$IFDEF SDL2} |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
734 |
padding1, padding2: Byte; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
735 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
736 |
end; |
3697 | 737 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
738 |
TSDL_JoyButtonEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
739 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
740 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
741 |
timestamp: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
742 |
{$ELSE} |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
743 |
type_: Byte; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
744 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
745 |
which: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
746 |
button: Byte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
747 |
state: Byte; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
748 |
{$IFDEF SDL2} |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
749 |
padding1: Byte; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
750 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
751 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
752 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
753 |
TSDL_QuitEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
754 |
{$IFDEF SDL2} |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
755 |
type_: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
756 |
timestamp: LongWord; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
757 |
{$ELSE} |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
758 |
type_: Byte; |
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
759 |
{$ENDIF} |
3349 | 760 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
761 |
|
4454 | 762 |
TSDL_UserEvent = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
763 |
{$IFDEF SDL2} |
6284 | 764 |
type_: LongWord; |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
765 |
timestamp: LongWord; |
6284 | 766 |
windowID: LongWord; |
4454 | 767 |
{$ELSE} |
768 |
type_: Byte; |
|
769 |
{$ENDIF} |
|
770 |
code: LongInt; |
|
771 |
data1, data2: Pointer; |
|
772 |
end; |
|
773 |
||
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
774 |
PSDL_Event = ^TSDL_Event; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
775 |
TSDL_Event = record |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
776 |
{$IFDEF SDL2} |
3463 | 777 |
case LongInt of |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
778 |
SDL_FIRSTEVENT: (type_: LongWord); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
779 |
SDL_COMMONDEVENT: (common: TSDL_CommonEvent); |
5052 | 780 |
SDL_WINDOWEVENT: (window: TSDL_WindowEvent); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
781 |
SDL_KEYDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
782 |
SDL_KEYUP: (key: TSDL_KeyboardEvent); |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
783 |
SDL_TEXTEDITING: (edit: TSDL_TextEditingEvent); |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
784 |
SDL_TEXTINPUT: (tedit: TSDL_TextInputEvent); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
785 |
SDL_MOUSEMOTION: (motion: TSDL_MouseMotionEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
786 |
SDL_MOUSEBUTTONDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
787 |
SDL_MOUSEBUTTONUP: (button: TSDL_MouseButtonEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
788 |
SDL_MOUSEWHEEL: (wheel: TSDL_MouseWheelEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
789 |
SDL_JOYAXISMOTION: (jaxis: TSDL_JoyAxisEvent); |
5052 | 790 |
SDL_JOYBALLMOTION: (jball: TSDL_JoyBallEvent); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
791 |
SDL_JOYHATMOTION: (jhat: TSDL_JoyHatEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
792 |
SDL_JOYBUTTONDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
793 |
SDL_JOYBUTTONUP: (jbutton: TSDL_JoyButtonEvent); |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
794 |
SDL_JOYDEVICEADDED, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
795 |
SDL_JOYDEVICEREMOVED: (jdevice: TSDL_JoyDeviceEvent); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
796 |
SDL_CONTROLLERAXISMOTION: (caxis: TSDL_ControllerAxisEvent); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
797 |
SDL_CONTROLLERBUTTONUP, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
798 |
SDL_CONTROLLERBUTTONDOWN: (cbutton: TSDL_ControllerButtonEvent); |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
799 |
SDL_CONTROLLERDEVICEADDED, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
800 |
SDL_CONTROLLERDEVICEREMAPPED, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
801 |
SDL_CONTROLLERDEVICEREMOVED: (cdevice: TSDL_ControllerDeviceEvent); |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
802 |
SDL_QUITEV: (quit: TSDL_QuitEvent); |
4454 | 803 |
SDL_USEREVENT: (user: TSDL_UserEvent); |
6282
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
804 |
SDL_SYSWMEVENT: (syswm: TSDL_SysWMEvent); |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
805 |
SDL_FINGERDOWN, |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
806 |
SDL_FINGERUP, |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
807 |
SDL_FINGERMOTION: (tfinger: TSDL_TouchFingerEvent); |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
808 |
SDL_MULTIGESTURE: (mgesture: TSDL_MultiGestureEvent); |
de449b2d9607
just for the sake of it, add the missing sdl13 events and do some cleanup
koda
parents:
6281
diff
changeset
|
809 |
SDL_DOLLARGESTURE: (dgesture: TSDL_DollarGestureEvent); |
6551
a2f39cb9af62
fix a couple of loose ends: sdl_mixer is informed of that OGG is provided by Tremor with its own macro, there is no more a segfault on Tremor cleanup, added new event type and timestamp entry for SDL, removed spurious characters from the japanese translation, uSound errors now are output with SDLTry, uSound doesn't need sound preloading any more
koda
parents:
6415
diff
changeset
|
810 |
SDL_DROPFILE: (drop: TSDL_DropEvent); |
6280 | 811 |
SDL_ALLEVENTS: (foo: shortstring); |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
812 |
{$ELSE} |
3463 | 813 |
case Byte of |
6284 | 814 |
SDL_NOEVENT: (type_: Byte); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
815 |
SDL_ACTIVEEVENT: (active: TSDL_ActiveEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
816 |
SDL_KEYDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
817 |
SDL_KEYUP: (key: TSDL_KeyboardEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
818 |
SDL_MOUSEMOTION: (motion: TSDL_MouseMotionEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
819 |
SDL_MOUSEBUTTONDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
820 |
SDL_MOUSEBUTTONUP: (button: TSDL_MouseButtonEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
821 |
SDL_JOYAXISMOTION: (jaxis: TSDL_JoyAxisEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
822 |
SDL_JOYHATMOTION: (jhat: TSDL_JoyHatEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
823 |
SDL_JOYBALLMOTION: (jball: TSDL_JoyBallEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
824 |
SDL_JOYBUTTONDOWN, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
825 |
SDL_JOYBUTTONUP: (jbutton: TSDL_JoyButtonEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
826 |
SDL_QUITEV: (quit: TSDL_QuitEvent); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
827 |
//SDL_SYSWMEVENT,SDL_EVENT_RESERVEDA,SDL_EVENT_RESERVEDB |
5670
e01f0b6f1969
enable window resizing (tested only on linux) - fix issue 103
koda
parents:
5660
diff
changeset
|
828 |
SDL_VIDEORESIZE: (resize: TSDL_ResizeEvent); |
6280 | 829 |
SDL_ALLEVENTS: (foo: shortstring); |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
830 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
831 |
end; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
832 |
|
5745
71e69623be39
allow fullscreen resolution selection (but still leaves in the auto max for commodity)
koda
parents:
5724
diff
changeset
|
833 |
TSDL_EventFilter = function( event : PSDL_Event ): Integer; cdecl; |
71e69623be39
allow fullscreen resolution selection (but still leaves in the auto max for commodity)
koda
parents:
5724
diff
changeset
|
834 |
|
7035 | 835 |
TByteArray = array[0..65535] of Byte; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
836 |
PByteArray = ^TByteArray; |
8026
4a4f21070479
merge xymeng's gsoc engine with a few updates (and further checks on symbol definitions)
koda
parents:
7565
diff
changeset
|
837 |
|
7035 | 838 |
TLongWordArray = array[0..16383] of LongWord; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
839 |
PLongWordArray = ^TLongWordArray; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
840 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
841 |
PSDL_Thread = Pointer; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
842 |
PSDL_mutex = Pointer; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
843 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
844 |
TSDL_GLattr = ( |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
845 |
SDL_GL_RED_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
846 |
SDL_GL_GREEN_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
847 |
SDL_GL_BLUE_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
848 |
SDL_GL_ALPHA_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
849 |
SDL_GL_BUFFER_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
850 |
SDL_GL_DOUBLEBUFFER, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
851 |
SDL_GL_DEPTH_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
852 |
SDL_GL_STENCIL_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
853 |
SDL_GL_ACCUM_RED_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
854 |
SDL_GL_ACCUM_GREEN_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
855 |
SDL_GL_ACCUM_BLUE_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
856 |
SDL_GL_ACCUM_ALPHA_SIZE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
857 |
SDL_GL_STEREO, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
858 |
SDL_GL_MULTISAMPLEBUFFERS, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
859 |
SDL_GL_MULTISAMPLESAMPLES, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
860 |
SDL_GL_ACCELERATED_VISUAL, |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
861 |
{$IFDEF SDL2} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
862 |
SDL_GL_RETAINED_BACKING, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
863 |
SDL_GL_CONTEXT_MAJOR_VERSION, |
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
864 |
SDL_GL_CONTEXT_MINOR_VERSION, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
865 |
SDL_GL_CONTEXT_EGL, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
866 |
SDL_GL_CONTEXT_FLAGS, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
867 |
SDL_GL_CONTEXT_PROFILE_MASK, |
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
868 |
SDL_GL_SHARE_WITH_CURRENT_CONTEXT |
2617
ef0d93cd61b2
add option for vsync -- good results on mac and linux, should be harmless on others (please test)
koda
parents:
2606
diff
changeset
|
869 |
{$ELSE} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
870 |
SDL_GL_SWAP_CONTROL |
2617
ef0d93cd61b2
add option for vsync -- good results on mac and linux, should be harmless on others (please test)
koda
parents:
2606
diff
changeset
|
871 |
{$ENDIF} |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
872 |
); |
2376 | 873 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
874 |
{$IFDEF SDL2} |
6284 | 875 |
TSDL_ArrayByteOrder = ( // array component order, low Byte -> high Byte |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
876 |
SDL_ARRAYORDER_NONE, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
877 |
SDL_ARRAYORDER_RGB, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
878 |
SDL_ARRAYORDER_RGBA, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
879 |
SDL_ARRAYORDER_ARGB, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
880 |
SDL_ARRAYORDER_BGR, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
881 |
SDL_ARRAYORDER_BGRA, |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
882 |
SDL_ARRAYORDER_ABGR |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
883 |
); |
2252 | 884 |
{$ENDIF} |
4 | 885 |
|
9311
5baf10a52f43
engine uses final (?) SDL 2 APIs, new events and types added. Touch input broke by the way, and system events should be handled differently
koda
parents:
9224
diff
changeset
|
886 |
// Joystick/Controller support |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
887 |
PSDL_Joystick = ^TSDL_Joystick; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
888 |
TSDL_Joystick = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
889 |
end; |
2600 | 890 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
891 |
{* SDL_TTF *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
892 |
PTTF_Font = ^TTTF_font; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
893 |
TTTF_Font = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
894 |
end; |
2600 | 895 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
896 |
{* SDL_mixer *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
897 |
PMixChunk = ^TMixChunk; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
898 |
TMixChunk = record |
6284 | 899 |
allocated: LongWord; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
900 |
abuf : PByte; |
6284 | 901 |
alen : LongWord; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
902 |
volume : PByte; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
903 |
end; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
904 |
TMusic = (MUS_CMD, MUS_WAV, MUS_MOD, MUS_MID, MUS_OGG, MUS_MP3); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
905 |
TMix_Fading = (MIX_NO_FADING, MIX_FADING_OUT, MIX_FADING_IN); |
2600 | 906 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
907 |
TMidiSong = record |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
908 |
samples : LongInt; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
909 |
events : Pointer; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
910 |
end; |
2600 | 911 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
912 |
TMusicUnion = record |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
913 |
case Byte of |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
914 |
0: ( midi : TMidiSong ); |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
915 |
1: ( ogg : Pointer); |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
916 |
end; |
2600 | 917 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
918 |
PMixMusic = ^TMixMusic; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
919 |
TMixMusic = record |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
920 |
end; |
2600 | 921 |
|
9333 | 922 |
TPostMix = procedure(udata: Pointer; stream: PByte; len: LongInt); cdecl; |
7180 | 923 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
924 |
{* SDL_net *} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
925 |
TIPAddress = record |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
926 |
host: LongWord; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
927 |
port: Word; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
928 |
end; |
2600 | 929 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
930 |
PTCPSocket = ^TTCPSocket; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
931 |
TTCPSocket = record |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
932 |
ready: LongInt; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
933 |
channel: LongInt; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
934 |
remoteAddress: TIPaddress; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
935 |
localAddress: TIPaddress; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
936 |
sflag: LongInt; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
937 |
end; |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
938 |
PSDLNet_SocketSet = ^TSDLNet_SocketSet; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
939 |
TSDLNet_SocketSet = record |
6580
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
940 |
numsockets, |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
941 |
maxsockets: LongInt; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
942 |
sockets: PTCPSocket; |
6155187bf599
A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents:
6551
diff
changeset
|
943 |
end; |
2600 | 944 |
|
945 |
||
946 |
///////////////////////////////////////////////////////////////// |
|
947 |
///////////////////// FUNCTION DEFINITIONS ///////////////////// |
|
948 |
///////////////////////////////////////////////////////////////// |
|
949 |
||
950 |
||
951 |
{* SDL *} |
|
6284 | 952 |
function SDL_Init(flags: LongWord): LongInt; cdecl; external SDLLibName; |
2674
2fce032f2f95
lupdate + Palewolf's updated spanish translation + other patches of mine
koda
parents:
2671
diff
changeset
|
953 |
function SDL_InitSubSystem(flags: LongWord): LongInt; cdecl; external SDLLibName; |
4 | 954 |
procedure SDL_Quit; cdecl; external SDLLibName; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
955 |
|
6284 | 956 |
procedure SDL_Delay(msec: LongWord); cdecl; external SDLLibName; |
957 |
function SDL_GetTicks: LongWord; cdecl; external SDLLibName; |
|
4 | 958 |
|
959 |
function SDL_MustLock(Surface: PSDL_Surface): Boolean; |
|
432 | 960 |
function SDL_LockSurface(Surface: PSDL_Surface): LongInt; cdecl; external SDLLibName; |
4 | 961 |
procedure SDL_UnlockSurface(Surface: PSDL_Surface); cdecl; external SDLLibName; |
962 |
||
963 |
function SDL_GetError: PChar; cdecl; external SDLLibName; |
|
964 |
||
6284 | 965 |
function SDL_SetVideoMode(width, height, bpp: LongInt; flags: LongWord): PSDL_Surface; cdecl; external SDLLibName; |
966 |
function SDL_CreateRGBSurface(flags: LongWord; Width, Height, Depth: LongInt; RMask, GMask, BMask, AMask: LongWord): PSDL_Surface; cdecl; external SDLLibName; |
|
967 |
function SDL_CreateRGBSurfaceFrom(pixels: Pointer; width, height, depth, pitch: LongInt; RMask, GMask, BMask, AMask: LongWord): PSDL_Surface; cdecl; external SDLLibName; |
|
4 | 968 |
procedure SDL_FreeSurface(Surface: PSDL_Surface); cdecl; external SDLLibName; |
6284 | 969 |
function SDL_SetColorKey(surface: PSDL_Surface; flag, key: LongWord): LongInt; cdecl; external SDLLibName; |
970 |
function SDL_SetAlpha(surface: PSDL_Surface; flag, key: LongWord): LongInt; cdecl; external SDLLibName; |
|
2248
26e11cb27c61
real fix for iphone color (reverting previous commit)
koda
parents:
2242
diff
changeset
|
971 |
function SDL_ConvertSurface(src: PSDL_Surface; fmt: PSDL_PixelFormat; flags: LongInt): PSDL_Surface; cdecl; external SDLLibName; |
4 | 972 |
|
105 | 973 |
function SDL_UpperBlit(src: PSDL_Surface; srcrect: PSDL_Rect; dst: PSDL_Surface; dstrect: PSDL_Rect): LongInt; cdecl; external SDLLibName; |
6284 | 974 |
function SDL_FillRect(dst: PSDL_Surface; dstrect: PSDL_Rect; color: LongWord): LongInt; cdecl; external SDLLibName; |
975 |
procedure SDL_UpdateRect(Screen: PSDL_Surface; x, y: LongInt; w, h: LongWord); cdecl; external SDLLibName; |
|
432 | 976 |
function SDL_Flip(Screen: PSDL_Surface): LongInt; cdecl; external SDLLibName; |
4 | 977 |
|
6284 | 978 |
procedure SDL_GetRGB(pixel: LongWord; fmt: PSDL_PixelFormat; r, g, b: PByte); cdecl; external SDLLibName; |
979 |
procedure SDL_GetRGBA(pixel: LongWord; fmt: PSDL_PixelFormat; r, g, b, a: PByte); cdecl; external SDLLibName; |
|
980 |
function SDL_MapRGB(format: PSDL_PixelFormat; r, g, b: Byte): LongWord; cdecl; external SDLLibName; |
|
981 |
function SDL_MapRGBA(format: PSDL_PixelFormat; r, g, b, a: Byte): LongWord; cdecl; external SDLLibName; |
|
4 | 982 |
|
983 |
function SDL_DisplayFormat(Surface: PSDL_Surface): PSDL_Surface; cdecl; external SDLLibName; |
|
35 | 984 |
function SDL_DisplayFormatAlpha(Surface: PSDL_Surface): PSDL_Surface; cdecl; external SDLLibName; |
4 | 985 |
|
986 |
function SDL_RWFromFile(filename, mode: PChar): PSDL_RWops; cdecl; external SDLLibName; |
|
432 | 987 |
function SDL_SaveBMP_RW(surface: PSDL_Surface; dst: PSDL_RWops; freedst: LongInt): LongInt; cdecl; external SDLLibName; |
4 | 988 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
989 |
{$IFDEF SDL2} |
6284 | 990 |
function SDL_CreateWindow(title: PChar; x,y,w,h: LongInt; flags: LongWord): PSDL_Window; cdecl; external SDLLibName; |
991 |
function SDL_CreateRenderer(window: PSDL_Window; index: LongInt; flags: LongWord): PSDL_Renderer; cdecl; external SDLLibName; |
|
5486
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
992 |
function SDL_DestroyWindow(window: PSDL_Window): LongInt; cdecl; external SDLLibName; |
4933 | 993 |
function SDL_DestroyRenderer(renderer: PSDL_Renderer): LongInt; cdecl; external SDLLibName; |
6021 | 994 |
procedure SDL_SetWindowSize(window: PSDL_Window; w, h: LongInt); cdecl; external SDLLibName; |
6281
dc9c44f47e75
avoid linking compatible code from sdl library, let's provide our own
koda
parents:
6280
diff
changeset
|
995 |
function SDL_GetCurrentVideoDriver:Pchar; cdecl; external SDLLibName; |
5486
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
996 |
|
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
997 |
function SDL_GL_CreateContext(window: PSDL_Window): PSDL_GLContext; cdecl; external SDLLibName; |
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
998 |
procedure SDL_GL_DeleteContext(context: PSDL_GLContext); cdecl; external SDLLibName; |
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
999 |
function SDL_GL_SwapWindow(window: PSDL_Window): LongInt; cdecl; external SDLLibName; |
5505
a55aab592950
Ditch the renderer system in sdl1.3 and use the 'old fashioned' sdl/opengl context. This gives us more flexibility and less problem in receiving video events (expecially on mobile platform) as well as not having to care to reset the gl context every time sdl interferes.
koda
parents:
5486
diff
changeset
|
1000 |
function SDL_GL_SetSwapInterval(interval: LongInt): LongInt; cdecl; external SDLLibName; |
5177 | 1001 |
|
4933 | 1002 |
procedure SDL_VideoQuit; cdecl; external SDLLibName; |
4911
5d10bd725efe
update libs and move the multiwindow handling from internal libsdl mods to proper apis usage
koda
parents:
4454
diff
changeset
|
1003 |
function SDL_GetNumVideoDisplays: LongInt; cdecl; external SDLLibName; |
5486
e75f7c3c6275
ios: this should prevent at least one of the crashes zorg spotted; also added some callbacks in SDLh; also polished project file (from -O2 to -Os)
koda
parents:
5187
diff
changeset
|
1004 |
procedure SDL_ShowWindow(window: PSDL_Window); cdecl; external SDLLibName; |
2716
b9ca1bfca24f
complete the replacement of init/free wrappers for every unit
koda
parents:
2714
diff
changeset
|
1005 |
|
6284 | 1006 |
function SDL_SetRenderDrawColor(renderer: PSDL_Renderer; r,g,b,a: Byte): LongInt; cdecl; external SDLLibName; |
5187 | 1007 |
function SDL_GetRenderer(window: PSDL_Window): PSDL_Renderer; cdecl; external SDLLibName; |
4933 | 1008 |
function SDL_RenderFillRect(renderer: PSDL_Renderer; rect: PSDL_Rect): LongInt; cdecl; external SDLLibName; |
1009 |
function SDL_RenderClear(renderer: PSDL_Renderer): LongInt; cdecl; external SDLLibName; |
|
1010 |
procedure SDL_RenderPresent(renderer: PSDL_Renderer); cdecl; external SDLLibName; |
|
6284 | 1011 |
function SDL_RenderReadPixels(renderer: PSDL_Renderer; rect: PSDL_Rect; format: LongInt; pixels: Pointer; pitch: LongInt): LongInt; cdecl; external SDLLibName; |
5187 | 1012 |
function SDL_RenderSetViewport(window: PSDL_Window; rect: PSDL_Rect): LongInt; cdecl; external SDLLibName; |
2697 | 1013 |
|
1014 |
function SDL_GetRelativeMouseState(x, y: PLongInt): Byte; cdecl; external SDLLibName; |
|
6284 | 1015 |
function SDL_PixelFormatEnumToMasks(format: TSDL_ArrayByteOrder; bpp: PLongInt; Rmask, Gmask, Bmask, Amask: PLongInt): Boolean; cdecl; external SDLLibName; |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
1016 |
|
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
1017 |
procedure SDL_WarpMouseInWindow(window: PSDL_Window; x, y: LongInt); cdecl; external SDLLibName; |
6284 | 1018 |
function SDL_SetHint(name, value: PChar): Boolean; cdecl; external SDLLibName; |
6281
dc9c44f47e75
avoid linking compatible code from sdl library, let's provide our own
koda
parents:
6280
diff
changeset
|
1019 |
procedure SDL_StartTextInput; cdecl; external SDLLibName; |
5724 | 1020 |
|
6974
2d3beb445d64
minor changes for more compatibilities with other compilers
koda
parents:
6972
diff
changeset
|
1021 |
function SDL_PeepEvents(event: PSDL_Event; numevents: LongInt; action: TSDL_eventaction; minType, maxType: LongWord): LongInt; cdecl; external SDLLibName; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1022 |
|
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1023 |
function SDL_AllocFormat(format: LongWord): PSDL_PixelFormat; cdecl; external SDLLibName; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1024 |
procedure SDL_FreeFormat(pixelformat: PSDL_PixelFormat); cdecl; external SDLLibName; |
5724 | 1025 |
{$ELSE} |
6974
2d3beb445d64
minor changes for more compatibilities with other compilers
koda
parents:
6972
diff
changeset
|
1026 |
function SDL_PeepEvents(event: PSDL_Event; numevents: LongInt; action: TSDL_eventaction; mask: LongWord): LongInt; cdecl; external SDLLibName; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1027 |
|
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1028 |
function SDL_EnableUNICODE(enable: LongInt): LongInt; cdecl; external SDLLibName; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1029 |
function SDL_EnableKeyRepeat(timedelay, interval: LongInt): LongInt; cdecl; external SDLLibName; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1030 |
function SDL_VideoDriverName(namebuf: PChar; maxlen: LongInt): PChar; cdecl; external SDLLibName; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
1031 |
{$ENDIF} |
2714
c85ffe57d971
update iphone frontend to the new (silly) sdl api, code cleanups for other sections
koda
parents:
2701
diff
changeset
|
1032 |
|
8865 | 1033 |
|
2242 | 1034 |
function SDL_GetMouseState(x, y: PLongInt): Byte; cdecl; external SDLLibName; |
6284 | 1035 |
function SDL_GetKeyName(key: LongWord): PChar; cdecl; external SDLLibName; |
6900 | 1036 |
function SDL_GetScancodeName(key: LongWord): PChar; cdecl; external SDLLibName; |
6917 | 1037 |
function SDL_GetKeyFromScancode(key: LongWord): LongInt; cdecl; external SDLLibName; |
1038 |
||
4 | 1039 |
|
2428 | 1040 |
procedure SDL_PumpEvents; cdecl; external SDLLibName; |
432 | 1041 |
function SDL_PollEvent(event: PSDL_Event): LongInt; cdecl; external SDLLibName; |
2590 | 1042 |
function SDL_WaitEvent(event: PSDL_Event): LongInt; cdecl; external SDLLibName; |
6284 | 1043 |
procedure SDL_SetEventFilter(filter: TSDL_EventFilter); cdecl; external SDLLibName; |
4 | 1044 |
|
432 | 1045 |
function SDL_ShowCursor(toggle: LongInt): LongInt; cdecl; external SDLLibName; |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1046 |
procedure SDL_WarpMouse(x, y: Word); {$IFDEF SDL2}inline{$ELSE}cdecl; external SDLLibName{$ENDIF}; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1047 |
function SDL_GetKeyState(numkeys: PLongInt): PByteArray; cdecl; external SDLLibName {$IFDEF SDL2} name 'SDL_GetKeyboardState'{$ENDIF}; |
4 | 1048 |
|
6284 | 1049 |
procedure SDL_WM_SetIcon(icon: PSDL_Surface; mask : Byte); cdecl; external SDLLibName; |
4 | 1050 |
procedure SDL_WM_SetCaption(title: PChar; icon: PChar); cdecl; external SDLLibName; |
2674
2fce032f2f95
lupdate + Palewolf's updated spanish translation + other patches of mine
koda
parents:
2671
diff
changeset
|
1051 |
function SDL_WM_ToggleFullScreen(surface: PSDL_Surface): LongInt; cdecl; external SDLLibName; |
4 | 1052 |
|
8865 | 1053 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1054 |
(* remember to mark the threaded functions as 'cdecl; export;' |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1055 |
(or have fun debugging nil arguments) *) |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1056 |
function SDL_CreateThread(fn: Pointer; {$IFDEF SDL2}name: PChar;{$ENDIF} data: Pointer): PSDL_Thread; cdecl; external SDLLibName; |
6330 | 1057 |
procedure SDL_WaitThread(thread: PSDL_Thread; status: PLongInt); cdecl; external SDLLibName; |
8865 | 1058 |
procedure SDL_KillThread(thread: PSDL_Thread); cdecl; external SDLLibName; |
1059 |
||
433 | 1060 |
function SDL_CreateMutex: PSDL_mutex; cdecl; external SDLLibName; |
1061 |
procedure SDL_DestroyMutex(mutex: PSDL_mutex); cdecl; external SDLLibName; |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1062 |
function SDL_LockMutex(mutex: PSDL_mutex): LongInt; cdecl; external SDLLibName {$IFNDEF SDL2}name 'SDL_mutexP'{$ENDIF}; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1063 |
function SDL_UnlockMutex(mutex: PSDL_mutex): LongInt; cdecl; external SDLLibName {$IFNDEF SDL2}name 'SDL_mutexV'{$ENDIF}; |
433 | 1064 |
|
2252 | 1065 |
function SDL_GL_SetAttribute(attr: TSDL_GLattr; value: LongInt): LongInt; cdecl; external SDLLibName; |
7016 | 1066 |
procedure SDL_GL_SwapBuffers; cdecl; external SDLLibName; |
753 | 1067 |
|
7180 | 1068 |
procedure SDL_LockAudio; cdecl; external SDLLibName; |
1069 |
procedure SDL_UnlockAudio; cdecl; external SDLLibName; |
|
1070 |
||
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1071 |
function SDL_NumJoysticks: LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1072 |
function SDL_JoystickName(idx: LongInt): PChar; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1073 |
function SDL_JoystickOpen(idx: LongInt): PSDL_Joystick; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1074 |
function SDL_JoystickOpened(idx: LongInt): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1075 |
function SDL_JoystickIndex(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1076 |
function SDL_JoystickNumAxes(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1077 |
function SDL_JoystickNumBalls(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1078 |
function SDL_JoystickNumHats(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1079 |
function SDL_JoystickNumButtons(joy: PSDL_Joystick): LongInt; cdecl; external SDLLibName; |
2428 | 1080 |
procedure SDL_JoystickUpdate; cdecl; external SDLLibName; |
2591
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1081 |
function SDL_JoystickEventState(state: LongInt): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1082 |
function SDL_JoystickGetAxis(joy: PSDL_Joystick; axis: LongInt): LongInt; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1083 |
function SDL_JoystickGetBall(joy: PSDL_Joystick; ball: LongInt; dx: PInteger; dy: PInteger): Word; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1084 |
function SDL_JoystickGetHat(joy: PSDL_Joystick; hat: LongInt): Byte; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1085 |
function SDL_JoystickGetButton(joy: PSDL_Joystick; button: LongInt): Byte; cdecl; external SDLLibName; |
c6597b65caea
other controls implementation + sdlh revisited (once again)
koda
parents:
2590
diff
changeset
|
1086 |
procedure SDL_JoystickClose(joy: PSDL_Joystick); cdecl; external SDLLibName; |
2428 | 1087 |
|
5565 | 1088 |
{$IFDEF WIN32} |
3153 | 1089 |
function SDL_putenv(const text: PChar): LongInt; cdecl; external SDLLibName; |
1090 |
function SDL_getenv(const text: PChar): PChar; cdecl; external SDLLibName; |
|
5565 | 1091 |
{$ENDIF} |
3153 | 1092 |
|
7167
0b3b306f129a
Android: added a callback to java to determine dpi/dip how much we should scale the ui
Xeli
parents:
7049
diff
changeset
|
1093 |
|
5052 | 1094 |
(* SDL_ttf *) |
2600 | 1095 |
function TTF_Init: LongInt; cdecl; external SDL_TTFLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1096 |
procedure TTF_Quit; cdecl; external SDL_TTFLibName; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
1097 |
|
6286
835392304f81
and while we are giving SDLh.pas all this love, let's fix the signature of one SDL_ttf calls
koda
parents:
6285
diff
changeset
|
1098 |
function TTF_SizeUTF8(font: PTTF_Font; const text: PChar; w, h: PLongInt): LongInt; cdecl; external SDL_TTFLibName; |
2665
50b4e544c163
complete transition of longword->sdl_color for TTF bindings
koda
parents:
2664
diff
changeset
|
1099 |
|
2664
949c189ba568
powerpc and gameserver compilation disabled temporarily
koda
parents:
2663
diff
changeset
|
1100 |
function TTF_RenderUTF8_Solid(font: PTTF_Font; const text: PChar; fg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName; |
2665
50b4e544c163
complete transition of longword->sdl_color for TTF bindings
koda
parents:
2664
diff
changeset
|
1101 |
function TTF_RenderUTF8_Blended(font: PTTF_Font; const text: PChar; fg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName; |
2664
949c189ba568
powerpc and gameserver compilation disabled temporarily
koda
parents:
2663
diff
changeset
|
1102 |
function TTF_RenderUTF8_Shaded(font: PTTF_Font; const text: PChar; fg, bg: TSDL_Color): PSDL_Surface; cdecl; external SDL_TTFLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1103 |
|
8028 | 1104 |
function TTF_OpenFontRW(src: PSDL_RWops; freesrc: LongBool; size: LongInt): PTTF_Font; cdecl; external SDL_TTFLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1105 |
procedure TTF_SetFontStyle(font: PTTF_Font; style: LongInt); cdecl; external SDL_TTFLibName; |
10640 | 1106 |
procedure TTF_CloseFont(font: PTTF_Font); cdecl; external SDL_TTFLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1107 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1108 |
(* SDL_mixer *) |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1109 |
function Mix_Init(flags: LongInt): LongInt; {$IFDEF SDL_MIXER_NEWER}cdecl; external SDL_MixerLibName{$ELSE}inline{$ENDIF}; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1110 |
procedure Mix_Quit; {$IFDEF SDL_MIXER_NEWER}cdecl; external SDL_MixerLibName{$ELSE}inline{$ENDIF}; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
1111 |
|
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1112 |
function Mix_OpenAudio(frequency: LongInt; format: Word; channels: LongInt; chunksize: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1113 |
procedure Mix_CloseAudio; cdecl; external SDL_MixerLibName; |
7180 | 1114 |
function Mix_QuerySpec(frequency: PLongInt; format: PWord; channels: PLongInt): LongInt; cdecl; external SDL_MixerLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1115 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1116 |
function Mix_Volume(channel: LongInt; volume: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
2665
50b4e544c163
complete transition of longword->sdl_color for TTF bindings
koda
parents:
2664
diff
changeset
|
1117 |
function Mix_SetDistance(channel: LongInt; distance: Byte): LongInt; cdecl; external SDL_MixerLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1118 |
function Mix_VolumeMusic(volume: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1119 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1120 |
function Mix_AllocateChannels(numchans: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1121 |
procedure Mix_FreeChunk(chunk: PMixChunk); cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1122 |
procedure Mix_FreeMusic(music: PMixMusic); cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1123 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1124 |
function Mix_LoadWAV_RW(src: PSDL_RWops; freesrc: LongInt): PMixChunk; cdecl; external SDL_MixerLibName; |
8046 | 1125 |
function Mix_LoadMUS_RW(src: PSDL_RWops): PMixMusic; cdecl; external SDL_MixerLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1126 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1127 |
function Mix_Playing(channel: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1128 |
function Mix_PlayingMusic: LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1129 |
function Mix_FadeInMusic(music: PMixMusic; loops: LongInt; ms: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1130 |
|
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1131 |
function Mix_PlayChannelTimed(channel: LongInt; chunk: PMixChunk; loops: LongInt; ticks: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1132 |
function Mix_PlayMusic(music: PMixMusic; loops: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1133 |
function Mix_PausedMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1134 |
function Mix_PauseMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1135 |
function Mix_ResumeMusic(music: PMixMusic): LongInt; cdecl; external SDL_MixerLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1136 |
function Mix_HaltChannel(channel: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
6362
ceacd1b61833
modify ReleaseSound so that it performs a partial release of unused sounds, useful for responding to memory warnings
koda
parents:
6329
diff
changeset
|
1137 |
function Mix_HaltMusic: LongInt; cdecl; external SDL_MixerLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1138 |
|
4956
48e1f9a04c28
usound: added function for loops with fade in and out
koda
parents:
4933
diff
changeset
|
1139 |
function Mix_FadeInChannelTimed(channel: LongInt; chunk: PMixChunk; loops: LongInt; fadems: LongInt; ticks: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
48e1f9a04c28
usound: added function for loops with fade in and out
koda
parents:
4933
diff
changeset
|
1140 |
function Mix_FadeOutChannel(channel: LongInt; fadems: LongInt): LongInt; cdecl; external SDL_MixerLibName; |
48e1f9a04c28
usound: added function for loops with fade in and out
koda
parents:
4933
diff
changeset
|
1141 |
|
9333 | 1142 |
procedure Mix_SetPostMix( mix_func: TPostMix; arg: Pointer); cdecl; external SDL_MixerLibName; |
7180 | 1143 |
|
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1144 |
(* SDL_image *) |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1145 |
function IMG_Init(flags: LongInt): LongInt; {$IFDEF SDL_IMAGE_NEWER}cdecl; external SDL_ImageLibName{$ELSE}inline{$ENDIF}; |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1146 |
procedure IMG_Quit; {$IFDEF SDL_IMAGE_NEWER}cdecl; external SDL_ImageLibName{$ELSE}inline{$ENDIF}; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
1147 |
|
2600 | 1148 |
function IMG_Load(const _file: PChar): PSDL_Surface; cdecl; external SDL_ImageLibName; |
8022 | 1149 |
function IMG_Load_RW(rwop: PSDL_RWops; freesrc: LongBool): PSDL_Surface; cdecl; external SDL_ImageLibName; |
2600 | 1150 |
function IMG_LoadPNG_RW(rwop: PSDL_RWops): PSDL_Surface; cdecl; external SDL_ImageLibName; |
8022 | 1151 |
function IMG_LoadTyped_RW(rwop: PSDL_RWops; freesrc: LongBool; type_: PChar): PSDL_Surface; cdecl; external SDL_ImageLibName; |
2592 | 1152 |
|
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1153 |
(* SDL_net *) |
2600 | 1154 |
function SDLNet_Init: LongInt; cdecl; external SDL_NetLibName; |
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1155 |
procedure SDLNet_Quit; cdecl; external SDL_NetLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1156 |
|
2600 | 1157 |
function SDLNet_AllocSocketSet(maxsockets: LongInt): PSDLNet_SocketSet; cdecl; external SDL_NetLibName; |
2671
7e0f88013fe8
smaller patches, one missing Sky-lowres, IMG_Init and Mix_Init (might require newer libraries), updates to SDL bindings, code cleanup, new compile flags
koda
parents:
2669
diff
changeset
|
1158 |
function SDLNet_ResolveHost(var address: TIPaddress; host: PChar; port: Word): LongInt; cdecl; external SDL_NetLibName; |
2600 | 1159 |
function SDLNet_TCP_Accept(server: PTCPsocket): PTCPSocket; cdecl; external SDL_NetLibName; |
1160 |
function SDLNet_TCP_Open(var ip: TIPaddress): PTCPSocket; cdecl; external SDL_NetLibName; |
|
1161 |
function SDLNet_TCP_Send(sock: PTCPsocket; data: Pointer; len: LongInt): LongInt; cdecl; external SDL_NetLibName; |
|
1162 |
function SDLNet_TCP_Recv(sock: PTCPsocket; data: Pointer; len: LongInt): LongInt; cdecl; external SDL_NetLibName; |
|
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1163 |
procedure SDLNet_TCP_Close(sock: PTCPsocket); cdecl; external SDL_NetLibName; |
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1164 |
procedure SDLNet_FreeSocketSet(_set: PSDLNet_SocketSet); cdecl; external SDL_NetLibName; |
2600 | 1165 |
function SDLNet_AddSocket(_set: PSDLNet_SocketSet; sock: PTCPSocket): LongInt; cdecl; external SDL_NetLibName; |
1166 |
function SDLNet_CheckSockets(_set: PSDLNet_SocketSet; timeout: LongInt): LongInt; cdecl; external SDL_NetLibName; |
|
2630 | 1167 |
|
2515
51d3f4b6293a
revert audio to use SDL_mixer -- also frontend uses it, so it needs sdlmixer sources
koda
parents:
2477
diff
changeset
|
1168 |
|
6284 | 1169 |
procedure SDLNet_Write16(value: Word; buf: Pointer); |
1170 |
procedure SDLNet_Write32(value: LongWord; buf: Pointer); |
|
1171 |
function SDLNet_Read16(buf: Pointer): Word; |
|
1172 |
function SDLNet_Read32(buf: Pointer): LongWord; |
|
3663
8c28abf427f5
reduce the number of keywords used and switch to BMP format for screenshots
koda
parents:
3598
diff
changeset
|
1173 |
|
4 | 1174 |
implementation |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1175 |
{$IFDEF SDL2} |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1176 |
uses uStore; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
1177 |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1178 |
// for sdl1.2 we directly call SDL_WarpMouse() |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1179 |
// for sdl2 we provide a SDL_WarpMouse() which calls the right SDL_WarpMouseInWindow() function |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1180 |
// this has the advantage of reducing 'uses' and 'ifdef' statements |
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1181 |
// (SDLwindow is a private member of uStore module) |
7049 | 1182 |
procedure SDL_WarpMouse(x, y: Word); inline; |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
1183 |
begin |
7049 | 1184 |
WarpMouse(x, y); |
5046
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
1185 |
end; |
fc6639d56799
this brings compatibility up with SDL HEAD (5504), but maybe breaks compatibility with sdl 1.2 so please test! still has problems with keyboard input and rendered ttf textures
koda
parents:
5041
diff
changeset
|
1186 |
{$ENDIF} |
4 | 1187 |
|
1188 |
function SDL_MustLock(Surface: PSDL_Surface): Boolean; |
|
1189 |
begin |
|
6072 | 1190 |
SDL_MustLock:= |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1191 |
{$IFDEF SDL2} |
6072 | 1192 |
((surface^.flags and SDL_RLEACCEL) <> 0) |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
1193 |
{$ELSE} |
6072 | 1194 |
( surface^.offset <> 0 ) or (( surface^.flags and (SDL_HWSURFACE or SDL_ASYNCBLIT or SDL_RLEACCEL)) <> 0) |
5004
2efa6a414518
update some sdl-1.3 bindings (working up to rev 5296)
koda
parents:
4976
diff
changeset
|
1195 |
{$ENDIF} |
4 | 1196 |
end; |
1197 |
||
6072 | 1198 |
{$IFNDEF SDL_MIXER_NEWER} |
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1199 |
function Mix_Init(flags: LongInt): LongInt; inline; |
6072 | 1200 |
begin |
6990
40e5af28d026
change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents:
6982
diff
changeset
|
1201 |
Mix_Init:= flags; |
6072 | 1202 |
end; |
1203 |
||
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1204 |
procedure Mix_Quit; inline; |
6072 | 1205 |
begin |
1206 |
end; |
|
1207 |
{$ENDIF} |
|
1208 |
||
1209 |
{$IFNDEF SDL_IMAGE_NEWER} |
|
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1210 |
function IMG_Init(flags: LongInt): LongInt; inline; |
6072 | 1211 |
begin |
6990
40e5af28d026
change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents:
6982
diff
changeset
|
1212 |
IMG_Init:= flags; |
6072 | 1213 |
end; |
1214 |
||
9317
a04c30940d2d
use SDL2 as ifdef symbol because we're not really sdl1.3 compatible, change the compatibility layer, drop unused code, add some documentation
koda
parents:
9311
diff
changeset
|
1215 |
procedure IMG_Quit; inline; |
6072 | 1216 |
begin |
1217 |
end; |
|
1218 |
{$ENDIF} |
|
1219 |
||
6284 | 1220 |
procedure SDLNet_Write16(value: Word; buf: Pointer); |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1221 |
begin |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1222 |
PByteArray(buf)^[1]:= value; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1223 |
PByteArray(buf)^[0]:= value shr 8 |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1224 |
end; |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1225 |
|
6284 | 1226 |
procedure SDLNet_Write32(value: LongWord; buf: Pointer); |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1227 |
begin |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1228 |
PByteArray(buf)^[3]:= value; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1229 |
PByteArray(buf)^[2]:= value shr 8; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1230 |
PByteArray(buf)^[1]:= value shr 16; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1231 |
PByteArray(buf)^[0]:= value shr 24 |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1232 |
end; |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1233 |
|
6284 | 1234 |
function SDLNet_Read16(buf: Pointer): Word; |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1235 |
begin |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1236 |
SDLNet_Read16:= PByteArray(buf)^[1] or |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1237 |
(PByteArray(buf)^[0] shl 8) |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1238 |
end; |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1239 |
|
6284 | 1240 |
function SDLNet_Read32(buf: Pointer): LongWord; |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1241 |
begin |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2800
diff
changeset
|
1242 |
SDLNet_Read32:= PByteArray(buf)^[3] or |
459
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1243 |
(PByteArray(buf)^[2] shl 8) or |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1244 |
(PByteArray(buf)^[1] shl 16) or |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1245 |
(PByteArray(buf)^[0] shl 24) |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1246 |
end; |
95163c6efa69
Do not use SDL_Net's to/from network byte order conversion functions
unc0rr
parents:
433
diff
changeset
|
1247 |
|
4 | 1248 |
end. |
2241
7992f7ba388d
completes removal of wav files, updates SDLh and adds DEBUGFILE to hwengine when compiled in Debug mode
koda
parents:
2240
diff
changeset
|
1249 |