str_id現在の ID スタックと組み合わせて項目やスコープを識別する文字列です。
popup_flagsこの操作を制御する ImGuiPopupFlags オプションです。互換性のあるフラグは | で組み合わせます。
ポップアップ:開閉関数。
OpenPopup() は状態を開くに設定し、ImGuiPopupFlags で開き方を指定できます。
非モーダルなら外側のクリックや ESCAPE で閉じられます。
CloseCurrentPopup() は BeginPopup()/EndPopup() 内で手動で閉じるために使います。
Selectable()/MenuItem() はアクティブ化時に既定で CloseCurrentPopup() を呼びます(要修正:オプションが必要です)。
ImGuiPopupFlags.NoOpenOverExistingPopup で同じ階層に既存のポップアップがあれば開かないようにできます。OpenPopup() 前に !IsPopupOpen("", ImGuiPopupFlags.AnyPopupId) を確認することなどと同等です。
BeginPopup() 後の IsWindowAppearing() で開いた直後か判断できます。
重要:'int mouse_button = 1' を受け取る旧 API との互換性のため、OpenPopupOnItemClick() の flags は例外的に 1(== ImGuiPopupFlags.MouseButtonRight)が既定です。ポップアップを開いた状態にするために呼びます(毎フレーム呼ばないでくだ さい!)。
ポップアップを開いた状態にします。