Commit Graph

213 Commits

Author SHA1 Message Date
omar
3eba840053 Nav: Fixed a tap on AltGR (e.g. German keyboard) from navigation to the menu layer. (follow and extend on e.g #369, #370) 2019-02-23 14:50:36 +01:00
omar
9da48c16c5 TabBar: Added extra mis-usage error recovery. Past the assert, common mis-usage don't lead to hard crashes any more, facilitating integration with scripting languages. (#1651) 2019-02-22 12:27:41 +01:00
omar
0f83145aa8 TabBar: Fixed a crash when using BeginTabBar() recursively (didn't affect docking). (#2371)
Added ImPool::Contains() helper.
2019-02-22 12:24:27 +01:00
omar
cc3be5d428 InputText: Fixed an edge case crash that would happen if another widget sharing the same ID is being swapped with an InputText that has yet to be activated. 2019-02-21 19:55:36 +01:00
omar
79f7778e48 Moved binaries to dearimgui.org/binaries 2019-02-20 15:11:18 +01:00
omar
2068dd509c Examples: OpenGL: Fix for OSX not supporting OpenGL 4.5, we don't try to read GL_CLIP_ORIGIN even if the OpenGL headers/loader happens to define the value. (#2366, #2186) 2019-02-20 14:31:19 +01:00
omar
782b747a17 InputText: Renamed some local variables to clarify code. Should be a no-op functionality wise. TODO items. 2019-02-20 00:45:45 +01:00
omar
7c51cba74f InputInt, InputFloat, InputScalar: Fix to keep the label of the +/- buttons centered when style.FramePadding.x is abnormally larger than style.FramePadding.y. Since the buttons are meant to be square (to align with e.g. color button) we always use FramePadding.y. (#2367) 2019-02-20 00:20:11 +01:00
omar
257f5d204e Version 1.69 WIP 2019-02-20 00:11:36 +01:00
omar
91cc32379d Updated binaries (now auto-generated by a script! next step would be to slowly transition all this stuff into a public repo) 2019-02-19 20:27:47 +01:00
omar
3c15dffc94 Version 1.68 2019-02-19 12:50:46 +01:00
omar
f5bf6e38d2 Font: Fixed assert when specifying duplicate/overlapping ranges within a same font. (#2353, #2233) 2019-02-18 12:11:46 +01:00
omar
dd14adc731 Examples: Vulkan: Support draw_data->FramebufferScale correctly matching a79785c for on Metal/GL2/GL3. (#2306, #1676) 2019-02-16 12:32:44 +01:00
omar
76dbff37cd Selectable: Tweaks for #2347 (demo, changelog, member position) 2019-02-14 20:29:50 +01:00
omar
3c07ec6a61 Made it illegal/assert when io.DisplayTime == 0.0f (with an exception for the first frame).
Causing too many subtle side-effect, e.g. IsNavInputPressed() would return true multiple times in a row.
2019-02-14 17:14:29 +01:00
omar
2206df9e7a Demo: Added Auto-Scroll option in Log/Console. Comments. Removed some ImColor() uses. 2019-02-14 14:08:36 +01:00
omar
0236bc246f Scrollbar: Fade out and disable interaction when too small, in order to facilitate using the resize grab on very small window, as well as reducing visual noise/overlap. (+1 squashed commits)
Internals: Added GetScrollbarID(). (#1185)
2019-02-14 14:07:59 +01:00
omar
fcdf704dfa Changelog: Added changelog from 1.40 to 1.47 (pasted from the Releases section) + some wrapping. 2019-02-13 14:55:28 +01:00
Elias Daler
cbc8e57410 Update README.md - change imgui-sfml link (#2345)
Changed link from https://github.com/EliasD/sfml to https://github.com/eliasdaler/sfml (no redirect + more reliable)
2019-02-13 11:50:14 +01:00
omar
417cf2237f Font: Fixed high-level ImGui::CalcTextSize() used by most widgets from erroneously subtracting 1.0f*scale to calculated text width. Among noticeable side-effects, it would make sequences of repeated Text/SameLine calls not align the same as a single call, and create mismatch between high-level size calculation and those performed with the lower-level ImDrawList api. (#792) 2019-02-12 22:43:56 +01:00
omar
169e3981fd Examples: OpenGL2: Added #define GL_SILENCE_DEPRECATION to cope with newer XCode warnings. 2019-02-11 19:09:54 +01:00
omar
d16dbc5b87 Examples: SDL: Using the SDL_WINDOW_ALLOW_HIGHDPI flag. (#2306, #1676) [@rasky] 2019-02-11 18:52:08 +01:00
omar
a79785c0b9 ImDrawData: Added FramebufferScale field (currently a copy of the value from io.DisplayFramebufferScale).
This is to allow render functions being written without pulling any data from ImGuiIO, allowing incoming multi-viewport feature to behave on Retina display and with multiple displays. If you are not using a custom binding, please update your render function code ahead of time, and use draw_data->FramebufferScale instead of io.DisplayFramebufferScale. (#2306, #1676)
Examples: Metal, OpenGL2, OpenGL3: Fixed offsetting of clipping rectangle with ImDrawData::DisplayPos != (0,0) when the display frame-buffer scale scale is not (1,1). While this doesn't make a difference when using master branch, this is effectively fixing support for multi-viewport with Mac Retina Displays on those examples. (#2306) Also using ImDrawData::FramebufferScale instead of io.DisplayFramebufferScale.
Examples: Clarified the use the ImDrawData::DisplayPos to offset clipping rectangles.
2019-02-11 18:52:08 +01:00
omar
afc36cf802 Window: Fixed initial width of collapsed windows not taking account of contents width (broken in 1.67). (#2336, #176) 2019-02-08 14:34:42 +01:00
omar
1b63ded8fa Tabs: Fixed border (when enabled) so it is aligned correctly mid-pixel and appears as bright as other borders. 2019-02-07 12:07:53 +01:00
omar
29d38b59d0 ListBox/InputTextMultiline: Better optimized when clipped / non-visible. 2019-02-06 14:46:14 +01:00
omar
5bdc7d7a6f Menus: Tweaked horizontal overlap between parent and child menu (to help convey relative depth) from using style.ItemSpacing.x to style.ItemInnerSpacing.x, the later being expected to be smaller. (#1086) 2019-02-06 12:32:10 +01:00
omar
e3dd95d335 Added IsItemActivated() as an extension to the IsItemDeactivated/IsItemDeactivatedAfterEdit functions which are useful to implement variety of undo patterns. (#820, #956, #1875) 2019-02-06 11:52:42 +01:00
omar
c59611a3b3 InputText: Fixed redo buffer exhaustion handling (rare) which could corrupt the undo character buffer. (#2333) 2019-02-05 23:38:57 +01:00
omar
5a95c77388 Merge branch 'master' of https://github.com/ocornut/imgui 2019-02-05 13:53:09 +01:00
omar
d38f4dc143 Tabs: Non-docking tab bars are storing names to allow tab list button + whole style scaling. Added ImGuiTabBarFlags_TabListPopupButton flag to show a popup button on manual tab bars. Locking FramePadding for the scope of a tab-bar to avoid sheering/clipping of tab item. Made scaling of tab ellipsis less awkward. (#261, #351) 2019-02-05 13:23:44 +01:00
omar
65c972e9e4
Update README.md 2019-02-05 11:45:19 +01:00
omar
f7c879eb60 RadioButton: Fixed label horizontal alignment to precisely match Checkbox(). + Internals: Checkbox, RadioButton: Single call to ItemSize() for flow layout purpose. 2019-02-04 23:34:32 +01:00
omar
ac6d474103 Removed io.DisplayVisibleMin/DisplayVisibleMax (which were marked obsolete and removed from viewport/docking branch already). 2019-02-01 16:37:07 +01:00
omar
5fc6899dc2 Examples: OpenGL3: Using GLSL 4.10 shaders for any GLSL version over 410 (e.g. 430, 450). (#2329) [@BrutPitt] 2019-02-01 15:13:54 +01:00
omar
16c0a0217c Updating supporter list. 2019-01-31 13:45:46 +01:00
omar
fb4f1ff7f6 InputText: Fixed a bug where ESCAPE would be first captured by the Keyboard Navigation code. (#2321, #787) 2019-01-30 15:16:09 +01:00
omar
158995f271 InputText: Fixed a bug where ESCAPE would not restore the initial value in all situations. (#2321) [@relick] 2019-01-30 13:15:14 +01:00
omar
ed240c910b Demo: Fixed "Log" demo not initializing properly, leading to the first line not showing before a Clear. (#2318) [@bluescan] 2019-01-29 14:36:55 +01:00
omar
8a4422b2fa Fixed CloseCurrentPopup() on a child-menu of a modal incorrectly closing the modal. (#2308) 2019-01-27 23:54:17 +01:00
Marc-Alexandre Espiaut
8a605354ef Replacing one of the third-party Python bindings. (#2312)
Removing the unmaintained CyImGui (only 7 commits, last one made in 2015) and replacing it with bimpy.
2019-01-27 21:59:48 +01:00
omar
b26ac92a12 Revert "Added PushID(size_t sz) helper (may not be useful/meaningful for non C/C++ languages)."
This reverts commit 20bc06af70.
2019-01-27 16:43:56 +01:00
omar
20bc06af70 Added PushID(size_t sz) helper (may not be useful/meaningful for non C/C++ languages). 2019-01-27 16:18:23 +01:00
omar
e55678adec
Update README.md (changed e-mail address) 2019-01-24 18:31:31 +01:00
omar
a8277ca873
Reoder Python bindings 2019-01-23 20:04:08 +01:00
omar
c362a96a3f When resizing from an edge, the border is more visible and better follow the rounded corners. Border rendering moved to RenderOuterBorders so it can be called in a different order for docking. (#1495, #822) 2019-01-23 19:21:25 +01:00
omar
f14f93ef6e Fixed range-version of PushID() and GetID() not honoring the ### operator to restart from the seed value. 2019-01-21 16:50:27 +01:00
omar
ea7206fd4f Fixed using imgui_freetype.cpp in unity builds. (#2302) 2019-01-21 13:58:29 +01:00
omar
54ba8a643e Removed trailing spaces from text files. (#2038, #2299) 2019-01-20 22:23:29 +01:00
omar
00ffdb9fa9 ImGuiTextBuffer: Added append() function (unformatted). 2019-01-20 22:21:26 +01:00
Ryan Mast
8a63c72ac4 Fix the year for screenshot gallery part 7 and 8 links (#2298) 2019-01-19 20:45:17 +01:00
omar
92d29531fa
Qt links 2019-01-18 11:34:25 +01:00
omar
b8020032f9 Examples: Win32: Added support for mouse buttons 4 and 5 via WM_XBUTTON* messages. (#2264) 2019-01-17 16:55:23 +01:00
omar
bebb07f12d ImFontAtlas: Added 0x2000-0x206F general punctuation range to default ChineseFull/ChineseSimplifiedCommon ranges. (#2093) 2019-01-17 16:48:11 +01:00
omar
872477548b Examples: Win32: Using IsChild() to be compatible with windows created within a parent. (#1951, #2087, #2156, #2232) 2019-01-17 11:45:32 +01:00
Gilad Reich
14c40242db Examples: DirectX9: Explicitly disable fog (D3DRS_FOGENABLE) before drawing in case user state has it set. (#2288, #2290) 2019-01-17 11:39:40 +01:00
omar
f2c92808f8 EditorConfig: Further tweaks (#2038) 2019-01-16 22:02:42 +01:00
omar
8cbb91261e ImDrawList: Fixed AddCircle(), AddCircleFilled() angle step being off, which was visible when drawing a "circle" with a small number of segments (e.g. an hexagon). (#2287) [@baktery]
+ Demo tweaks
2019-01-16 17:47:49 +01:00
omar
09f1cb642b FreeType: Minor tweaks previous commit (#2285) 2019-01-15 21:50:43 +01:00
omar
f435aa193b Examples: Win32: Added support for XInput games (if ImGuiConfigFlags_NavEnableGamepad is enabled). 2019-01-15 21:19:02 +01:00
omar
133f112af0 Examples: Win32: Using GetForegroundWindow() instead of GetActiveWindow() to be compatible with windows created in a different thread. (#1951, #2087, #2156, #2232) [many people] 2019-01-15 20:27:32 +01:00
omar
95ee99e6aa Version 1.68 WIP 2019-01-15 20:19:05 +01:00
omar
d38d7c6628 TODO update + internals: changed order or ImGuiLayoutType enums to allow using them for indexing. 2019-01-15 15:06:24 +01:00
omar
7a5058e3bf Version 1.67 2019-01-14 17:41:44 +01:00
omar
1da40df279 DragFloat: Fixed broken mouse direction change with power!=1.0. (#2174, #2206) [@Joshhua5] 2019-01-14 17:38:19 +01:00
omar
abdd39b700 Merge branch 'atlas_fixes' 2019-01-13 14:19:07 +01:00
omar
49994ceb6e FAQ entry, moved ImTextureId, Gallery links. 2019-01-12 19:48:07 +01:00
omar
21828b08a0 ImFontAtlas: Rewrote FreeType based builder.
- Fixed abnormally high atlas height. (#618)
- Fixed support for any values of TexGlyphPadding (not just only 1). (#618)
- Atlas width is now properly based on total surface rather than glyph count (unless overridden with TexDesiredWidth). (#618)
- Fixed atlas builder so missing glyphs won't influence the atlas texture width. (#2233, #618)
- Fixed atlas builder so duplicate glyphs (when merging fonts) won't be included in the rasterized atlas. (#618)
2019-01-10 22:30:34 +01:00
omar
9a9712807e ImFontAtlas: Rewrote stb_truetype based builder.
- Atlas width is now properly based on total surface rather than glyph count (unless overridden with TexDesiredWidth).
- Fixed atlas builder so missing glyphs won't influence the atlas texture width. (#2233)
- Fixed atlas builder so duplicate glyphs (when merging fonts) won't be included in the rasterized atlas.
2019-01-10 22:23:05 +01:00
omar
e4c19f5af1 ImFontGlyphRangesBuilder: Using 32-bits fields for storage instead of 8-bit ones, comments, todo. 2019-01-10 16:00:26 +01:00
Vladimír Vondruš
289569ef27 Update link to Magnum bindings. (#2269)
The various community projects that integrated Dear ImGui into Magnum
were merged together and are now an official part of the engine.
2019-01-10 14:58:59 +01:00
omar
9ad341902d ImDrawList: Optimized some of the functions for performance of debug builds where non-inline function call cost are non-negligible. 2019-01-08 17:37:22 +01:00
omar
3997e8b555 Fixed animated window titles from being updated when displayed in the CTRL+Tab list. + Adding overkill helpers for reusing buffers. (#787) 2019-01-07 22:46:42 +01:00
omar
50faccf764 Demo: Log: Comments. Using clipper. Not linking with rand() anymore. 2019-01-07 17:33:02 +01:00
omar
acfa4050ec Tweak changelog + tweak internal render helper functions. 2019-01-07 16:43:55 +01:00
omar
5cb7ce2085 Renamed ImFont::GlyphRangesBuilder to ImFontGlyphRangesBuilder. Keep redirection typedef (will obsolete). 2019-01-06 16:59:51 +01:00
omar
c3af134cc8 IO: Renamed InputCharacters[], marked internal as was always intended. AddInputCharacter() goes into a queue which can receive as many characters as needed during the frame. This is useful for automation to not have an upper limit on typing speed. Will later transition key/mouse to use the event queue later. 2019-01-06 16:37:42 +01:00
omar
8b5f635624
Added alternative Rust bindings 2019-01-06 14:43:43 +01:00
omar
9ba202821f Nav: Fixed an keyboard issue where holding Activate/Space for longer than two frames on a button would unnecessary keep the focus on the parent window, which could steal it from newly appearing windows. (#787) 2019-01-04 19:03:56 +01:00
omar
d223d1e951 Added bindings in Readme. Added internal IMGUI_DEBUG_LOG() helper. Comments, missing breaking changes note relative to imgui_impl_xxxx changes, not really part of core but worth adding in the imgui.cpp breaking change section. 2019-01-04 18:01:43 +01:00
DomRe
4483320f0a Examples: Allegro 5: Properly destroy all globals on shutdown. (#2262) 2019-01-04 13:30:55 +01:00
omar
64c66529ae Moving issue/pr template to docs/. Added links in README. 2019-01-03 13:35:53 +01:00
omar
c738f9ef92 InputFloat: When using ImGuiInputTextFlags_ReadOnly the step buttons are disabled. (#2257) 2019-01-02 11:03:56 +01:00
omar
6b97ded438 Happy new year! & comments 2019-01-02 10:57:57 +01:00
omar
d845135273 Error recovery: Extraneous/undesired calls to End() are now being caught by an assert in the End() function itself at the call site (instead of being reported in EndFrame). Past the assert, they don't lead to crashes any more. Missing calls to End(), pass the assert, should not lead to crashes any more, nor to the fallback/debug window appearing on screen. (#1651). 2018-12-23 18:00:37 +01:00
omar
b471813f54 Made it illegal to call Begin("") with an empty string. This somehow accidentally worked before but had various undesirable side-effect as the window would have ID zero. In particular it is causing problems in viewport/docking branches. 2018-12-20 20:01:02 +01:00
omar
5691385a33 IO: Added BackendPlatformUserData, BackendRendererUserData, BackendLanguageUserData void* for storage use by back-ends. (#2004 + for cimgui) 2018-12-20 11:41:24 +01:00
omar
6890e08bc5 Fixed using SetNextWindowPos() on a child window (which wasn't really documented) position the cursor as expected in the parent window, so there is no mismatch between the layout in parent and the position of the child window. Demo tweak and adding some child window stuff 2018-12-19 15:19:31 +01:00
omar
84d1ce3958 Tidying up README, moved entries to FAQ, updated screenshots, removed comma in title. 2018-12-18 16:17:27 +01:00
omar
ae76a1fda7 Window, Focus, Popup: Fixed an issue where closing a popup by clicking another window with the _NoMove flag would refocus the parent window of the popup instead of the newly clicked window. 2018-12-18 15:01:15 +01:00
omar
1a6ec208cc Docs: various updates, rewording, clarifying the purpose of a PR. 2018-12-18 12:02:55 +01:00
omar
febc3e6aa1 Internals: Windows hidden with HiddenFramesRegular (but NOT HiddenFramesForResize) preserve their SizeContents, so restoring a auto-resize window after it's been hidden by tabs won't reset its size for a frame. Arguable. Let's see how it goes. (Followup to b48e295bddbf965d7382ec5578ed05d2fe601114) 2018-12-11 19:19:12 +01:00
omar
d9a84de9d9 Contents size is preserved while a window collapsed. Fix auto-resizing window losing their size for one frame when uncollapsed. 2018-12-11 19:08:06 +01:00
omar
ccce47c6a2 Demo: Using Tabs in Style Editor and Simple Layout example. + Adding missing early out in About and Documents examples. 2018-12-11 18:10:43 +01:00
omar
54a60aaa40 Added BETA api for Tab Bar/Tabs widgets. (#261, #351) (merged this feature from the from Docking branch so it can be used earlier as as standalone feature)
- Added BeginTabBar(), EndTabBar(), BeginTabItem(), EndTabItem(), SetTabItemClosed() API.
- Added ImGuiTabBarFlags flags for BeginTabBar().
- Added ImGuiTabItemFlags flags for BeginTabItem().
- Style: Added ImGuiCol_Tab, ImGuiCol_TabHovered, ImGuiCol_TabActive, ImGuiCol_TabUnfocused, ImGuiCol_TabUnfocusedActive colors.
- Demo: Added Layout->Tabs demo code.
- Demo: Added "Documents" example app showcasing possible use for tabs.
2018-12-11 12:36:47 +01:00
omar
cc1283fb78 Added ImGuiWindowFlags_UnsavedDocument window flag to append '*' to title without altering the ID, as a convenience to avoid using the ### operator. (merged from Docking branch) 2018-12-11 12:20:48 +01:00
omar
9476e07d5a Added io.ConfigWindowsMoveFromTitleBarOnly option. Still is ignored by window with no title bars (often popups). This affects clamping window within the visible area: with this option enabled title bars need to be visible. (#899)
Tweaked default value of style.DisplayWindowPadding from (20,20) to (19,19) so the default style as a value which is the same as the title bar height.
2018-12-10 16:05:30 +01:00
omar
59f3c4fc20 Renamed io.ConfigResizeWindowsFromEdges to io.ConfigWindowsResizeFromEdges and removed its [Beta] mark. Resizing windows from edge is now enabled by default (io.ConfigWindowsResizeFromEdges=true). Note that it only works _if_ the back-end sets ImGuiBackendFlags_HasMouseCursors, which the standard back-end do. 2018-12-10 15:41:01 +01:00
omar
b58bd5b311 Version 1.67 WIP + todo notes 2018-12-04 13:49:29 +01:00
omar
8d58055a54 Examples: DirectX10/11/12: Made imgui_impl_dx10/dx11/dx12.cpp link d3dcompiler.lib from the .cpp file to ease integration. 2018-12-03 17:47:10 +01:00