Changeset 169
- Timestamp:
- 07/17/13 06:36:41 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/nv/lib/sdl12.hh
r168 r169 269 269 #endif 270 270 271 typedef struct SDL_Surface { 271 #if NV_SDL_VERSION == NV_SDL_20 272 typedef struct SDL_Surface 273 { 274 Uint32 flags; 275 SDL_PixelFormat *format; 276 int w, h; 277 int pitch; 278 void *pixels; 279 void *userdata; 280 int locked; 281 void *lock_data; 282 SDL_Rect clip_rect; 283 struct SDL_BlitMap *map; 284 int refcount; 285 } SDL_Surface; 286 #else 287 typedef struct SDL_Surface 288 { 272 289 Uint32 flags; 273 290 SDL_PixelFormat *format; … … 284 301 int refcount; 285 302 } SDL_Surface; 286 303 #endif 304 305 #if NV_SDL_VERSION == NV_SDL_20 306 #define SDL_SWSURFACE 0 307 #define SDL_PREALLOC 0x00000001 308 #define SDL_RLEACCEL 0x00000002 309 #define SDL_DONTFREE 0x00000004 310 311 #define SDL_MUSTLOCK(S) (((S)->flags & SDL_RLEACCEL) != 0) 312 #else 287 313 #define SDL_SWSURFACE 0x00000000 288 314 #define SDL_HWSURFACE 0x00000001 … … 304 330 305 331 #define SDL_MUSTLOCK(surface) \ 306 (surface->offset || \ 307 ((surface->flags & (SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_RLEACCEL)) != 0)) 308 309 typedef int (*SDL_blit)(struct SDL_Surface *src, SDL_Rect *srcrect, struct SDL_Surface *dst, SDL_Rect *dstrect); 310 332 (surface->offset || \ 333 ((surface->flags & (SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_RLEACCEL)) != 0)) 334 335 #endif 336 337 typedef int (*SDL_blit)(struct SDL_Surface *src, SDL_Rect *srcrect, 338 struct SDL_Surface *dst, SDL_Rect *dstrect); 339 340 #if NV_SDL_VERSION == NV_SDL_12 311 341 typedef struct SDL_VideoInfo { 312 342 Uint32 hw_available :1; … … 327 357 int current_h; 328 358 } SDL_VideoInfo; 359 #endif 360 361 #if NV_SDL_VERSION == NV_SDL_20 362 typedef enum 363 { 364 SDL_WINDOW_FULLSCREEN = 0x00000001, 365 SDL_WINDOW_OPENGL = 0x00000002, 366 SDL_WINDOW_SHOWN = 0x00000004, 367 SDL_WINDOW_HIDDEN = 0x00000008, 368 SDL_WINDOW_BORDERLESS = 0x00000010, 369 SDL_WINDOW_RESIZABLE = 0x00000020, 370 SDL_WINDOW_MINIMIZED = 0x00000040, 371 SDL_WINDOW_MAXIMIZED = 0x00000080, 372 SDL_WINDOW_INPUT_GRABBED = 0x00000100, 373 SDL_WINDOW_INPUT_FOCUS = 0x00000200, 374 SDL_WINDOW_MOUSE_FOCUS = 0x00000400, 375 SDL_WINDOW_FULLSCREEN_DESKTOP = ( SDL_WINDOW_FULLSCREEN | 0x00001000 ), 376 SDL_WINDOW_FOREIGN = 0x00000800 377 } SDL_WindowFlags; 378 379 #define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000 380 #define SDL_WINDOWPOS_UNDEFINED_DISPLAY(X) (SDL_WINDOWPOS_UNDEFINED_MASK|(X)) 381 #define SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED_DISPLAY(0) 382 #define SDL_WINDOWPOS_ISUNDEFINED(X) \ 383 (((X)&0xFFFF0000) == SDL_WINDOWPOS_UNDEFINED_MASK) 384 385 #define SDL_WINDOWPOS_CENTERED_MASK 0x2FFF0000 386 #define SDL_WINDOWPOS_CENTERED_DISPLAY(X) (SDL_WINDOWPOS_CENTERED_MASK|(X)) 387 #define SDL_WINDOWPOS_CENTERED SDL_WINDOWPOS_CENTERED_DISPLAY(0) 388 #define SDL_WINDOWPOS_ISCENTERED(X) \ 389 (((X)&0xFFFF0000) == SDL_WINDOWPOS_CENTERED_MASK) 390 391 typedef enum 392 { 393 SDL_WINDOWEVENT_NONE, 394 SDL_WINDOWEVENT_SHOWN, 395 SDL_WINDOWEVENT_HIDDEN, 396 SDL_WINDOWEVENT_EXPOSED, 397 SDL_WINDOWEVENT_MOVED, 398 SDL_WINDOWEVENT_RESIZED, 399 SDL_WINDOWEVENT_SIZE_CHANGED, 400 SDL_WINDOWEVENT_MINIMIZED, 401 SDL_WINDOWEVENT_MAXIMIZED, 402 SDL_WINDOWEVENT_RESTORED, 403 SDL_WINDOWEVENT_ENTER, 404 SDL_WINDOWEVENT_LEAVE, 405 SDL_WINDOWEVENT_FOCUS_GAINED, 406 SDL_WINDOWEVENT_FOCUS_LOST, 407 SDL_WINDOWEVENT_CLOSE 408 } SDL_WindowEventID; 409 410 typedef void *SDL_GLContext; 411 #endif 412 329 413 330 414 typedef enum { … … 345 429 SDL_GL_MULTISAMPLESAMPLES, 346 430 SDL_GL_ACCELERATED_VISUAL, 431 #if NV_SDL_VERSION == NV_SDL_12 347 432 SDL_GL_SWAP_CONTROL 433 #else 434 SDL_GL_RETAINED_BACKING, 435 SDL_GL_CONTEXT_MAJOR_VERSION, 436 SDL_GL_CONTEXT_MINOR_VERSION, 437 SDL_GL_CONTEXT_EGL, 438 SDL_GL_CONTEXT_FLAGS, 439 SDL_GL_CONTEXT_PROFILE_MASK, 440 SDL_GL_SHARE_WITH_CURRENT_CONTEXT 441 #endif 348 442 } SDL_GLattr; 349 443 350 #define SDL_LOGPAL 0x01 351 #define SDL_PHYSPAL 0x02 352 444 #if NV_SDL_VERSION == NV_SDL_20 445 typedef enum 446 { 447 SDL_GL_CONTEXT_PROFILE_CORE = 0x0001, 448 SDL_GL_CONTEXT_PROFILE_COMPATIBILITY = 0x0002, 449 SDL_GL_CONTEXT_PROFILE_ES = 0x0004 450 } SDL_GLprofile; 451 452 typedef enum 453 { 454 SDL_GL_CONTEXT_DEBUG_FLAG = 0x0001, 455 SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG = 0x0002, 456 SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG = 0x0004, 457 SDL_GL_CONTEXT_RESET_ISOLATION_FLAG = 0x0008 458 } SDL_GLcontextFlag; 459 #endif 460 461 #if NV_SDL_VERSION == NV_SDL_12 353 462 typedef enum { 354 463 SDL_GRAB_QUERY = -1, … … 357 466 SDL_GRAB_FULLSCREEN /**< Used internally */ 358 467 } SDL_GrabMode; 468 #endif 359 469 360 470 /* SDL_audio.h defines */ 361 typedef struct SDL_AudioSpec {362 int freq;363 Uint16 format;364 Uint8 channels;365 Uint8 silence;366 Uint16 samples;367 Uint16 padding;368 Uint32 size;369 void (NV_SDL_APIENTRY *callback)(void *userdata, Uint8 *stream, int len);370 void *userdata;371 } SDL_AudioSpec;372 373 471 #define AUDIO_U8 0x0008 374 472 #define AUDIO_S8 0x8008 … … 380 478 #define AUDIO_S16 AUDIO_S16LSB 381 479 480 #if NV_SDL_VERSION == NV_SDL_20 481 #define AUDIO_S32LSB 0x8020 482 #define AUDIO_S32MSB 0x9020 483 #define AUDIO_S32 AUDIO_S32LSB 484 #define AUDIO_F32LSB 0x8120 485 #define AUDIO_F32MSB 0x9120 486 #define AUDIO_F32 AUDIO_F32LSB 487 #endif 488 382 489 /* NOTE : assuming LSB! */ 383 490 #define AUDIO_U16SYS AUDIO_U16LSB 384 491 #define AUDIO_S16SYS AUDIO_S16LSB 492 #if NV_SDL_VERSION == NV_SDL_20 493 #define AUDIO_S32SYS AUDIO_S32LSB 494 #define AUDIO_F32SYS AUDIO_F32LSB 495 #endif 496 497 typedef Uint16 SDL_AudioFormat; 498 typedef void (NV_SDL_APIENTRY * SDL_AudioCallback) (void *userdata, Uint8 * stream, int len); 499 struct SDL_AudioCVT; 500 typedef void (NV_SDL_APIENTRY * SDL_AudioFilter) (struct SDL_AudioCVT * cvt, SDL_AudioFormat format); 501 502 typedef struct SDL_AudioSpec 503 { 504 int freq; 505 SDL_AudioFormat format; 506 Uint8 channels; 507 Uint8 silence; 508 Uint16 samples; 509 Uint16 padding; 510 Uint32 size; 511 SDL_AudioCallback callback; 512 void *userdata; 513 } SDL_AudioSpec; 385 514 386 515 typedef struct SDL_AudioCVT { 387 516 int needed; 388 Uint16src_format;389 Uint16dst_format;517 SDL_AudioFormat src_format; 518 SDL_AudioFormat dst_format; 390 519 double rate_incr; 391 Uint8 *buf; 392 int len;393 int len_cvt;394 int 520 Uint8 *buf; 521 int len; 522 int len_cvt; 523 int len_mult; 395 524 double len_ratio; 396 void (NV_SDL_APIENTRY *filters[10])(struct SDL_AudioCVT *cvt, Uint16 format);525 SDL_AudioFilter filters[10]; 397 526 int filter_index; 398 527 } SDL_AudioCVT; 399 528 400 529 typedef enum { 401 530 SDL_AUDIO_STOPPED = 0, … … 404 533 } SDL_audiostatus; 405 534 535 typedef SDL_audiostatus SDL_AudioStatus; 536 537 #if NV_SDL_VERSION == NV_SDL_20 538 #define SDL_AUDIO_ALLOW_FREQUENCY_CHANGE 0x00000001 539 #define SDL_AUDIO_ALLOW_FORMAT_CHANGE 0x00000002 540 #define SDL_AUDIO_ALLOW_CHANNELS_CHANGE 0x00000004 541 #define SDL_AUDIO_ALLOW_ANY_CHANGE (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE) 542 #endif 543 406 544 #define SDL_MIX_MAXVOLUME 128 407 545 408 546 /* SDL_active.h defines */ 547 #if NV_SDL_VERSION == NV_SDL_12 409 548 #define SDL_APPMOUSEFOCUS 0x01 410 549 #define SDL_APPINPUTFOCUS 0x02 411 550 #define SDL_APPACTIVE 0x04 551 #endif 412 552 413 553 /* SDL_keyboard.h defines */ 414 typedef enum { 415 SDLK_UNKNOWN = 0, 416 SDLK_FIRST = 0, 417 SDLK_BACKSPACE = 8, 418 SDLK_TAB = 9, 419 SDLK_CLEAR = 12, 420 SDLK_RETURN = 13, 421 SDLK_PAUSE = 19, 422 SDLK_ESCAPE = 27, 423 SDLK_SPACE = 32, 424 SDLK_EXCLAIM = 33, 425 SDLK_QUOTEDBL = 34, 426 SDLK_HASH = 35, 427 SDLK_DOLLAR = 36, 428 SDLK_AMPERSAND = 38, 429 SDLK_QUOTE = 39, 430 SDLK_LEFTPAREN = 40, 431 SDLK_RIGHTPAREN = 41, 432 SDLK_ASTERISK = 42, 433 SDLK_PLUS = 43, 434 SDLK_COMMA = 44, 435 SDLK_MINUS = 45, 436 SDLK_PERIOD = 46, 437 SDLK_SLASH = 47, 438 SDLK_0 = 48, 439 SDLK_1 = 49, 440 SDLK_2 = 50, 441 SDLK_3 = 51, 442 SDLK_4 = 52, 443 SDLK_5 = 53, 444 SDLK_6 = 54, 445 SDLK_7 = 55, 446 SDLK_8 = 56, 447 SDLK_9 = 57, 448 SDLK_COLON = 58, 449 SDLK_SEMICOLON = 59, 450 SDLK_LESS = 60, 451 SDLK_EQUALS = 61, 452 SDLK_GREATER = 62, 453 SDLK_QUESTION = 63, 454 SDLK_AT = 64, 455 SDLK_LEFTBRACKET = 91, 456 SDLK_BACKSLASH = 92, 457 SDLK_RIGHTBRACKET = 93, 458 SDLK_CARET = 94, 459 SDLK_UNDERSCORE = 95, 460 SDLK_BACKQUOTE = 96, 461 SDLK_a = 97, 462 SDLK_b = 98, 463 SDLK_c = 99, 464 SDLK_d = 100, 465 SDLK_e = 101, 466 SDLK_f = 102, 467 SDLK_g = 103, 468 SDLK_h = 104, 469 SDLK_i = 105, 470 SDLK_j = 106, 471 SDLK_k = 107, 472 SDLK_l = 108, 473 SDLK_m = 109, 474 SDLK_n = 110, 475 SDLK_o = 111, 476 SDLK_p = 112, 477 SDLK_q = 113, 478 SDLK_r = 114, 479 SDLK_s = 115, 480 SDLK_t = 116, 481 SDLK_u = 117, 482 SDLK_v = 118, 483 SDLK_w = 119, 484 SDLK_x = 120, 485 SDLK_y = 121, 486 SDLK_z = 122, 487 SDLK_DELETE = 127, 488 SDLK_WORLD_0 = 160, 489 SDLK_WORLD_1 = 161, 490 SDLK_WORLD_2 = 162, 491 SDLK_WORLD_3 = 163, 492 SDLK_WORLD_4 = 164, 493 SDLK_WORLD_5 = 165, 494 SDLK_WORLD_6 = 166, 495 SDLK_WORLD_7 = 167, 496 SDLK_WORLD_8 = 168, 497 SDLK_WORLD_9 = 169, 498 SDLK_WORLD_10 = 170, 499 SDLK_WORLD_11 = 171, 500 SDLK_WORLD_12 = 172, 501 SDLK_WORLD_13 = 173, 502 SDLK_WORLD_14 = 174, 503 SDLK_WORLD_15 = 175, 504 SDLK_WORLD_16 = 176, 505 SDLK_WORLD_17 = 177, 506 SDLK_WORLD_18 = 178, 507 SDLK_WORLD_19 = 179, 508 SDLK_WORLD_20 = 180, 509 SDLK_WORLD_21 = 181, 510 SDLK_WORLD_22 = 182, 511 SDLK_WORLD_23 = 183, 512 SDLK_WORLD_24 = 184, 513 SDLK_WORLD_25 = 185, 514 SDLK_WORLD_26 = 186, 515 SDLK_WORLD_27 = 187, 516 SDLK_WORLD_28 = 188, 517 SDLK_WORLD_29 = 189, 518 SDLK_WORLD_30 = 190, 519 SDLK_WORLD_31 = 191, 520 SDLK_WORLD_32 = 192, 521 SDLK_WORLD_33 = 193, 522 SDLK_WORLD_34 = 194, 523 SDLK_WORLD_35 = 195, 524 SDLK_WORLD_36 = 196, 525 SDLK_WORLD_37 = 197, 526 SDLK_WORLD_38 = 198, 527 SDLK_WORLD_39 = 199, 528 SDLK_WORLD_40 = 200, 529 SDLK_WORLD_41 = 201, 530 SDLK_WORLD_42 = 202, 531 SDLK_WORLD_43 = 203, 532 SDLK_WORLD_44 = 204, 533 SDLK_WORLD_45 = 205, 534 SDLK_WORLD_46 = 206, 535 SDLK_WORLD_47 = 207, 536 SDLK_WORLD_48 = 208, 537 SDLK_WORLD_49 = 209, 538 SDLK_WORLD_50 = 210, 539 SDLK_WORLD_51 = 211, 540 SDLK_WORLD_52 = 212, 541 SDLK_WORLD_53 = 213, 542 SDLK_WORLD_54 = 214, 543 SDLK_WORLD_55 = 215, 544 SDLK_WORLD_56 = 216, 545 SDLK_WORLD_57 = 217, 546 SDLK_WORLD_58 = 218, 547 SDLK_WORLD_59 = 219, 548 SDLK_WORLD_60 = 220, 549 SDLK_WORLD_61 = 221, 550 SDLK_WORLD_62 = 222, 551 SDLK_WORLD_63 = 223, 552 SDLK_WORLD_64 = 224, 553 SDLK_WORLD_65 = 225, 554 SDLK_WORLD_66 = 226, 555 SDLK_WORLD_67 = 227, 556 SDLK_WORLD_68 = 228, 557 SDLK_WORLD_69 = 229, 558 SDLK_WORLD_70 = 230, 559 SDLK_WORLD_71 = 231, 560 SDLK_WORLD_72 = 232, 561 SDLK_WORLD_73 = 233, 562 SDLK_WORLD_74 = 234, 563 SDLK_WORLD_75 = 235, 564 SDLK_WORLD_76 = 236, 565 SDLK_WORLD_77 = 237, 566 SDLK_WORLD_78 = 238, 567 SDLK_WORLD_79 = 239, 568 SDLK_WORLD_80 = 240, 569 SDLK_WORLD_81 = 241, 570 SDLK_WORLD_82 = 242, 571 SDLK_WORLD_83 = 243, 572 SDLK_WORLD_84 = 244, 573 SDLK_WORLD_85 = 245, 574 SDLK_WORLD_86 = 246, 575 SDLK_WORLD_87 = 247, 576 SDLK_WORLD_88 = 248, 577 SDLK_WORLD_89 = 249, 578 SDLK_WORLD_90 = 250, 579 SDLK_WORLD_91 = 251, 580 SDLK_WORLD_92 = 252, 581 SDLK_WORLD_93 = 253, 582 SDLK_WORLD_94 = 254, 583 SDLK_WORLD_95 = 255, 584 SDLK_KP0 = 256, 585 SDLK_KP1 = 257, 586 SDLK_KP2 = 258, 587 SDLK_KP3 = 259, 588 SDLK_KP4 = 260, 589 SDLK_KP5 = 261, 590 SDLK_KP6 = 262, 591 SDLK_KP7 = 263, 592 SDLK_KP8 = 264, 593 SDLK_KP9 = 265, 594 SDLK_KP_PERIOD = 266, 595 SDLK_KP_DIVIDE = 267, 596 SDLK_KP_MULTIPLY = 268, 597 SDLK_KP_MINUS = 269, 598 SDLK_KP_PLUS = 270, 599 SDLK_KP_ENTER = 271, 600 SDLK_KP_EQUALS = 272, 601 SDLK_UP = 273, 602 SDLK_DOWN = 274, 603 SDLK_RIGHT = 275, 604 SDLK_LEFT = 276, 605 SDLK_INSERT = 277, 606 SDLK_HOME = 278, 607 SDLK_END = 279, 608 SDLK_PAGEUP = 280, 609 SDLK_PAGEDOWN = 281, 610 SDLK_F1 = 282, 611 SDLK_F2 = 283, 612 SDLK_F3 = 284, 613 SDLK_F4 = 285, 614 SDLK_F5 = 286, 615 SDLK_F6 = 287, 616 SDLK_F7 = 288, 617 SDLK_F8 = 289, 618 SDLK_F9 = 290, 619 SDLK_F10 = 291, 620 SDLK_F11 = 292, 621 SDLK_F12 = 293, 622 SDLK_F13 = 294, 623 SDLK_F14 = 295, 624 SDLK_F15 = 296, 625 SDLK_NUMLOCK = 300, 626 SDLK_CAPSLOCK = 301, 627 SDLK_SCROLLOCK = 302, 628 SDLK_RSHIFT = 303, 629 SDLK_LSHIFT = 304, 630 SDLK_RCTRL = 305, 631 SDLK_LCTRL = 306, 632 SDLK_RALT = 307, 633 SDLK_LALT = 308, 634 SDLK_RMETA = 309, 635 SDLK_LMETA = 310, 636 SDLK_LSUPER = 311, 637 SDLK_RSUPER = 312, 638 SDLK_MODE = 313, 639 SDLK_COMPOSE = 314, 640 SDLK_HELP = 315, 641 SDLK_PRINT = 316, 642 SDLK_SYSREQ = 317, 643 SDLK_BREAK = 318, 644 SDLK_MENU = 319, 645 SDLK_POWER = 320, 646 SDLK_EURO = 321, 647 SDLK_UNDO = 322, 648 SDLK_LAST 649 } SDLKey; 554 #if NV_SDL_VERSION == NV_SDL_20 555 #include <nv/lib/detail/sdl_keys_20.inc> 556 #else 557 #include <nv/lib/detail/sdl_keys_12.inc> 558 #endif 650 559 651 560 typedef enum { … … 659 568 KMOD_LMETA = 0x0400, 660 569 KMOD_RMETA = 0x0800, 570 KMOD_LGUI = 0x0400, 571 KMOD_RGUI = 0x0800, 661 572 KMOD_NUM = 0x1000, 662 573 KMOD_CAPS = 0x2000, … … 669 580 #define KMOD_ALT (KMOD_LALT|KMOD_RALT) 670 581 #define KMOD_META (KMOD_LMETA|KMOD_RMETA) 582 #define KMOD_GUI (KMOD_LGUI|KMOD_RGUI) 671 583 672 584 #define SDL_DEFAULT_REPEAT_DELAY 500 673 585 #define SDL_DEFAULT_REPEAT_INTERVAL 30 674 586 587 #if NV_SDL_VERSION == NV_SDL_12 675 588 typedef struct SDL_keysym { 676 589 Uint8 scancode; … … 681 594 682 595 #define SDL_ALL_HOTKEYS 0xFFFFFFFF 596 #else 597 typedef struct SDL_Keysym 598 { 599 SDL_Scancode scancode; 600 SDL_Keycode sym; 601 Uint16 mod; 602 Uint32 unused; 603 } SDL_Keysym; 604 #endif 683 605 684 606 /* SDL_mouse.h defines */ 607 #if NV_SDL_VERSION == NV_SDL_20 608 typedef enum 609 { 610 SDL_SYSTEM_CURSOR_ARROW, 611 SDL_SYSTEM_CURSOR_IBEAM, 612 SDL_SYSTEM_CURSOR_WAIT, 613 SDL_SYSTEM_CURSOR_CROSSHAIR, 614 SDL_SYSTEM_CURSOR_WAITARROW, 615 SDL_SYSTEM_CURSOR_SIZENWSE, 616 SDL_SYSTEM_CURSOR_SIZENESW, 617 SDL_SYSTEM_CURSOR_SIZEWE, 618 SDL_SYSTEM_CURSOR_SIZENS, 619 SDL_SYSTEM_CURSOR_SIZEALL, 620 SDL_SYSTEM_CURSOR_NO, 621 SDL_SYSTEM_CURSOR_HAND, 622 SDL_NUM_SYSTEM_CURSORS 623 } SDL_SystemCursor; 624 #endif 625 685 626 typedef struct WMcursor WMcursor; 686 627 typedef struct SDL_Cursor { … … 697 638 #define SDL_BUTTON_MIDDLE 2 698 639 #define SDL_BUTTON_RIGHT 3 640 #if NV_SDL_VERSION == NV_SDL_20 641 #define SDL_BUTTON_X1 4 642 #define SDL_BUTTON_X2 5 643 #else 699 644 #define SDL_BUTTON_WHEELUP 4 700 645 #define SDL_BUTTON_WHEELDOWN 5 701 646 #define SDL_BUTTON_X1 6 702 647 #define SDL_BUTTON_X2 7 648 #endif 703 649 #define SDL_BUTTON_LMASK SDL_BUTTON(SDL_BUTTON_LEFT) 704 650 #define SDL_BUTTON_MMASK SDL_BUTTON(SDL_BUTTON_MIDDLE) … … 708 654 709 655 /* SDL_joystick.h defines */ 656 710 657 struct _SDL_Joystick; 711 658 typedef struct _SDL_Joystick SDL_Joystick; 659 660 #if NV_SDL_VERSION == NV_SDL_20 661 typedef struct { 662 Uint8 data[16]; 663 } SDL_JoystickGUID; 664 665 typedef Sint32 SDL_JoystickID; 666 #endif 667 712 668 713 669 #define SDL_HAT_CENTERED 0x00 … … 722 678 723 679 /* SDL_event.h defines */ 680 724 681 #define SDL_RELEASED 0 725 682 #define SDL_PRESSED 1 726 683 727 typedef enum { 728 SDL_NOEVENT = 0, 729 SDL_ACTIVEEVENT, 730 SDL_KEYDOWN, 731 SDL_KEYUP, 732 SDL_MOUSEMOTION, 733 SDL_MOUSEBUTTONDOWN, 734 SDL_MOUSEBUTTONUP, 735 SDL_JOYAXISMOTION, 736 SDL_JOYBALLMOTION, 737 SDL_JOYHATMOTION, 738 SDL_JOYBUTTONDOWN, 739 SDL_JOYBUTTONUP, 740 SDL_QUIT, 741 SDL_SYSWMEVENT, 742 SDL_EVENT_RESERVEDA, 743 SDL_EVENT_RESERVEDB, 744 SDL_VIDEORESIZE, 745 SDL_VIDEOEXPOSE, 746 SDL_EVENT_RESERVED2, 747 SDL_EVENT_RESERVED3, 748 SDL_EVENT_RESERVED4, 749 SDL_EVENT_RESERVED5, 750 SDL_EVENT_RESERVED6, 751 SDL_EVENT_RESERVED7, 752 SDL_USEREVENT = 24, 753 SDL_NUMEVENTS = 32 754 } SDL_EventType; 755 756 #define SDL_EVENTMASK(X) (1<<(X)) 757 typedef enum { 758 SDL_ACTIVEEVENTMASK = SDL_EVENTMASK(SDL_ACTIVEEVENT), 759 SDL_KEYDOWNMASK = SDL_EVENTMASK(SDL_KEYDOWN), 760 SDL_KEYUPMASK = SDL_EVENTMASK(SDL_KEYUP), 761 SDL_KEYEVENTMASK = SDL_EVENTMASK(SDL_KEYDOWN)| 762 SDL_EVENTMASK(SDL_KEYUP), 763 SDL_MOUSEMOTIONMASK = SDL_EVENTMASK(SDL_MOUSEMOTION), 764 SDL_MOUSEBUTTONDOWNMASK = SDL_EVENTMASK(SDL_MOUSEBUTTONDOWN), 765 SDL_MOUSEBUTTONUPMASK = SDL_EVENTMASK(SDL_MOUSEBUTTONUP), 766 SDL_MOUSEEVENTMASK = SDL_EVENTMASK(SDL_MOUSEMOTION)| 767 SDL_EVENTMASK(SDL_MOUSEBUTTONDOWN)| 768 SDL_EVENTMASK(SDL_MOUSEBUTTONUP), 769 SDL_JOYAXISMOTIONMASK = SDL_EVENTMASK(SDL_JOYAXISMOTION), 770 SDL_JOYBALLMOTIONMASK = SDL_EVENTMASK(SDL_JOYBALLMOTION), 771 SDL_JOYHATMOTIONMASK = SDL_EVENTMASK(SDL_JOYHATMOTION), 772 SDL_JOYBUTTONDOWNMASK = SDL_EVENTMASK(SDL_JOYBUTTONDOWN), 773 SDL_JOYBUTTONUPMASK = SDL_EVENTMASK(SDL_JOYBUTTONUP), 774 SDL_JOYEVENTMASK = SDL_EVENTMASK(SDL_JOYAXISMOTION)| 775 SDL_EVENTMASK(SDL_JOYBALLMOTION)| 776 SDL_EVENTMASK(SDL_JOYHATMOTION)| 777 SDL_EVENTMASK(SDL_JOYBUTTONDOWN)| 778 SDL_EVENTMASK(SDL_JOYBUTTONUP), 779 SDL_VIDEORESIZEMASK = SDL_EVENTMASK(SDL_VIDEORESIZE), 780 SDL_VIDEOEXPOSEMASK = SDL_EVENTMASK(SDL_VIDEOEXPOSE), 781 SDL_QUITMASK = SDL_EVENTMASK(SDL_QUIT), 782 SDL_SYSWMEVENTMASK = SDL_EVENTMASK(SDL_SYSWMEVENT) 783 } SDL_EventMask ; 784 #define SDL_ALLEVENTS 0xFFFFFFFF 785 786 typedef struct SDL_ActiveEvent { 787 Uint8 type; 788 Uint8 gain; 789 Uint8 state; 790 } SDL_ActiveEvent; 791 792 typedef struct SDL_KeyboardEvent { 793 Uint8 type; 794 Uint8 which; 795 Uint8 state; 796 SDL_keysym keysym; 797 } SDL_KeyboardEvent; 798 799 typedef struct SDL_MouseMotionEvent { 800 Uint8 type; 801 Uint8 which; 802 Uint8 state; 803 Uint16 x, y; 804 Sint16 xrel; 805 Sint16 yrel; 806 } SDL_MouseMotionEvent; 807 808 typedef struct SDL_MouseButtonEvent { 809 Uint8 type; 810 Uint8 which; 811 Uint8 button; 812 Uint8 state; 813 Uint16 x, y; 814 } SDL_MouseButtonEvent; 815 816 typedef struct SDL_JoyAxisEvent { 817 Uint8 type; 818 Uint8 which; 819 Uint8 axis; 820 Sint16 value; 821 } SDL_JoyAxisEvent; 822 823 typedef struct SDL_JoyBallEvent { 824 Uint8 type; 825 Uint8 which; 826 Uint8 ball; 827 Sint16 xrel; 828 Sint16 yrel; 829 } SDL_JoyBallEvent; 830 831 typedef struct SDL_JoyHatEvent { 832 Uint8 type; 833 Uint8 which; 834 Uint8 hat; 835 Uint8 value; 836 } SDL_JoyHatEvent; 837 838 typedef struct SDL_JoyButtonEvent { 839 Uint8 type; 840 Uint8 which; 841 Uint8 button; 842 Uint8 state; 843 } SDL_JoyButtonEvent; 844 845 typedef struct SDL_ResizeEvent { 846 Uint8 type; 847 int w; 848 int h; 849 } SDL_ResizeEvent; 850 851 typedef struct SDL_ExposeEvent { 852 Uint8 type; 853 } SDL_ExposeEvent; 854 855 typedef struct SDL_QuitEvent { 856 Uint8 type; 857 } SDL_QuitEvent; 858 859 typedef struct SDL_UserEvent { 860 Uint8 type; 861 int code; 862 void *data1; 863 void *data2; 864 } SDL_UserEvent; 865 866 struct SDL_SysWMmsg; 867 typedef struct SDL_SysWMmsg SDL_SysWMmsg; 868 typedef struct SDL_SysWMEvent { 869 Uint8 type; 870 SDL_SysWMmsg *msg; 871 } SDL_SysWMEvent; 872 873 typedef union SDL_Event { 874 Uint8 type; 875 SDL_ActiveEvent active; 876 SDL_KeyboardEvent key; 877 SDL_MouseMotionEvent motion; 878 SDL_MouseButtonEvent button; 879 SDL_JoyAxisEvent jaxis; 880 SDL_JoyBallEvent jball; 881 SDL_JoyHatEvent jhat; 882 SDL_JoyButtonEvent jbutton; 883 SDL_ResizeEvent resize; 884 SDL_ExposeEvent expose; 885 SDL_QuitEvent quit; 886 SDL_UserEvent user; 887 SDL_SysWMEvent syswm; 888 } SDL_Event; 889 890 typedef enum { 891 SDL_ADDEVENT, 892 SDL_PEEKEVENT, 893 SDL_GETEVENT 894 } SDL_eventaction; 895 896 typedef int (NV_SDL_APIENTRY *SDL_EventFilter)(const SDL_Event *event); 684 #if NV_SDL_VERSION == NV_SDL_12 685 #include <nv/lib/detail/sdl_events_12.inc> 686 #else 687 #include <nv/lib/detail/sdl_events_20.inc> 688 #endif 689 897 690 898 691 #define SDL_QUERY -1 … … 902 695 903 696 /* SDL_timer.h defines */ 697 #if NV_SDL_VERSION == NV_SDL_20 698 typedef Uint32 (NV_SDL_APIENTRY *SDL_TimerCallback)(Uint32 interval, void *param); 699 typedef int SDL_TimerID; 700 #else 904 701 #define SDL_TIMESLICE 10 905 702 #define TIMER_RESOLUTION 10 … … 907 704 typedef Uint32 (NV_SDL_APIENTRY *SDL_NewTimerCallback)(Uint32 interval, void *param); 908 705 typedef struct _SDL_TimerID *SDL_TimerID; 706 #endif 909 707 910 708 /* SDL_version.h defines */ 911 #define SDL_MAJOR_VERSION 1912 #define SDL_MINOR_VERSION 2913 #define SDL_PATCHLEVEL 15914 915 709 typedef struct SDL_version { 916 710 Uint8 major; … … 918 712 Uint8 patch; 919 713 } SDL_version; 714 715 #if NV_SDL_VERSION == NV_SDL_20 716 #define SDL_MAJOR_VERSION 2 717 #define SDL_MINOR_VERSION 0 718 #define SDL_PATCHLEVEL 0 719 #else 720 #define SDL_MAJOR_VERSION 1 721 #define SDL_MINOR_VERSION 2 722 #define SDL_PATCHLEVEL 15 723 #endif 920 724 921 725 #if defined(NV_SDL_DYNAMIC) … … 947 751 948 752 } 753 #define SDL_VERSIONNUM(X, Y, Z) \ 754 ((X)*1000 + (Y)*100 + (Z)) 755 #define SDL_COMPILEDVERSION \ 756 SDL_VERSIONNUM(SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL) 757 #define SDL_VERSION_ATLEAST(X, Y, Z) \ 758 (SDL_COMPILEDVERSION >= SDL_VERSIONNUM(X, Y, Z)) 949 759 950 760 namespace nv {
Note: See TracChangeset
for help on using the changeset viewer.