イミディエイト モード ウィンドウとコールバック駆動のコントロール。
利用できる関数
imgui.create
追跡対象の ImGui window record を作成し、ImGuiWindow object を返します。title 引数が省略された場合、または nil の場合は “REAL_IM_UI” が使われます。title は現在追跡されている ImGui windows の中で一意である必要があります。同じ title の tracked window をもう一つ作成すると Lua error が発生します。
imgui.setvsync
ImGui renderer の vertical synchronization preference を更新します。現在の presentation path はこの preference を保存しますが、適用しません。
ImGuiWindow.Button
button element を ImGuiWindow に追加し、callback を保存します。描画された button がクリックされると、callback は queue に入れられ、後で arguments なしで呼び出されます。この method は同じ ImGuiWindow object を返します。
ImGuiWindow.Checkbox
Appends a checkbox element to an ImGuiWindow. The callback is invoked with the new boolean value when the checkbox changes, and the method returns the same ImGuiWindow object.
ImGuiWindow.CollapsingHeader
collapsing header start marker を追加し、同じ ImGuiWindow object を渡して content callback を直ちに呼び出して nested elements を追加できるようにし、その後 header end marker を追加します。rendering 中、header が collapsed の間は nested elements がスキップされます。callback errors は捕捉され、この method から返されません。
ImGuiWindow.ColorPicker
Appends a RGBA color editor to an ImGuiWindow and stores the callback. Missing or nil color components default to 1.0. When the rendered editor changes, the callback is queued and later invoked with red, green, blue, and alpha. The method returns the same ImGuiWindow object.
ImGuiWindow.destroy
ImGuiWindow を破棄します。object がまだ window を指している場合、この method はその window を Real の tracked ImGui window list から削除し、stored element callbacks を unreference し、window record を削除して Instance reference を nil に設定します。同じ object で destroy をもう一度呼び出すと、何もせずに戻ります。
ImGuiWindow.InputText
single-line ImGui InputText element を ImGuiWindow に追加し、callback を保存します。initial text は optional string handling で読み取られ、要素の fixed 256-byte text buffer にコピーされます。描画された input が変更されると、callback は queue に入れられ、後で current string とともに呼び出されます。この method は同じ ImGuiWindow object を返します。
ImGuiWindow.SameLine
window に SameLine layout marker を追加します。rendering 中、Real は element list のその位置で a same-line layout marker を呼び出し、次に描画される item が同じ行で続けられるようにします。
ImGuiWindow.Separator
window に Separator marker を追加します。rendering 中、Real は element list のその位置で a separator を呼び出します。
ImGuiWindow.SliderFloat
window に SliderFloat element を追加します。label、value、minimum、maximum は引数 2 から 5 から読み取られ、数値引数は number type checking で検査されます。rendering 中、Real は保存された値と範囲で a floating-point slider を呼び出します。ImGui が値の変更を報告すると、onChange は queue に入れられ、後で 1 つの Lua number で呼び出されます。この closure で Real は別個の minimum <= maximum 検証を追加しません。
ImGuiWindow.SliderInt
Adds an integer slider to the window. The label, value, minimum, and maximum arguments are required. When the user changes the slider, the callback receives the updated integer value.
ImGuiWindow.Text
window に非対話型の Text element を追加します。text 引数は string type checking で読み取られ、element に保存されます。rendering 中、Real は a text element を呼び出すため、渡された text は ImGui format string ではなく string content として使われます。