Uint32 | type | SDL_MOUSEMOTION |
Uint32 | timestamp | イベントのタイムスタンプ |
Uint32 | windowID | フォーカスのあるウィンドウ (可能なら) |
Uint32 | which | マウスインスタンスID, またはSDL_TOUCH_MOUSEID (詳細を参照すること) |
Uint32 | state | ボタンの状態 (詳細を参照すること) |
Sint32 | x | ウィンドウとの相対位置のX座標 |
Sint32 | y | ウィンドウとの相対位置のY座標 |
Sint32 | xrel | X方向の移動量 |
Sint32 | yrel | Y方向の移動量 |
SDL_MouseMotionEventはSDL_Eventのメンバで, SDL_MOUSEMOTIONが報告されたときに使われる. eventのmotionフィールドからアクセスできる.
SDL_MOUSEMOTIONはユーザがマウスをウィンドウ内または動かす, またはSDL_WarpMouseInWindow()を呼ぶと発生する.
stateは現在のボタンの状態を表す32bitのビットマスクで, SDL_GetMouseState()を呼んだときと同じ値である. 次のマスクで複数の異なるボタンを確認できる.
SDL_BUTTON_LMASK |
SDL_BUTTON_MMASK |
SDL_BUTTON_RMASK |
SDL_BUTTON_X1MASK |
SDL_BUTTON_X2MASK |
whichは, 本物のマウスではなくタッチ入力デバイスのときSDL_TOUCH_MOUSEIDとなる. アプリケーションが既にSDL_TouchFingerEventを扱っているならば, このイベントは無視したほうがよい.
xrelとyrelに設定される移動量は, 最後に発生した移動イベントからの相対量である. もし, 相対マウスモードがSDL_SetRelativeMouseMode()で有効になっていれば, カーソルがスクリーンの端に達しても移動量が得られる.