Difference between revisions of "ImGui.Core"
Line 77: | Line 77: | ||
[[ImGui.Core:inputFloat|ImGui:inputFloat]] ''an ImGui input float field''<br/><!--GIDEROSMTD:ImGui:inputFloat(label, value, [step=0, step_fast=0, format="%.3f", ImGuiInputTextFlags=0]) an ImGui input float field--> | [[ImGui.Core:inputFloat|ImGui:inputFloat]] ''an ImGui input float field''<br/><!--GIDEROSMTD:ImGui:inputFloat(label, value, [step=0, step_fast=0, format="%.3f", ImGuiInputTextFlags=0]) an ImGui input float field--> | ||
[[ImGui.Core:inputFloat2|ImGui:inputFloat2]] ''two ImGui input float fields''<br/><!--GIDEROSMTD:ImGui:inputFloat2(label, value1, value2, [format="%.3f", ImGuiInputTextFlags=0]) two ImGui input float fields--> | [[ImGui.Core:inputFloat2|ImGui:inputFloat2]] ''two ImGui input float fields''<br/><!--GIDEROSMTD:ImGui:inputFloat2(label, value1, value2, [format="%.3f", ImGuiInputTextFlags=0]) two ImGui input float fields--> | ||
+ | [[ImGui.Core:inputFloat3|ImGui:inputFloat3]] ''three ImGui input float fields''<br/><!--GIDEROSMTD:ImGui:inputFloat3(label, value1, value2, value3, [format="%.3f", ImGuiInputTextFlags=0]) three ImGui input float fields--> | ||
+ | [[ImGui.Core:inputFloat4|ImGui:inputFloat4]] ''four ImGui input float fields''<br/><!--GIDEROSMTD:ImGui:inputFloat4(label, value1, value2, value3, value4, [format="%.3f", ImGuiInputTextFlags=0]) four ImGui input float fields--> | ||
[[ImGui.Core:inputText|ImGui:inputText]] ''an ImGui input text field''<br/><!--GIDEROSMTD:ImGui:inputText(label, text, bufferSize, [ImGuiInputTextFlags = 0]) an ImGui input text field--> | [[ImGui.Core:inputText|ImGui:inputText]] ''an ImGui input text field''<br/><!--GIDEROSMTD:ImGui:inputText(label, text, bufferSize, [ImGuiInputTextFlags = 0]) an ImGui input text field--> |
Revision as of 23:08, 2 April 2021
Supported platforms:
Available since: Gideros 2020.9
Description
This is the ImGui main class.
PLEASE NOTE THE DOCUMENTATION IS WORK IN PROGRESS
Widgets: Input with Keyboard * If you want to use InputText() with std::string or any custom dynamic string type, see misc/cpp/imgui_stdlib.h and comments in imgui_demo.cpp. * Most of the ImGuiInputTextFlags flags are only useful for InputText() and not for InputFloatX, InputIntX, InputDouble etc.
Widgets: Regular Sliders * CTRL+Click on any slider to turn them into an input box. Manually input values aren't clamped and can go off-bounds. * Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc. * Format string may also be set to NULL or use the default format ("%f" or "%d"). If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361
Widgets: Drag Sliders * CTRL+Click on any drag box to turn them into an input box. Manually input values aren't clamped and can go off-bounds. * For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every functions, note that a 'float v[X]' function argument is the same as 'float* v', the array syntax is just a way to document the number of elements that are expected to be accessible. You can pass address of your first element out of a contiguous set, e.g. &myvector.x * Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc. * Format string may also be set to NULL or use the default format ("%f" or "%d"). * Speed are per-pixel of mouse movement (v_speed=0.2f: mouse needs to move by 5 pixels to increase value by 1). For gamepad/keyboard navigation, minimum speed is Max(v_speed, minimum_step_at_given_precision). * Use v_min < v_max to clamp edits to given limits. Note that CTRL+Click manual input can override those limits. * Use v_max = FLT_MAX / INT_MAX etc to avoid clamping to a maximum, same with v_min = -FLT_MAX / INT_MIN to avoid clamping to a minimum. * We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them.
MethodsImGui.new initializes ImGui ImGui:arrowButton displays an ImGui arrow button ImGui:inputFloat an ImGui input float field ImGui:inputText an ImGui input text field ImGui:invisibleButton an ImGui invisible button |
EventsImGui.KeyChar ConstantsImGui._VERSION Window Flags Col Flags |