Module SDL
In: lib/ruby-sdl-ffi/sdl.rb
lib/ruby-sdl-ffi/gfx/blitfunc.rb
lib/ruby-sdl-ffi/gfx/rotozoom.rb
lib/ruby-sdl-ffi/gfx/imagefilter.rb
lib/ruby-sdl-ffi/gfx/framerate.rb
lib/ruby-sdl-ffi/gfx/primitives.rb
lib/ruby-sdl-ffi/image.rb
lib/ruby-sdl-ffi/mixer.rb
lib/ruby-sdl-ffi/gfx.rb
lib/ruby-sdl-ffi/sdl/timer.rb
lib/ruby-sdl-ffi/sdl/keysyms.rb
lib/ruby-sdl-ffi/sdl/joystick.rb
lib/ruby-sdl-ffi/sdl/event.rb
lib/ruby-sdl-ffi/sdl/rwops.rb
lib/ruby-sdl-ffi/sdl/audio.rb
lib/ruby-sdl-ffi/sdl/keyboard.rb
lib/ruby-sdl-ffi/sdl/mouse.rb
lib/ruby-sdl-ffi/sdl/mutex.rb
lib/ruby-sdl-ffi/sdl/video.rb
lib/ruby-sdl-ffi/sdl/core.rb
lib/ruby-sdl-ffi/sdl/cdrom.rb
lib/ruby-sdl-ffi/ttf.rb

Methods

Classes and Modules

Module SDL::Gfx
Module SDL::Image
Module SDL::Mac
Module SDL::Mixer
Module SDL::TTF
Class SDL::ActiveEvent
Class SDL::AudioSpec
Class SDL::CD
Class SDL::CDtrack
Class SDL::Chunk
Class SDL::Color
Class SDL::Cursor
Class SDL::Event
Class SDL::ExposeEvent
Class SDL::JoyAxisEvent
Class SDL::JoyBallEvent
Class SDL::JoyButtonEvent
Class SDL::JoyHatEvent
Class SDL::Joystick
Class SDL::KeyboardEvent
Class SDL::Keysym
Class SDL::MouseButtonEvent
Class SDL::MouseMotionEvent
Class SDL::Music
Class SDL::Overlay
Class SDL::Palette
Class SDL::PixelFormat
Class SDL::QuitEvent
Class SDL::RWops
Class SDL::RWopsHidden
Class SDL::RWopsHiddenMem
Class SDL::RWopsHiddenStdio
Class SDL::RWopsHiddenUnknown
Class SDL::Rect
Class SDL::ResizeEvent
Class SDL::Surface
Class SDL::SysWMEvent
Class SDL::UserEvent
Class SDL::Version
Class SDL::VideoInfo

Constants

