目次 - SDL 3.0 API(機能別) - イベント処理 - SDL_EventType

SDL_EventType

イベントの種類の列挙体

ヘッダ

SDL3/SDL_events.h

SDL_EVENT_FIRST0未使用
アプリケーションのイベント
SDL_EVENT_QUIT0x100ユーザが終了を要求した
Android, iOSに特化したイベント (詳細はREADME-ios.md, README-android.mdを参照すること)
SDL_EVENT_TERMINATINGOSがアプリケーションを終了させようとしている. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationWillTerminate()が, Androidの場合はonDestroy()が呼ばれたとき発生する
SDL_EVENT_LOWMEMORY空きメモリが少ない. 可能ならば何かを解放すること. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationDidReceiveMemoryWarning()が, Androidの場合はonTrimMemory()が呼ばれたとき発生する
SDL_EVENT_WILLENTERBACKGROUNDアプリケーションが裏側へ回ろうとしている. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationWillResignActive()が, Androidの場合はonPause()が呼ばれたとき発生する
SDL_EVENT_DIDENTERBACKGROUNDアプリケーションが裏側へ回った. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationDidEnterBackground()が, Androidの場合はonPause()が呼ばれたとき発生する
SDL_EVENT_WILLENTERFOREGROUNDアプリケーションが表へ現れようとしている. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationWillEnterForeground()が, Androidの場合はonResume()が呼ばれたとき発生する
SDL_EVENT_DIDENTERFOREGROUNDアプリケーションが表へ現れた. このイベントはSDL_AddEventWatch()で設定したコールバックで扱う必要がある
iOSの場合はapplicationDidBecomeActive()が, Androidの場合はonResume()が呼ばれたとき発生する
SDL_EVENT_LOCALE_CHANGEDユーザのロケール選択が変わった
SDL_EVENT_SYSTEM_THEME_CHANGEDシステムのテーマが変わった
ディスプレイのイベント
0x150SDL2ではSDL_DISPLAYEVENTだった. sdl2-compatのために予約されている
SDL_EVENT_DISPLAY_ORIENTATION0x151ディスプレイの向きがdata1に変わった
SDL_EVENT_DISPLAY_ADDEDディスプレイがシステムに接続された
SDL_EVENT_DISPLAY_REMOVEDディスプレイがシステムから切断された
SDL_EVENT_DISPLAY_MOVEDディスプレイの位置が変わった
SDL_EVENT_DISPLAY_DESKTOP_MODE_CHANGEDディスプレイがデスクトップモードが変わった
SDL_EVENT_DISPLAY_CURRENT_MODE_CHANGEDディスプレイの現在のモードが変わった
SDL_EVENT_DISPLAY_CONTENT_SCALE_CHANGEDディスプレイの拡大率が変わった
SDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGEDディスプレイの利用可能領域が変わった
SDL_EVENT_DISPLAY_FIRSTSDL_EVENT_DISPLAY_ORIENTATION
SDL_EVENT_DISPLAY_LASTSDL_EVENT_DISPLAY_USABLE_BOUNDS_CHANGED
ウィンドウのイベント
0x200SDL2ではSDL_WINDOWEVENTだった. sdl2-compatのために予約されている
0x201SDL2ではSDL_SYSWMEVENTだった. sdl2-compatのために予約されている
SDL_EVENT_WINDOW_SHOWN0x202ウィンドウが表示された
SDL_EVENT_WINDOW_HIDDENウィンドウが非表示になった
SDL_EVENT_WINDOW_EXPOSEDウィンドウの現れた部分の再描画が必要になった. このイベントを監視して直接再描画することができる. data1が1ならば表示しながらのサイズ変更(live-resize), 0ならばそれ以外
SDL_EVENT_WINDOW_MOVEDウィンドウは(data1, data2)に移動した
SDL_EVENT_WINDOW_RESIZEDウィンドウのサイズが(data1×data2)に変わった
SDL_EVENT_WINDOW_PIXEL_SIZE_CHANGEDウィンドウのピクセルのサイズ(data1×data2)に変わった
SDL_EVENT_WINDOW_METAL_VIEW_RESIZEDウィンドウに関連付けられたMetal viewのピクセルサイズが変わった
SDL_EVENT_WINDOW_MINIMIZEDウィンドウが最小化された
SDL_EVENT_WINDOW_MAXIMIZEDウィンドウが最大化された
SDL_EVENT_WINDOW_RESTOREDウィンドウが通常のサイズと位置に戻った
SDL_EVENT_WINDOW_MOUSE_ENTERウィンドウがマウスフォーカスを得た
SDL_EVENT_WINDOW_MOUSE_LEAVEウィンドウがマウスフォーカスを失った
SDL_EVENT_WINDOW_FOCUS_GAINEDウィンドウがキーボードフォーカスを得た
SDL_EVENT_WINDOW_FOCUS_LOSTウィンドウがキーボードフォーカスを失った
SDL_EVENT_WINDOW_CLOSE_REQUESTEDウィンドウマネージャがウィンドウのクローズを要求した
SDL_EVENT_WINDOW_HIT_TESTSDL_HITTEST_NORMALでは行われなかったヒットテストが行われた
SDL_EVENT_WINDOW_ICCPROF_CHANGEDウィンドウが表示されているディスプレイのICCプロファイルが変わった
SDL_EVENT_WINDOW_DISPLAY_CHANGEDウィンドウがディスプレイ番号data1に移動した
SDL_EVENT_WINDOW_DISPLAY_SCALE_CHANGEDウィンドウが表示されているディスプレイの拡大率が変わった
SDL_EVENT_WINDOW_SAFE_AREA_CHANGEDウィンドウのセーフエリアが変わった
SDL_EVENT_WINDOW_OCCLUDEDウィンドウが重なり隠された
SDL_EVENT_WINDOW_ENTER_FULLSCREENウィンドウがフルスクリーンモードになった
SDL_EVENT_WINDOW_LEAVE_FULLSCREENウィンドウのフルスクリーンモードが解除された
SDL_EVENT_WINDOW_DESTROYEDIDに関連付けられたウィンドウが破棄される, または破棄された. このメッセージをイベント監視が受け取ったときには, ウィンドウハンドルはまだ有効で, ウィンドウに関連付けられたプロパティを参照できる. そうでない場合は, ウィンドウハンドルは既に破棄されていて, 関連付けられた全ての資源は無効である
SDL_EVENT_WINDOW_HDR_STATE_CHANGEDウィンドウHDR(ハイダイナミックレンジ)プロパティが変わった
SDL_EVENT_WINDOW_FIRSTSDL_EVENT_WINDOW_SHOWN
SDL_EVENT_WINDOW_LASTSDL_EVENT_WINDOW_HDR_STATE_CHANGED
キーボードのイベント
SDL_EVENT_KEY_DOWN0x300キーが押された
SDL_EVENT_KEY_UPキーが離された
SDL_EVENT_TEXT_EDITING変換中のテキストを編集している
SDL_EVENT_TEXT_INPUTキーボードでテキストが入力された
SDL_EVENT_KEYMAP_CHANGED入力言語やキーボードレイアウトの変更のようなシステムイベントが原因でキーマップが変わった
SDL_EVENT_KEYBOARD_ADDEDキーボードがシステムに接続された
SDL_EVENT_KEYBOARD_REMOVEDキーボードがシステムから切断された
SDL_EVENT_TEXT_EDITING_CANDIDATESテキストの変換候補を選択している
SDL_EVENT_SCREEN_KEYBOARD_SHOWNスクリーンキーボードが表示された
SDL_EVENT_SCREEN_KEYBOARD_HIDDENスクリーンキーボードが非表示になった
マウスのイベント
SDL_EVENT_MOUSE_MOTION0x400マウスが動いた
SDL_EVENT_MOUSE_BUTTON_DOWNマウスのボタンが押された
SDL_EVENT_MOUSE_BUTTON_UPマウスのボタンが離された
SDL_EVENT_MOUSE_WHEELマウスのホイールが動いた
SDL_EVENT_MOUSE_ADDEDマウスがシステムに接続された
SDL_EVENT_MOUSE_REMOVEDマウスがシステムから切断された
ジョイスティックのイベント
SDL_EVENT_JOYSTICK_AXIS_MOTION0x600ジョイスティクが動いた
SDL_EVENT_JOYSTICK_BALL_MOTIONジョイスティクのトラックボールが動いた
SDL_EVENT_JOYSTICK_HAT_MOTIONジョイスティックのハットが変わった
SDL_EVENT_JOYSTICK_BUTTON_DOWNジョイスティックのボタンが押された
SDL_EVENT_JOYSTICK_BUTTON_UPジョイスティックのボタンが離された
SDL_EVENT_JOYSTICK_ADDEDジョイスティックが接続された
SDL_EVENT_JOYSTICK_REMOVEDジョイスティックが切断された
SDL_EVENT_JOYSTICK_BATTERY_UPDATEDジョイスティックのバッテリー残量が変化した
SDL_EVENT_JOYSTICK_UPDATE_COMPLETEジョイスティックの更新が完了した
ゲームパッドのイベント
SDL_EVENT_GAMEPAD_AXIS_MOTION0x650ゲームパッドが動いた
SDL_EVENT_GAMEPAD_BUTTON_DOWNゲームパッドのボタンが押された
SDL_EVENT_GAMEPAD_BUTTON_UPゲームパッドのボタンが離された
SDL_EVENT_GAMEPAD_ADDEDゲームパッドが接続された
SDL_EVENT_GAMEPAD_REMOVEDゲームパッドが切断された
SDL_EVENT_GAMEPAD_REMAPPEDゲームパッドのマッピングが変わった
SDL_EVENT_GAMEPAD_TOUCHPAD_DOWNゲームパッドのタッチパッドに指をつけた
SDL_EVENT_GAMEPAD_TOUCHPAD_MOTIONゲームパッドのタッチパッドから指を離した
SDL_EVENT_GAMEPAD_TOUCHPAD_UPゲームパッドのタッチパッド上で指を動かした
SDL_EVENT_GAMEPAD_SENSOR_UPDATEゲームパッドのセンサー状態が変わった
SDL_EVENT_GAMEPAD_UPDATE_COMPLETEゲームパッドの更新が完了した
SDL_EVENT_GAMEPAD_STEAM_HANDLE_UPDATEDゲームパッドのSteamハンドラが変わった
タッチのイベント
SDL_EVENT_FINGER_DOWN0x700デバイスに指をつけた
SDL_EVENT_FINGER_UPデバイスから指を離した
SDL_EVENT_FINGER_MOTIONデバイス上で指を動かした
SDL_EVENT_FINGER_CANCELED
ピンチ(つまみ操作)のイベント
SDL_EVENT_PINCH_BEGIN0x710ピンチジェスチャが始まった
SDL_EVENT_PINCH_UPDATEピンチジェスチャが変わった
SDL_EVENT_PINCH_ENDピンチジェスチャが終わった
0x800SDL2ではSDL_DOLLARGESTUREだった. sdl2-compatのために予約されている
0x801SDL2ではSDL_DOLLARRECORDだった. sdl2-compatのために予約されている
0x802SDL2ではSDL_MULTIGESTUREだった. sdl2-compatのために予約されている
クリップボードのイベント
SDL_EVENT_CLIPBOARD_UPDATE0x900クリップボードが変わった
ドラッグ&ドロップのイベント
SDL_EVENT_DROP_FILE0x1000システムがファイルのオープンを要求している
SDL_EVENT_DROP_TEXTtext/plainのドラッグアンドドロップイベント
SDL_EVENT_DROP_BEGIN新しいグループのドロップが始まった (NULLファイル名)
SDL_EVENT_DROP_COMPLETE現在のグループのドロップが終わった (NULLファイル名)
SDL_EVENT_DROP_POSITIONウィンドウ上で動いた位置
オーディオホットプラグ(活線挿抜)のイベント
SDL_EVENT_AUDIO_DEVICE_ADDED0x1100オーディオデバイスが接続された
SDL_EVENT_AUDIO_DEVICE_REMOVEDオーディオデバイスが切断された
SDL_EVENT_AUDIO_DEVICE_FORMAT_CHANGEDシステムによってオーディオデバイスの形式が変わった
センサーのイベント
SDL_EVENT_SENSOR_UPDATE0x1200センサー状態が変わった
ペンのイベント
SDL_EVENT_PEN_PROXIMITY_IN0x1300感圧式ペンが利用可能になった
SDL_EVENT_PEN_PROXIMITY_OUT感圧式ペンが利用不能になった
SDL_EVENT_PEN_DOWN感圧式ペンが表面に触れた
SDL_EVENT_PEN_UP感圧式ペンが表面から離れた
SDL_EVENT_PEN_BUTTON_DOWN感圧式ペンのボタンを押した
SDL_EVENT_PEN_BUTTON_UP感圧式ペンのボタンを離した
SDL_EVENT_PEN_MOTION感圧式ペンをタブレット上で動かした
SDL_EVENT_PEN_AXIS感圧式ペンの角度/筆圧/その他が変わった
カメラホットプラグ(活線挿抜)のイベント
SDL_EVENT_CAMERA_DEVICE_ADDED0x1400カメラが接続された
SDL_EVENT_CAMERA_DEVICE_REMOVEDカメラが切断された
SDL_EVENT_CAMERA_DEVICE_APPROVEDユーザによってカメラの使用が許可された
SDL_EVENT_CAMERA_DEVICE_DENIEDユーザによってカメラの使用が拒否された
レンダラのイベント
SDL_EVENT_RENDER_TARGETS_RESET0x2000レンダラの対象がリセットされコンテキストを更新する必要がある
SDL_EVENT_RENDER_DEVICE_RESETデバイスがリセットされ全てのテクスチャを再生成する必要がある
SDL_EVENT_RENDER_DEVICE_LOSTデバイスが失われ回復不能となった
私用予約イベント
SDL_EVENT_PRIVATE00x4000
SDL_EVENT_PRIVATE1
SDL_EVENT_PRIVATE2
SDL_EVENT_PRIVATE3
内部予約イベント
SDL_EVENT_POLL_SENTINEL0x7F00イベントポーリングサイクルの終端
ユーザ定義のイベント SDL_RegisterEvents()で確保する必要がある
SDL_EVENT_USER0x8000ユーザ固有のイベント
-
SDL_EVENT_LAST0xFFFF内部の配列の終端のみのため
SDL_EVENT_ENUM_PADDING0x7FFFFFFFこの列挙体はUint32のサイズとするため

バージョン

SDL 3.2.0以降

SDL Wikiへのリンク

SDL_EventType - SDL Wiki