目次 - API(機能別) - ヒント - SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE

SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE

最後のウィンドウを閉じるときSDL_QUITイベントを送るか否かを設定するヒント

0最後のウィンドウを閉じてもSDL_QUITを送信しない
1最後のウィンドウを閉じるときSDL_QUITを送信する (デフォルト)

詳細

デフォルトでは, SDLはウィンドウが1つしかなく, かつSDL_WINDOWEVENT_CLOSEイベントを受信した場合に, ほとんどのアプリケーションはこのウィンドウの消滅でプログラムが終了するとみなしてSDL_QUITイベントを送信する.

しかし, この場合でもプログラムを終了させたくない場合があってもおかしくはない. 後で新しいウィンドウを開くこともありうる.

このヒントを"0"にすると, SDLは最後のウィンドウを閉じる要求があった場合でもSDL_QUITイベントを送信しない. この場合でもSDL_QUITイベントが送られる別の理由があることに注意すること: macOSのメニューバーから"Quit"を選択する, UnixでSIGINT(ctrl-c)を送信する, などである.

デフォルトは"1"である. このヒントはいつでも変えられる.

このヒントはSDL 2.0.22以降で利用できる. それ以前では, 最後のウィンドウが閉じると常にSDL_QUITイベントが発生した.

SDL Wikiへのリンク

SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE - SDL Wiki