6468a3c0ce
Refactor: Moved Button/Image/Checkbox/RadioButton/Bullet/ProgressBar functions from imgui.cpp to imgui_widgets.cpp (#2036)
omar2018-08-30 14:41:55 +02:00
3eaa063984
Refactor: Moved Text functions from imgui.cpp to imgui_widgets.cpp (#2036)
omar2018-08-30 14:38:44 +02:00
52c115fb2c
Refactor: Added imgui_widgets.cpp headers to easily merge in the functions in all our branches. (#2036)
omar2018-08-29 15:15:36 +02:00
ac0fcbca46
Changelog: fixed inconsistent white space before list items.
omar2018-08-29 16:20:02 +02:00
92edb7a4e3
Internals: Tidying up, moving helpers to imgui_internal.h (in prevision of 1.64 refactor)
omar2018-08-28 22:52:51 +02:00
ec148988f0
Reordered some declarations in imgui.h (in prevision of 1.64 refactor)
omar2018-08-28 22:48:45 +02:00
2598d26c73
ColorEdit4: Fixed a bug when text input or drag and drop leading to unsaturated HSL values would erroneously alter the resulting color. (#2050)
omar2018-08-29 13:26:25 +02:00
f9634feb66
Internals: Merged some changes to facilitate 1D->2D transition for some elements, and merging the stack layout PR (#846)
omar2018-08-28 19:03:08 +02:00
220e6a55b7
Travis: Fix (still not sure there is a way to test those files). (#1044)
omar2018-08-28 18:40:51 +02:00
1b61b6b208
Examples: Vulkan: Minor tweaks.
omar2018-08-28 18:22:36 +02:00
db790dab4c
Travis: Added xcode build for the OSX+Metal example. (#1044) [@petmac]
omar2018-08-28 18:15:22 +02:00
b127027cbd
Examples: OpenGL: Added support for glew and glad OpenGL loaders out of the box. (#2001, #2002). Changelog, tweaks, applied changes to SDL+OpenGL3 example.
omar2018-08-28 15:56:03 +02:00
06e917f135
Internals: Renaming of non-user facing parts from ValueChanged to Edited terminology. (#2034, #820, #956, #1875)
omar2018-08-23 13:47:37 +02:00
042f88e5f0
Removed obsolete redirection functions: CollapsingHeader() variation with 2 bools - marked obsolete in v1.49, May 2016.
omar2018-08-23 13:40:38 +02:00
0810d57819
Renamed IsItemDeactivatedAfterChange() to IsItemDeactivatedAfterEdit() for consistency with new IsItemEdited() API. Kept redirection function (will obsolete fast as IsItemDeactivatedAfterChange() is very recent). (#820, #956, #1875, #2034)
omar2018-08-23 13:26:14 +02:00
e28b1078f5
Added IsItemEdited() to query if the last item modified its value (or was pressed). This is equivalent to the bool returned by most widgets. It is useful in some situation e.g. using InputText() with ImGuiInputTextFlags_EnterReturnsTrue. (#2034)
omar2018-08-23 13:21:01 +02:00
abaa274592
Internals: Wired a ImGuiItemStatusFlags_ValueChanged into ItemStatusFlags, for an hypothetical IsItemValueChanged() function. (#2034)
omar2018-08-22 22:31:51 +02:00
ea9f5d7600
Added optional misc/stl/imgui_stl.h wrapper to use with STL types (e.g. InputText with std::string). (#2035, #2006, #1443, #1008)
omar2018-08-22 12:43:27 +02:00
8d639ec60d
InputText: callback InsertChars() support resize callbacks correctly (followup to 24ff259) + fixed demo to use those functions. (#2006, #1443, #1008).
omar2018-08-22 12:33:54 +02:00
ea1906004b
InputText: Fixed a few pathological crash cases on single-line InputText widget with multiple millions characters worth of contents. Because the current text drawing function reserve for a worst-case amount of vertices and how we handle horizontal clipping, we currently just avoid displaying those single-line widgets when they are over a threshold of 2 millions characters, until a better solution is found.
omar2018-08-22 00:06:55 +02:00
5122c76441
InputText: Fixed not tracking the cursor horizontally When modifying the text buffer through a callback.
omar2018-08-21 23:33:43 +02:00
68448c5faa
ImDrawList: Large text passed to AddText() are being scanned for their end in order to avoid pre-reserving too many vertices.
omar2018-08-21 23:00:40 +02:00
975b5a7310
ImDrawList: Fixed clipping of leading lines above the clipping rectangle from counting in the worst case vertices reservation. (fix code added in #200!)
omar2018-08-21 22:34:16 +02:00
9f393c38e9
InputText: Renamed ImGuiTextEditCallback to ImGuiInputTextCallback, ImGuiTextEditCallbackData to ImGuiInputTextCallbackData for consistency. Kept redirection types (will obsolete).
omar2018-08-21 15:46:22 +02:00
24ff259816
InputText: Added support for buffer size/capacity changes via the ImGuiInputTextFlags_CallbackResize flag. (#2006, #1443, #1008).
omar2018-08-21 15:39:35 +02:00
4de6e1f7e4
InputText: Internal renaming of some fields + final copy uses edit_state.CurLenA+1 instead of buf_size.
omar2018-08-21 14:23:54 +02:00
0fd6e9bc0d
InputText: Fixed minor off-by-one issue when submitting a buffer size smaller than the initial zero-terminated buffer contents.
omar2018-08-21 12:24:48 +02:00
e6c78f9470
InputText: (Breaking change) removed ImGuiTextEditCallbackData::ReadOnly since it is a duplication of (ImGuiTextEditCallbackData::Flags & ImGuiInputTextFlags_ReadOnly) (#211)
omar2018-08-21 11:26:57 +02:00
f23d29b481
Added links to Discourse forums.
omar2018-08-20 10:45:10 +02:00
4910629f6a
Internals: Moved code out of SliderBehaviorT to reduce code bloat and also because caller may have use for the grab_bb for styling purposes.
omar2018-08-17 17:53:13 -07:00
ac39c4b2a8
SplitterBehavior: Fix for when the sizes are already under the minimum desired size.
omar2018-08-11 22:01:24 +02:00
341ebd961b
Fixed assertion when transitioning from an active ID to another within a group, affecting ColorPicker (broken in 1.62). Made ActiveIdIsAlive track the actual ID to avoid incorrect polling in BeginGroup/EndGroup when the ID changes within the group. (#2023, #820, #956, #1875).
omar2018-08-16 13:33:16 -07:00
8972ebae73
Metrics: Added io.MetricsActiveAllocations, moving away from the cross-context global counters than we previously used. (#1565, #1599, #586)
omar2018-08-15 16:28:39 -07:00
4e33aeed82
Selectable: Added ImGuiSelectableFlags_Disabled flag in the public API. (#211)
omar2018-08-14 16:07:01 -07:00
caaa746424
Nav: NavWindowingList doesn't save to .ini file. TODO entries.
omar2018-08-13 17:29:20 -07:00
d4cd121ae1
TODO + added missing _None enum for some internals flags.
omar2018-08-09 21:03:17 +02:00
fda9dc8e18
Internals: Extracted RenderMouseCursor() out of EndFrame(). Moved to imgui_draw.cpp along with RenderArrowPointingAt(). Comments. (#2013)
omar2018-08-09 18:07:49 +02:00
421dc19798
Examples: Cast to ImTextureID instead of void* when assigning to TexId. Applied to all examples. (#2015)
omar2018-08-09 17:49:48 +02:00
9c0805010f
imgui_impl_dx12: Cast to ImTextureID instead of void* to enable redefinition of ImTextureID (#2015, #301)
Ryan Crandallandomar2018-08-09 08:44:29 -07:00
d5793102db
imgui_impl_opengl3: Advertised as a ES2/ES3 renderer. Defaults to ES3 on Android. Default on "#version 300 es" on ES 3. (#2002, #1873)
omar2018-08-09 17:42:53 +02:00
34203d5008
imgui_impl_win32: Don't redefine WIN32_LEAN_AND_MEAN if already defined (#2014)
Ryan Crandallandomar2018-08-09 08:32:31 -07:00
e3eb4111cc
Examples: Fix 'How to build' instructions for SDL2 examples (#2012)
luk1337andomar2018-08-08 18:55:09 +02:00
35124cdd07
imgui_impl_opengl3.cpp Using GLES3 on IOS instead of gl3w. (#2002, #1873) Not modifying the main.cpp yet because we need to test GL ES 3 context creation on iOS (only imgui_impl_opengl3.cpp was tested).
omar2018-08-08 17:38:18 +02:00
0065fe16a2
Nav: Made CTRL+TAB skip menus + skip the current navigation window if is has the ImGuiWindow_NoNavFocus set. (#787) While it was previously possible, you won't be able to CTRL-TAB out and immediately back in a window with the ImGuiWindow_NoNavFocus flag.
omar2018-08-08 16:03:13 +02:00
9d8a0374d3
Use literals in place of LLONG_MIN, LLONG_MAX ULLONG_MAX if they are not available. Amend 498c0dcb4c. We prefer using the defines if available in limits.h because they somehow tend to work without warnings when enabling strict C++03 compilation. The 3 literals are fallbacks.. (#1926).
omar2018-08-06 13:07:19 +02:00
0905202f44
Internals: Minor renaming for consistency.
omar2018-08-05 18:13:24 +02:00
9e9c8a8991
Update to Contributing, and Issue/PR templates.
omar2018-08-05 18:13:15 +02:00
bc6ac8b2ae
Metrics: Changed io.MetricsActiveWindows to reflect the number of active windows (!= from visible windows), which is useful for lazy/idle render mechanisms as new windows are typically not visible for one frame. Metrics: Added io.MetricsRenderWindow to reflect the number of visible windows.
omar2018-08-03 18:12:36 +02:00
00e29832d4
Examples: OpenGL2: Disabling/restoring GL_LIGHTING and GL_COLOR_MATERIAL to increase compatibility with legacy OpenGL applications. (#1996)
omar2018-08-03 15:04:35 +02:00
498c0dcb4c
Using limits.h LLONG_MIN etc. to increase old-compiler compatibility (as ll and ull prefixes were not standard). Not tested much on old compilers, relying on Clang/GCC warnings.
omar2018-08-03 11:40:58 +02:00
87e2fea09d
Renamed io.OptResizeWindowsFromEdges to ConfigResizeWindowsFromEdges, io.OptCursorBlink to io.ConfigCursorBlink, io.OptMacOSXBehaviors to ConfigMacOSXBehaviors for consistency. (#1427, #1495, #822, #473, #650) Demo: Exposed flags in Demo.
omar2018-08-01 11:50:57 +02:00
b1fc988c6b
imgui_impl_glfw, imgui_impl_sdl: Workaround for Emscripten which doesn't seem to handle focus related calls. (#1941)
omar2018-08-01 11:34:17 +02:00
b217251a63
Added Visual Studio 2017+ build cruft to Ignore List (.vs/ folder)
omar2018-07-31 18:48:24 +02:00
671e516377
Demo: Fix using ambiguous InputFloat() call which redirect to obsolete version. (#1990)
omar2018-07-31 18:38:15 +02:00
65b46f62ef
Fixed PushID() from keeping alive the new ID Stack top value (if a previously active widget shared the ID it would be erroneously kept alive) (drag and drop demo could soft-lock the UI until pressing Escape!)
omar2018-07-31 17:26:42 +02:00
7e1678ff00
Drag and Drop: Elapse payload as soon as delivery is made. (#153)
omar2018-07-31 17:15:01 +02:00
faf2c34149
Drag and Drop: Added ImGuiDragDropFlags_SourceAutoExpirePayload flag to force payload to expire if the source stops being submitted. (#1725, #143).
omar2018-07-31 13:44:19 +02:00
79ae6d3bf6
Drag and Drop: Clear payload buffers more consistently in ClearDragAndDrop() + BeginDragDropTargetCustom() can't succeed with hidden contents. (#143)
omar2018-07-31 13:36:06 +02:00
e13e5982ff
Drag and Drop: Payload stays available and under the mouse if the source stops being submitted, however the tooltip is replaced by "..." + moved FrameScopeActive = false at the bottom of EndFrame() for safety. (#1725)
omar2018-07-30 18:06:41 +02:00
f88bf9cea3
InvisibleButton: Added an assert to catch common type of passing zero-sized dimensions. (#1983)
omar2018-07-30 18:48:10 +02:00
a7ac9e8346
Made assertion more clear when trying to call Begin() outside of the NewFrame()..EndFrame() scope. (#1987)
omar2018-07-30 18:20:25 +02:00
d5400d9517
Fixes for pre-C++11 compilers. That said, I think we can consider upgrading requirement to an early VS-friendly subset of C++11. The thing I would like the most from C++11 are forward-declared enum (from VS 2012 onward).
omar2018-07-30 17:42:27 +02:00
4d5dcdb57a
Internals: Changed signature of ShadeVerts functions to remove pointers. (#1286, #1700, #1986)
omar2018-07-30 17:24:04 +02:00
f05aede098
Revert "Assert that fmt != NULL before calling vsnprintf (#1969)"
omar2018-07-30 16:50:47 +02:00
80db2383d8
Speculative va_copy() fix for old versions of GCC/Clang. (cannot repro) (#1085)
omar2018-07-30 16:00:47 +02:00
2a67aeaa3d
Visual Studio: calling into _vsnprintf. (#1085)
omar2018-07-30 15:27:09 +02:00
81562b2b5a
Examples: imgui_impl_opengl3.cpp Using #ifdef GL_SAMPLER_BINDING instead of if (glBindSampler) (#1985)
Dadoandomar2018-07-30 14:38:13 +01:00
15a93d6fe3
Internals: Fixed HoveredIdTimer so it is safe to call SetHoveredId() multiple times without altering the timer.
omar2018-07-30 14:36:08 +02:00
6d78045ff8
Demo: Added extra demo in the Basic Horizontal Layout section. (#1977) + PR guidelines
omar2018-07-30 14:30:26 +02:00
b5b972d0ef
ImFontAtlas::AddFontDefault: Made it possible to override glyph ranges. (#1965)
Tommy Nguyenandomar2018-07-30 14:18:20 +02:00
faa7dad537
Examples: imgui_impl_osx: Fix for incorrect DeltaTime calculation on mac OS. (#1978)
Marcel Smitandomar2018-07-30 14:15:24 +02:00
6211f40f3d
Internals: Drag and Drop: default drop preview use a narrower clipping rectangle (no effect here, but other branches uses a narrow clipping rectangle that was too small so this is a fix for it) + Comments
omar2018-07-27 12:29:33 +02:00
28c1a9857e
Internals: Changed SplitterBehavior() signature to be consistent with other similar signatures. (#319).
omar2018-07-26 23:50:05 +02:00
63df9d6311
Internals: Extracted part of Begin into UpdateWindowParentAndRootLinks(). Useful to call to keep state updated immediately (namely useful for docking) + small tidying up of imgui_internal.h
omar2018-07-26 23:45:48 +02:00