Ignore:
Timestamp:
07/12/16 20:22:23 (9 years ago)
Author:
epyon
Message:
  • several STL updates
  • several minor fixes
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/sdl/sdl_input.cc

    r406 r505  
    2020static bool sdl_key_event_to_io_event( const SDL_KeyboardEvent& ke, io_event& kevent )
    2121{
    22         kevent.type        = EV_KEY;
    23         kevent.key.pressed = ( ke.state != SDL_RELEASED );
    24         kevent.key.ascii   = 0;
    25         kevent.key.code    = KEY_NONE;
     22        kevent.type          = EV_KEY;
     23        kevent.key.window_id = ke.windowID;
     24        kevent.key.pressed   = ( ke.state != SDL_RELEASED );
     25        kevent.key.ascii     = 0;
     26        kevent.key.code      = KEY_NONE;
    2627
    2728        uint32 ucode = static_cast<uint32>( ke.keysym.sym );
     
    107108static bool sdl_mouse_button_to_io_event( const SDL_MouseButtonEvent& mb, io_event& mevent )
    108109{
    109         mevent.type            = EV_MOUSE_BUTTON;
    110         mevent.mbutton.button  = MOUSE_NONE;
    111         mevent.mbutton.pressed = (mb.state != SDL_RELEASED);
    112         mevent.mbutton.x       = static_cast< uint16 >( mb.x );
    113         mevent.mbutton.y       = static_cast< uint16 >( mb.y );
     110        mevent.type              = EV_MOUSE_BUTTON;
     111        mevent.mbutton.window_id = mb.windowID;
     112        mevent.mbutton.button    = MOUSE_NONE;
     113        mevent.mbutton.pressed   = (mb.state != SDL_RELEASED);
     114        mevent.mbutton.x         = static_cast< uint16 >( mb.x );
     115        mevent.mbutton.y         = static_cast< uint16 >( mb.y );
    114116
    115117        switch ( mb.button )
     
    126128static bool sdl_mouse_wheel_to_io_event( const SDL_MouseWheelEvent& mm, io_event& mevent )
    127129{
    128         mevent.type          = EV_MOUSE_WHEEL;
    129         mevent.mwheel.x      = static_cast< sint32 >( mm.x );
    130         mevent.mwheel.y      = static_cast< sint32 >( mm.y );
     130        mevent.type             = EV_MOUSE_WHEEL;
     131        mevent.mwheel.window_id = mm.windowID;
     132        mevent.mwheel.x         = static_cast< sint32 >( mm.x );
     133        mevent.mwheel.y         = static_cast< sint32 >( mm.y );
    131134        return true;
    132135}
     
    134137static bool sdl_mouse_motion_to_io_event( const SDL_MouseMotionEvent& mm, io_event& mevent )
    135138{
    136         mevent.type          = EV_MOUSE_MOVE;
    137         mevent.mmove.pressed = (mm.state != SDL_RELEASED);
    138         mevent.mmove.x       = static_cast< uint16 >( mm.x );
    139         mevent.mmove.y       = static_cast< uint16 >( mm.y );
    140         mevent.mmove.rx      = static_cast< sint16 >( mm.xrel );
    141         mevent.mmove.ry      = static_cast< sint16 >( mm.yrel );
     139        mevent.type            = EV_MOUSE_MOVE;
     140        mevent.mmove.window_id = mm.windowID;
     141        mevent.mmove.pressed   = (mm.state != SDL_RELEASED);
     142        mevent.mmove.x         = static_cast< uint16 >( mm.x );
     143        mevent.mmove.y         = static_cast< uint16 >( mm.y );
     144        mevent.mmove.rx        = static_cast< sint16 >( mm.xrel );
     145        mevent.mmove.ry        = static_cast< sint16 >( mm.yrel );
    142146        return true;
    143147}
     
    222226        case SDL_VIDEOEXPOSE     : return false;
    223227*/
     228        case SDL_WINDOWEVENT_ENTER: ioevent.type = EV_SYSTEM; ioevent.system.param1 = 1; ioevent.system.param1 = e.window.windowID; return true;
     229        case SDL_WINDOWEVENT_LEAVE: ioevent.type = EV_SYSTEM; ioevent.system.param1 = 0; ioevent.system.param1 = e.window.windowID; return true;
    224230        case SDL_SYSWMEVENT      : ioevent.type = EV_SYSTEM; return true;
    225231        case SDL_QUIT            : ioevent.type = EV_QUIT;   return true;
Note: See TracChangeset for help on using the changeset viewer.