LOAD_PATHS = NiceFFI::PathSet::DEFAULT.dup
MAX_VOLUME = 128
NO_FADING = 0
FADING_OUT = 1
FADING_IN = 2
MUS_NONE = 0
MUS_CMD = 1
MUS_WAV = 2
MUS_MOD = 3
MUS_MID = 4
MUS_OGG = 5
MUS_MP3 = 6
MUS_MP3_MAD = 7
CHANNEL_POST = -2
EFFECTSMAXSPEED = "MIX_EFFECTSMAXSPEED"
TIMESLICE = 10
TIMER_RESOLUTION = 10
K_FIRST = 0
K_UNKNOWN = 0
K_BACKSPACE = 8
K_TAB = 9
K_CLEAR = 12
K_RETURN = 13
K_PAUSE = 19
K_ESCAPE = 27
K_SPACE = 32
K_EXCLAIM = 33
K_QUOTEDBL = 34
K_HASH = 35
K_DOLLAR = 36
K_AMPERSAND = 38
K_QUOTE = 39
K_LEFTPAREN = 40
K_RIGHTPAREN = 41
K_ASTERISK = 42
K_PLUS = 43
K_COMMA = 44
K_MINUS = 45
K_PERIOD = 46
K_SLASH = 47
K_0 = 48
K_1 = 49
K_2 = 50
K_3 = 51
K_4 = 52
K_5 = 53
K_6 = 54
K_7 = 55
K_8 = 56
K_9 = 57
K_COLON = 58
K_SEMICOLON = 59
K_LESS = 60
K_EQUALS = 61
K_GREATER = 62
K_QUESTION = 63
K_AT = 64
K_LEFTBRACKET = 91
K_BACKSLASH = 92
K_RIGHTBRACKET = 93
K_CARET = 94
K_UNDERSCORE = 95
K_BACKQUOTE = 96
K_a = 97
K_b = 98
K_c = 99
K_d = 100
K_e = 101
K_f = 102
K_g = 103
K_h = 104
K_i = 105
K_j = 106
K_k = 107
K_l = 108
K_m = 109
K_n = 110
K_o = 111
K_p = 112
K_q = 113
K_r = 114
K_s = 115
K_t = 116
K_u = 117
K_v = 118
K_w = 119
K_x = 120
K_y = 121
K_z = 122
K_DELETE = 127
K_WORLD_0 = 160
K_WORLD_1 = 161
K_WORLD_2 = 162
K_WORLD_3 = 163
K_WORLD_4 = 164
K_WORLD_5 = 165
K_WORLD_6 = 166
K_WORLD_7 = 167
K_WORLD_8 = 168
K_WORLD_9 = 169
K_WORLD_10 = 170
K_WORLD_11 = 171
K_WORLD_12 = 172
K_WORLD_13 = 173
K_WORLD_14 = 174
K_WORLD_15 = 175
K_WORLD_16 = 176
K_WORLD_17 = 177
K_WORLD_18 = 178
K_WORLD_19 = 179
K_WORLD_20 = 180
K_WORLD_21 = 181
K_WORLD_22 = 182
K_WORLD_23 = 183
K_WORLD_24 = 184
K_WORLD_25 = 185
K_WORLD_26 = 186
K_WORLD_27 = 187
K_WORLD_28 = 188
K_WORLD_29 = 189
K_WORLD_30 = 190
K_WORLD_31 = 191
K_WORLD_32 = 192
K_WORLD_33 = 193
K_WORLD_34 = 194
K_WORLD_35 = 195
K_WORLD_36 = 196
K_WORLD_37 = 197
K_WORLD_38 = 198
K_WORLD_39 = 199
K_WORLD_40 = 200
K_WORLD_41 = 201
K_WORLD_42 = 202
K_WORLD_43 = 203
K_WORLD_44 = 204
K_WORLD_45 = 205
K_WORLD_46 = 206
K_WORLD_47 = 207
K_WORLD_48 = 208
K_WORLD_49 = 209
K_WORLD_50 = 210
K_WORLD_51 = 211
K_WORLD_52 = 212
K_WORLD_53 = 213
K_WORLD_54 = 214
K_WORLD_55 = 215
K_WORLD_56 = 216
K_WORLD_57 = 217
K_WORLD_58 = 218
K_WORLD_59 = 219
K_WORLD_60 = 220
K_WORLD_61 = 221
K_WORLD_62 = 222
K_WORLD_63 = 223
K_WORLD_64 = 224
K_WORLD_65 = 225
K_WORLD_66 = 226
K_WORLD_67 = 227
K_WORLD_68 = 228
K_WORLD_69 = 229
K_WORLD_70 = 230
K_WORLD_71 = 231
K_WORLD_72 = 232
K_WORLD_73 = 233
K_WORLD_74 = 234
K_WORLD_75 = 235
K_WORLD_76 = 236
K_WORLD_77 = 237
K_WORLD_78 = 238
K_WORLD_79 = 239
K_WORLD_80 = 240
K_WORLD_81 = 241
K_WORLD_82 = 242
K_WORLD_83 = 243
K_WORLD_84 = 244
K_WORLD_85 = 245
K_WORLD_86 = 246
K_WORLD_87 = 247
K_WORLD_88 = 248
K_WORLD_89 = 249
K_WORLD_90 = 250
K_WORLD_91 = 251
K_WORLD_92 = 252
K_WORLD_93 = 253
K_WORLD_94 = 254
K_WORLD_95 = 255
K_KP0 = 256
K_KP1 = 257
K_KP2 = 258
K_KP3 = 259
K_KP4 = 260
K_KP5 = 261
K_KP6 = 262
K_KP7 = 263
K_KP8 = 264
K_KP9 = 265
K_KP_PERIOD = 266
K_KP_DIVIDE = 267
K_KP_MULTIPLY = 268
K_KP_MINUS = 269
K_KP_PLUS = 270
K_KP_ENTER = 271
K_KP_EQUALS = 272
K_UP = 273
K_DOWN = 274
K_RIGHT = 275
K_LEFT = 276
K_INSERT = 277
K_HOME = 278
K_END = 279
K_PAGEUP = 280
K_PAGEDOWN = 281
K_F1 = 282
K_F2 = 283
K_F3 = 284
K_F4 = 285
K_F5 = 286
K_F6 = 287
K_F7 = 288
K_F8 = 289
K_F9 = 290
K_F10 = 291
K_F11 = 292
K_F12 = 293
K_F13 = 294
K_F14 = 295
K_F15 = 296
K_NUMLOCK = 300
K_CAPSLOCK = 301
K_SCROLLOCK = 302
K_RSHIFT = 303
K_LSHIFT = 304
K_RCTRL = 305
K_LCTRL = 306
K_RALT = 307
K_LALT = 308
K_RMETA = 309
K_LMETA = 310
K_LSUPER = 311
K_RSUPER = 312
K_MODE = 313
K_COMPOSE = 314
K_HELP = 315
K_PRINT = 316
K_SYSREQ = 317
K_BREAK = 318
K_MENU = 319
K_POWER = 320
K_EURO = 321
K_UNDO = 322
K_LAST = 323
KMOD_NONE = 0x0000
KMOD_LSHIFT = 0x0001
KMOD_RSHIFT = 0x0002
KMOD_LCTRL = 0x0040
KMOD_RCTRL = 0x0080
KMOD_LALT = 0x0100
KMOD_RALT = 0x0200
KMOD_LMETA = 0x0400
KMOD_RMETA = 0x0800
KMOD_NUM = 0x1000
KMOD_CAPS = 0x2000
KMOD_MODE = 0x4000
KMOD_RESERVED = 0x8000
HAT_CENTERED = 0x00
HAT_UP = 0x01
HAT_RIGHT = 0x02
HAT_DOWN = 0x04
HAT_LEFT = 0x08
HAT_RIGHTUP = (HAT_RIGHT|HAT_UP)
HAT_RIGHTDOWN = (HAT_RIGHT|HAT_DOWN)
HAT_LEFTUP = (HAT_LEFT |HAT_UP)
HAT_LEFTDOWN = (HAT_LEFT |HAT_DOWN)
RELEASED = 0
PRESSED = 1
NOEVENT = 0
ACTIVEEVENT = 1
KEYDOWN = 2
KEYUP = 3
MOUSEMOTION = 4
MOUSEBUTTONDOWN = 5
MOUSEBUTTONUP = 6
JOYAXISMOTION = 7
JOYBALLMOTION = 8
JOYHATMOTION = 9
JOYBUTTONDOWN = 10
JOYBUTTONUP = 11
QUIT = 12
SYSWMEVENT = 13
EVENT_RESERVEDA = 14
EVENT_RESERVEDB = 15
VIDEORESIZE = 16
VIDEOEXPOSE = 17
EVENT_RESERVED2 = 18
EVENT_RESERVED3 = 19
EVENT_RESERVED4 = 20
EVENT_RESERVED5 = 21
EVENT_RESERVED6 = 22
EVENT_RESERVED7 = 23
USEREVENT = 24
NUMEVENTS = 32
ACTIVEEVENTMASK = (1 << (ACTIVEEVENT))
JOYAXISMOTIONMASK = (1 << (JOYAXISMOTION))
JOYEVENTMASK = (1 << (JOYAXISMOTION)) | \ (1 << (JOYBALLMOTION)) | \ (1 << (JOYHATMOTION)) | \ (1 << (JOYBUTTONDOWN)) | \ (1 << (JOYBUTTONUP))
JOYBALLMOTIONMASK = (1 << (JOYBALLMOTION))
JOYBUTTONDOWNMASK = (1 << (JOYBUTTONDOWN))
JOYBUTTONUPMASK = (1 << (JOYBUTTONUP))
JOYHATMOTIONMASK = (1 << (JOYHATMOTION))
KEYDOWNMASK = (1 << (KEYDOWN))
KEYEVENTMASK = (1 << (KEYDOWN))|(1 << (KEYUP))
KEYUPMASK = (1 << (KEYUP))
MOUSEBUTTONDOWNMASK = (1 << (MOUSEBUTTONDOWN))
MOUSEBUTTONUPMASK = (1 << (MOUSEBUTTONUP))
MOUSEMOTIONMASK = (1 << (MOUSEMOTION))
MOUSEEVENTMASK = (1 << (MOUSEMOTION)) | \ (1 << (MOUSEBUTTONDOWN)) | \ (1 << (MOUSEBUTTONUP))
QUITMASK = (1 << (QUIT))
SYSWMEVENTMASK = (1 << (SYSWMEVENT))
VIDEOEXPOSEMASK = (1 << (VIDEOEXPOSE))
VIDEORESIZEMASK = (1 << (VIDEORESIZE))
ALLEVENTS = 0xFFFFFFFF
ADDEVENT = 0
PEEKEVENT = 1
GETEVENT = 2
QUERY = -1   sdl_func :GetEventFilter, [ ], :eventfilter_cb
IGNORE = 0
DISABLE = 0
ENABLE = 1
RW_SEEK_SET = 0
RW_SEEK_CUR = 1
RW_SEEK_END = 2
AUDIO_U8 = 0x0008
AUDIO_S8 = 0x8008
AUDIO_U16LSB = 0x0010
AUDIO_S16LSB = 0x8010
AUDIO_U16MSB = 0x1010
AUDIO_S16MSB = 0x9010
AUDIO_U16 = 0x0010
AUDIO_S16 = 0x8010
AUDIO_U16SYS = AUDIO_U16LSB
AUDIO_S16SYS = AUDIO_S16LSB
AUDIO_U16SYS = AUDIO_U16MSB
AUDIO_S16SYS = AUDIO_U16MSB
AUDIO_STOPPED = 0
AUDIO_PLAYING = 1
AUDIO_PAUSED = 2
MIX_MAXVOLUME = 128
ALL_HOTKEYS = 0xFFFFFFFF
DEFAULT_REPEAT_DELAY = 500
DEFAULT_REPEAT_INTERVAL = 30
BUTTON_LEFT = 1
BUTTON_MIDDLE = 2
BUTTON_RIGHT = 3
BUTTON_WHEELUP = 4
BUTTON_WHEELDOWN = 5
BUTTON_X1 = 6
BUTTON_X2 = 7
BUTTON_LMASK = 1 << (BUTTON_LEFT - 1)
BUTTON_MMASK = 1 << (BUTTON_MIDDLE - 1)
BUTTON_RMASK = 1 << (BUTTON_RIGHT - 1)
BUTTON_X1MASK = 1 << (BUTTON_X1 - 1)
BUTTON_X2MASK = 1 << (BUTTON_X2 - 1)
MUTEX_TIMEDOUT = 1
ALPHA_OPAQUE = 255
ALPHA_TRANSPARENT = 0
SWSURFACE = 0x00000000
HWSURFACE = 0x00000001
ASYNCBLIT = 0x00000004
ANYFORMAT = 0x10000000
HWPALETTE = 0x20000000
DOUBLEBUF = 0x40000000
FULLSCREEN = 0x80000000
OPENGL = 0x00000002
OPENGLBLIT = 0x0000000A
RESIZABLE = 0x00000010
NOFRAME = 0x00000020
HWACCEL = 0x00000100
SRCCOLORKEY = 0x00001000
RLEACCELOK = 0x00002000
RLEACCEL = 0x00004000
SRCALPHA = 0x00010000
PREALLOC = 0x01000000
YV12_OVERLAY = 0x32315659
IYUV_OVERLAY = 0x56555949
YUY2_OVERLAY = 0x32595559
UYVY_OVERLAY = 0x59565955
YVYU_OVERLAY = 0x55595659
GL_RED_SIZE = 0
GL_GREEN_SIZE = 1
GL_BLUE_SIZE = 2
GL_ALPHA_SIZE = 3
GL_BUFFER_SIZE = 4
GL_DOUBLEBUFFER = 5
GL_DEPTH_SIZE = 6
GL_STENCIL_SIZE = 7
GL_ACCUM_RED_SIZE = 8
GL_ACCUM_GREEN_SIZE = 9
GL_ACCUM_BLUE_SIZE = 10
GL_ACCUM_ALPHA_SIZE = 11
GL_STEREO = 12
GL_MULTISAMPLEBUFFERS = 13
GL_MULTISAMPLESAMPLES = 14
GL_ACCELERATED_VISUAL = 15
GL_SWAP_CONTROL = 16
LOGPAL = 0x01
PHYSPAL = 0x02
GRAB_QUERY = -1
GRAB_OFF = 0
GRAB_ON = 1
GRAB_FULLSCREEN = 2
LIL_ENDIAN = 1234
BIG_ENDIAN = 4321
INIT_TIMER = 0x00000001
INIT_AUDIO = 0x00000010
INIT_VIDEO = 0x00000020
INIT_CDROM = 0x00000100
INIT_JOYSTICK = 0x00000200
INIT_NOPARACHUTE = 0x00100000
INIT_EVENTTHREAD = 0x01000000
INIT_EVERYTHING = 0x0000FFFF
APPMOUSEFOCUS = 0x01   SDL_active.h
APPINPUTFOCUS = 0x02
APPACTIVE = 0x04
ENOMEM = 0
EFREAD = 1
EFWRITE = 2
EFSEEK = 3
UNSUPPORTED = 4
LASTERROR = 5
CD_ERROR = -1
CD_TRAYEMPTY = 0
CD_STOPPED = 1
CD_PLAYING = 2
CD_PAUSED = 3
AUDIO_TRACK = 0x00
DATA_TRACK = 0x04
MAX_TRACKS = 99
CD_FPS = 75

Public Class methods

Returns [buttons, x, y].

 buttons: buttons currently pressed (bitmask of BUTTON_*MASK constants).
 x, y: current position of the mouse cursor.

Returns [buttons, x, y].

 buttons: buttons currently pressed (bitmask of BUTTON_*MASK constants).
 x, y: movement of the mouse cursor since last call of this method.

Behavior varies depending on action.

PEEKEVENT or GETEVENT:

  events is the max number of events to retrieve.
  Returns an array of Events, or nil if there was an error.
  GETEVENT removes them from the queue, PEEKEVENT leaves them.

ADDEVENT:

  events is an array of Events (or specific event instances)
  to append to the queue.
  Returns the number of events added, or -1 if there was an error.

Sets the application name, if the platform supports it. This method is safe to call even on platforms which do not support it (but does nothing). Currently this method only has an effect on Mac OS X.

The effect of this method depends on the platform. On Mac OS X, it sets the text used in the main application menu.

(Note: this method does not correspond to any part of the SDL API. It communicates with the platform directly.)

Example:

  SDL.set_app_name("SpaceQuest 4000")

[Validate]