Skip to content

Releases: ocornut/imgui

v1.20

07 Jan 19:23
Compare
Choose a tag to compare

Mostly fixes.

  • Fixed InputInt() InputFloat() label not declaring their width, breaking usage of SameLine().
  • Fixed hovering of combo boxes that extend beyond the parent window limits.
  • Fixed text input of Unicode character in the 128-255 range.
  • Fixed clipboard pasting into an InputText box not filtering the characters according to contents semantic.
  • Dragging outside area of a widget while it is active doesn't trigger hover on other widgets.
  • Activating widget bring parent window to front if not already.
  • Checkbox and Radio buttons activate on click-release to be consistent with other widgets and most UI.
  • InputText() nows consume input characters immediately so they cannot be reused if ImGui::Update is called again with a call to ImGui::Render(). (fixes #105)
  • Examples: Console: added support for History callbacks + some cleanup.
  • Various small optimisations.
  • Cleanup and other fixes.

history

v1.19

30 Dec 12:30
Compare
Choose a tag to compare
  • Tightening default style a little.
  • Added ImGuiStyleVar_WindowRounding enum for PushStyleVar() API.
  • Added SliderInt2(), SliderInt3(), SliderInt4() for consistency.
  • Widgets more consistently handle empty labels (starting with ## mark) for their size calculation.
  • Fixed crashing with zero sized frame-buffer.
  • Fixed ImGui::Combo() not registering its size properly when clipped out of screen.
  • Renamed second parameter to Begin() to 'bool* p_opened' to be a little more self-explanatory. Added more comments on the use of Begin().
  • Logging: Added LogText() to pass text straight to the log output (tty/clipboard/file) without rendering it.
  • Logging: Added LogFinish() to stop logging at an arbitrary point.
  • Logging: Log depth padding relative to start depth.
  • Logging: Tree nodes and headers looking better when logged to text.
  • Logging: Log outputs \r\n under Windows to play it nicely with \n unaware tools such as Notepad.
  • Style editor: added a button to output colors to clipboard/tty.
  • OpenGL3 example: fix growing of VBO.
  • Cleanup and other minor fixes.

save colors

v1.18

10 Dec 23:41
Compare
Choose a tag to compare
  • Added ImGuiWindowFlags_NoScrollWithMouse, disable mouse wheel scrolling on a window.
  • Added ImGuiWindowFlags_NoSavedSettings, disable loading/saving window state to .ini file.
  • Added SetNextWindowPos(), SetNextWindowSize(), SetNextWindowCollapsed() API along with SetWindowPos(), SetWindowSize(), SetWindowCollapsed(). All functions include an optional second parameter to easily set current value vs session default value vs persistent default value.
  • Removed rarely useful SetNewWindowDefaultPos() in favor of new API.
  • Fixed hovering of lower-right resize grip when it is above a child window.
  • Fixed InputInt() writing to output when it doesn't need to.
  • Added IMGUI_INCLUDE_IMGUI_USER_H define to include user file at the bottom of imgui.h without modifying the vanilla distribution.
  • ImGuiStorage helper can store float + added helpers to get pointer to stored data.
  • Setup Travis CI integration. Builds the OpenGL examples on Linux with GCC and Clang.
  • Examples: Added a "Fixed overlay" example in ShowTestWindow().
  • Examples: Re-added OpenGL 3 programmable-pipeline example (along with the existing fixed pipeline example).
  • Examples: OpenGL examples can now resize the application window.
  • Other minor fixes and comments.

v1.17

03 Dec 11:26
Compare
Choose a tag to compare
  • Added ImGuiWindowFlags_AlwaysAutoResize + example app.
  • Calling ImGui::SetWindowSize(0,0) force an autofit without zero-sizing first.
  • ImGui::InputText() support for completion/history/custom callback + added fancy completion example in the console demo app.
  • Not word-wrapping on apostrophes.
  • Increased visibility of check box and radio button with smaller size.
  • Smooth mouse scrolling on OSX (uses floating point scroll/wheel input).
  • New version of IMGUI_ONCE_UPON_A_FRAME helper macro that works with all compilers.
  • Moved IO.Font*** options to inside the IO.Font-> structure.. Added IO.FontGlobalScale setting (in addition to Font->Scale per individual font).
  • Fixed more Clang -Weverything warnings.
  • Examples: Added DirectX11 example application.
  • Examples: Created single .sln solution for all example projects.
  • Examples: Fixed DirectX9 example window initially showing an hourglass cursor.
  • Examples: Removed Microsoft IME handler in examples, too niche/confusing. Moved equivalent code to imgui.cpp instruction block.

completion example

v1.16

21 Nov 13:47
Compare
Choose a tag to compare
  • General fixing of Columns API to allow filling a cell with multiple widgets before switching to the next column.
  • Added documentation INDEX to top of imgui.cpp.
  • Fixed unaligned memory access for Emscripten compatibility.
  • Various pedantic warning fixes (now testing with Clang).
  • Added extra asserts to catch incorrect usage.
  • PushStyleColor() / PushStyleVar() can be used outside the scope of a window (namely to change variables that are used within the Begin() call).
  • PushTextWrapPos() defaults to 0.0 (right-end of current drawing region).
  • Fixed compatibility with std::vector if user decide to #define ImVector.
  • MouseWheel input is now normalized.
  • Added IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT compile-time option to redefine the vertex layout.
  • Style editor: colors listed inside a scrolling region.
  • Examples: tweaks and fixes.

30b32bb4-70a9-11e4-9531-833a6e1d154b

v1.16b

21 Nov 14:21
Compare
Choose a tag to compare
  • Fix broken PopStyleVar() - crashing.

v1.15

07 Nov 08:50
Compare
Choose a tag to compare
  • Renamed IsHovered() to IsItemHovered().
  • Added word-wrapping API: TextWrapped(), PushTextWrapPos(), PopTextWrapPos().
  • Added IsItemFocused() to tell if last widget is being focused for keyboard input.
  • Added overloads of ImGui::PlotLines() and ImGui::PlotHistogram() taking a function pointer to get values.
  • Added SetWindowSize().
  • Added GetContentRegionMax() supporting columns. Some bug fixes with using columns.
  • Added PushStyleVar(),PopStyleVar() helpers to modify style from user code.
  • Added dummy IMGUI_API definition in front of all entry-points for silly DLL action.
  • Allowing BeginChild() allows to specify negative sizes to specify "use remaining minus xx".
  • Windows with the NoResize flag can still use auto-fitting.
  • Added a simple example console into the demo window.
  • Comments and fixes.

imgui_word_wrapping

imgui_console_wip

v1.14

25 Oct 10:19
Compare
Choose a tag to compare
  • Comments and fixes.
  • Added SetKeyboardFocusHere() to set input focus from code.
  • Added GetWindowFont(), GetWindowFontSize() for users of the low-level ImDrawList API.
  • Added a UserData void *pointer so that the callback functions can access user state "Just in case a project has adverse reactions to adding globals or statics in their own code."
  • Renamed IMGUI_INCLUDE_IMGUI_USER_CPP to IMGUI_INCLUDE_IMGUI_USER_INL

v1.13

30 Sep 08:37
Compare
Choose a tag to compare
  • Added support for UTF-8 for international text display and text edition/input (if the font supports it).
  • Added sample "M+ font" by Coji Morishita in extra_fonts/ to display Japanese text.
  • Added IO.ImeSetInputScreenPosFn callback for positioning OS IME input.
  • Added IO.FontFallbackGlyph (default to '?').
  • OpenGL example: added commented code to load custom font from file-system.
  • OpenGL example: shared makefile for Linux and MacOSX.

utf-8 screenshot

v1.12

24 Sep 18:36
Compare
Choose a tag to compare
  • Added IO.FontBaseScale value for easy scaling of all windows.
  • Added IsMouseHoveringWindow(), IsMouseHoveringAnyWindow(), IsPosHoveringAnyWindow() helpers.
  • Added va_list variations of all functions taking ellipsis (...) parameters.
  • Added section in documentation to explicitly document cases of API breaking changes (e.g. renamed IM_MALLOC below).
  • Moved IM_MALLOC / IM_FREE defines. to IO structure members that can be set at runtime (also allowing precompiled ImGui to cover more use cases).
  • Fixed OpenGL samples for Retina display.
  • Comments and minor fixes.