Commit Graph
100 Commits
Author SHA1 Message Date
omar fb257eef3e Internals: Update ->RootWindow and other links before applying the SetNextWindowXXX stuff. This is so FocusWindow() can always assume that ->RootWindow != NULL. 2020-01-31 18:25:57 +01:00
omar d9bca0d853 Nav: Fixed a bug where the initial CTRL-Tab press while in a child window sometimes selected the current root window instead of always selecting the previous root window. (#787) 2020-01-31 14:42:59 +01:00
omar d19297e2fa InputTextMultiline: Provide label to BeginChildEx so internal window name hold a little more context. 2020-01-31 14:42:59 +01:00
omar 47fab0e166 Misc renaming, comments. Docs: add missing spacing to Changelog. 2020-01-31 14:42:59 +01:00
omar 05a49f0413 Examples: Emscripten: Demonstrating embedding fonts in Makefile and code. (#2953) [@Oipo] 2020-01-30 17:15:15 +01:00
omar 6e1f8be07b Window: Fix SetNextWindowBgAlpha(1.0f) failing to override alpha component. (#3007) 2020-01-30 15:13:36 +01:00
omar 0a23582718 Examples: VS projects: Removed inconsistent/extraneous explicit linkage to imm32. 2020-01-29 20:11:42 +01:00
omar 0e89041997 Internals: ButtonEx, ButtonBehavior can support multiple mouse buttons. 2020-01-29 18:55:49 +01:00
omar 5f4dfad5b7 Merge misc/shallow changes from Docking to reduce drift.
Most are comments. Fix menu bar clipping: 07ff47bf1b7fb3dced2dc91ca39efedaff34e337
2020-01-28 20:06:34 +01:00
omar 6c1a73774d Tooltip: Testing DragDropWithinSourceOrTarget in BeginTooltipEx() instead of just BeginTooltip() - feel this was an overlook. Added tooltip flags instead of using bool. 2020-01-27 22:02:43 +01:00
omar 4d4e3b97f4 TODO, Readme
(dropped TreeNode_NoIndent flag from todo, as it feels unnecessary)
2020-01-27 12:37:06 +01:00
omar f6da5000bf Backends: OpenGL2: Explicitly backup, setup and restore GL_TEXTURE_ENV to increase compatibility with legacy OpenGL applications. (#3000) 2020-01-23 16:20:37 +01:00
omar 5363af7f47 AddCircle, AddCircleFilled: Add auto-calculation of circle segment counts (amends)
Tweak default max error value, Changelog, comments, path-fast for 12 segments circles, made LUT store ImU8
2020-01-23 14:55:05 +01:00
omar 2eda3585e7 Fixed hoverable/focus bug introduced in 3fe6ae97 (#2997)
+ ArrowButtonEx() internal bits.
2020-01-22 15:20:49 +01:00
omar 3fe6ae9732 Internals: Move some Nav functions and members around (no functional change) + Misc comments 2020-01-20 18:19:03 +01:00
omar 15c6abe4be Internals: Standard math functions default redirection uses a define instead of an extraneous inline function call 2020-01-20 11:48:17 +01:00
omar 8bcac7d95c Backends: GLFW, SDL: report Windows key (io.KeySuper) as always released.
Neither GLFW nor SDL can correctly report the key release in every cases (e.g. when using Win+V) causing problems with some widgets. The next release of GLFW (3.4+) will have a fix for it. However since it is both difficult and discouraged to make use of this key for Windows application anyway, we just hide it. (#2976)
2020-01-17 15:18:33 +01:00
omar e499497ec5 Backends: Win32: Added support for io.KeySuper (Windows key) for consistency with other backends. (#2976)
Even if realistically it is difficult to make good use of under Windows.
+ Style editor: Use a more explicit form of RadioButton() to avoid being depending on underlying flags type. (#2983)
2020-01-17 15:06:22 +01:00
omar 2478dbfdb7 Disable warning C5054 introduced in VS 2019 16.2 (#2983) 2020-01-17 14:18:16 +01:00
omar aa34681652 Backends: GLFW: inhibit error callback when creating cursors because X11 setups may be missing them + comment (#2980) 2020-01-17 11:36:56 +01:00
omar 9ad4c5da7e Fix zealous warnings + Internals: Renamed members from XxxxID to XxxxxId to be more consistent with rest of the codebase (still some inconsistency left that are harder to fix) 2020-01-16 23:44:05 +01:00
omar f6d6880a61 Internals: Nav: PushFocusScope, PopFocusScope, GetFocusScopeID() helpers 2020-01-14 20:34:26 +01:00
omar 2ebe08be40 Focus, Nav: Merged bits from RangeSelect features to enable early manipulation of focus scope for styling purpose.
FocusScopeId is tracked by nav scoring/request and stored in result.
It's all rather WIP and we should reorganize the SetNavIDXXX functions fiasco at some point (soon?).
Didn't separate FocusScope from SelectionScope for now, will re-investigate this later, this is the minimum commit to be able to do some styling.
2020-01-14 19:25:20 +01:00
omar 4f7bf7e96a Backends: Win32: Added support for #define IMGUI_IMPL_WIN32_DISABLE_GAMEPAD and IMGUI_IMPL_WIN32_DISABLE_LINKING_XINPUT. (#2716) 2020-01-14 14:58:36 +01:00
omar e2eb0b4bc4 Internals: Begin tries to setup WindowTemp/DC members in same order as their declaration. Readme: remove Coverity banner (PVS is better) 2020-01-13 16:50:56 +01:00
omar 02c2d18aa3 Internals: Renaming and marking of legacy focus/tabbing system 2020-01-13 15:21:37 +01:00
omar 52334ad8df Internals: Minor ordering/comments of ImGuiWindowTempData. 2020-01-13 15:04:28 +01:00
omar f56962cb9a ColorEdit: "Copy As" context-menu tool shows hex values with a '#' prefix instead of '0x' + both with/without alpha when available. 2020-01-13 14:09:42 +01:00
omar ff5299e0e0 Docs: FAQ, Comments. 2020-01-12 22:09:18 +01:00
omar 4b3c5ff5f1 Comments + minor moving 2020-01-11 16:08:17 +01:00
omar 4ee7aa72e9 ButtonBehavior: Default assignment of pressed behavior now also test for ImGuiButtonFlags_PressedOnDragDropHold which wasn't the case before. 2020-01-10 14:35:03 +01:00
omar 1eb71fc72b ButtonBehavior: Added ImGuiButtonFlags_PressedOnClickReleaseAnywhere behavior (#2971)
Rearranged flags. Added tests in 'widgets_button_press'
2020-01-10 14:34:15 +01:00
omar f9630e60c5 Metrics: Fix not being able to expand "ParentWindow" when parent window is same as root window. 2020-01-07 21:32:00 +01:00
omar 1db78b8ca7 Renaming + missing initialization + missing Changelog update. 2020-01-07 21:26:16 +01:00
omar d581939387 Removed trailing spaces. 2020-01-06 15:24:16 +01:00
omar 22d7f26e06 Tweak wording
Remove Patreon
2020-01-06 12:55:01 +01:00
omar 0dd02dd90d Happy new year!
Comments, Replaced pictures, Removed Patreon
2020-01-06 12:41:37 +01:00
omar dc66f83db8 Additional duplicated comments about usage of std::string and input text resize callback (#2006, #1443, #1008) 2019-12-25 17:46:35 +01:00
omar 854fc08194 Amend f70204f2 to facilitate merges. 2019-12-20 16:34:07 +01:00
omar 061650bd2a Update Readme 2019-12-19 22:14:28 +01:00
omar f70204f2f4 Minor bits, placeholder aimed at facilitating merging of Tables branch into Docking 2019-12-19 16:53:44 +01:00
omar e01fb5462d Internals: Separator: Simplify duplicated code. 2019-12-18 18:26:28 +01:00
omar a610f1da52 Bezier Tweaks, fixed parameter order of 3831d50 2019-12-17 16:43:05 +01:00
omar 0f7105e156 Backends: SDL: Wayland: Use SDL_GetMouseState (amend 78ff147) (#2800, 2802) 2019-12-17 14:35:45 +01:00
omar 9d444062f9 Limiting Columns()/BeginColumns() api to 64 columns (#125)
While the current code technically supports it, future code may not so we're putting the restriction ahead.
2019-12-17 13:25:46 +01:00
omar 10fdc03a46 Clarification about Im helpers + moving GetColorXXX functions outside of that block. 2019-12-17 13:19:36 +01:00
omar 3a800f2dc9 DragFloat: Mention usage of FLT_MAX, INT_MAX etc. explicitly. (#2931) 2019-12-13 11:56:51 +01:00
omar 43bd80a40d Internals: Breaking: ImRect() default constructor initializes all fields with 0.0f
Instead of (FLT_MAX,FLT_MAX,-FLT_MAX,-FLT_MAX). Previous behavior was designed for adding into a bounding box but rarely relied on and not worth it.
2019-12-13 11:56:00 +01:00
omar 6fdde67be2 Documentation, FAQ, todo tweaks 2019-12-10 13:37:29 +01:00
omar f9c26d23de Removed redirecting functions/enums that were marked obsolete in 1.53 (December 2017).
Comments
2019-12-08 16:38:27 +01:00
omar e42c1e1668 Exposed IMGUI_DEBUG_PARANOID in imconfig.h + using a #define with no value to match other uses in imconfig.h 2019-12-08 16:12:44 +01:00
omar e4a59d0025 TabItem: honor ImGuiTabItemFlags_NoCloseButton passed as parameter (although undocumented and part of private api) (#2923) 2019-12-07 16:22:07 +01:00
omar f656e7775e Inputs: Added ImGuiMouseButton enum for convenience (e.g. ImGuiMouseButton_Right=1).
We forever guarantee that the existing value will not changes so existing code is free to use 0/1/2.
2019-12-06 16:29:36 +01:00
omar 6cbed03d4a Comments, clarified mouse button ordering. 2019-12-06 16:29:32 +01:00
omar 7ff13f4ee1 Examples: Explicitly adding -DIMGUI_IMPL_OPENGL_LOADER_GL3W to Makefile to match linking settings
(otherwise if another loader such as Glew is accessible, the opengl3 backend might automatically use it). [#2919, #2798]
2019-12-06 10:43:27 +01:00
omar b521cd357d Removed implicit default parameter to IsMouseDragging(int button = 0) to be consistent with other mouse functions.
(none of the other functions have it).
2019-12-05 18:33:36 +01:00
omar 8342e5b91a Amend previous commits (added ImGuiMouseCursor_NotAllowed enum + new cursors in GLFW 3.4)
Amend b5cad20d79, 945a509773
+ unrelated minor typos
2019-12-05 15:45:30 +01:00
omar abaf0256b8 Version 1.75 WIP
Added message to font file loading assert.
2019-11-28 20:58:16 +01:00
omar a8092085b1 Internal: Added unused parameter named to facilitate cimgui parsing of imgui_internal.h
https://github.com/cimgui/cimgui/issues/108
2019-11-27 14:02:05 +01:00
omar bdce833636 Version 1.74 2019-11-25 18:38:53 +01:00
omar 26d177bc03 Docs: Moved misc/fonts/README.txt to docs/FONTS.txt. + tweaks 2019-11-25 18:29:28 +01:00
omar bbe0409942 Metrics: Show wire-frame mesh and approximate surface area when hovering ImDrawCmd. Amend aeb5795.
Internals: Added ImTriangleArea()
2019-11-25 12:01:04 +01:00
omar 0cb1c633ff Demo: tweaked demo help section, reference to "Examples" and "Tools". Reference to Keyboard navigation. Removed some of the more "obvious/standard" controls. 2019-11-24 23:11:53 +01:00
omar b205ab01f2 Internals: Added IM_ASSERT_PARANOID, IMGUI_DEBUG_PARANOID define. Shuffled a bit of the macros section in imgui_internal.h 2019-11-22 14:45:44 +01:00
omar 51e2e9b239 ImVector: Added shrink() helper. ImFont::RenderText minor optimisation for debug build. Misc: Metrics shows tab names because we now have them. 2019-11-22 14:06:51 +01:00
omar 51a02b319c Added IM_UNICODE_CODEPOINT_MAX. Changed specs of ImFontAtlas::AddCustomRectRegular() (breaking change). 2019-11-21 14:13:17 +01:00
omar ca63349eb4 Renamed XX-bits -> XX-bit in comments to match what the world appears to be using. 2019-11-20 11:58:25 +01:00
omar a899c1e570 Internals: Using ImU64 for internal ImFile api so we can later wrap them to fseeko/ftello//_fseeki64/_ftelli64 (#2734) 2019-11-20 10:40:14 +01:00
omar ecbedc8c26 Tweaks, ammend 93efa54, rename to IMGUI_DISABLE_DEFAULT_FORMAT_FUNCTIONS (#1038) 2019-11-19 21:29:12 +01:00
omar 4e90906b04 Added IMGUI_DISABLE_DEFAULT_FILE_FUNCTIONS / IMGUI_DISABLE_FILE_FUNCTIONS #2734)
Using in Emscripten example.
2019-11-19 21:14:44 +01:00
omar 93efa5415f Renamed IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS to IMGUI_DISABLE_DEFAULT_FORMAT_STRING_FUNCTIONS. (#1038)
Renamed IMGUI_DISABLE_MATH_FUNCTIONS to IMGUI_DISABLE_DEFAULT_MATH_FUNCTIONS.
2019-11-19 20:53:17 +01:00
omar 9efaf2828b Doc comments. Removed .ini parsing code from 1.53 that parsed entries without the [Window] tag (which enabled importing an old .ini file) 2019-11-19 19:39:46 +01:00
omar ca30ef4269 Drag and drop: Increase local payload buffer from 8 to 16 bytes. 2019-11-15 18:36:06 +01:00
omar 7e232092a6 Internals: Added GetWindowResizeID(), renamed GetScrollbarID() to GetWindowScrollbarID(). Using integer for resize ID so they matches regardless of the pointer size.
Internals: Renamed IMGUI_USER_ERROR to IM_ASSERT_USER_ERROR().
2019-11-15 16:59:43 +01:00
omar be05e12e21 Misc: Using static_assert() when using C++11, instead of our own construct (avoid zealous Clang warnings). 2019-11-14 18:02:18 +01:00
omar b23dcab6e1 Fix 25eee91 incorrect assert when ending a child-popup (rarely used but used by sub-nenus) 2019-11-14 16:06:39 +01:00
omar be436e2b0b Fix HelpMarker() symbol collision for unity builds (#2893) 2019-11-13 22:04:16 +01:00
omar 03852470de Internals: Routing recoverable user errors via IMGUI_USER_ERROR() macro. (#1651) 2019-11-13 21:58:18 +01:00
omar 25eee91542 Error handling: Assert if user mistakenly calls End() instead of EndChild() on a child window. (#1651)
Internals: Moved some error handling code.
2019-11-13 21:51:38 +01:00
omar b138f8cbcd Internal: Nav rename preparing for nav inputs ownership changes. IsNavInputPressed() -> IsNavInputTest() 2019-11-13 21:02:25 +01:00
omar 7c441e37fa CI: Update jobs to MacOS latest (Catalina)
Metrics: Added description to Item Picker.
2019-11-13 20:34:55 +01:00
omar 6e8e2c0fa9 Scrollbar: Fixed an issue where scrollbars wouldn't display on the frame following a frame where all child window contents would be culled.
Demo: Fixed a small bug with scrolling demo.
Metrics: Tweaks.
2019-11-08 19:01:54 +01:00
omar 57dc34f4e8 TreeNode: Added IsItemToggledOpen() to explicitly query if item was just open/closed, facilitating interactions with custom multi-selections patterns. (#1896, #1861) 2019-11-08 15:30:15 +01:00
omar 011d475532 TreeNode: The collapsing arrow accepts click even if modifier keys are being held, facilitating interactions with multi-select patterns. (#2886, #1896, #1861) 2019-11-08 15:30:15 +01:00
omar 037126ee0e TreeNode: Reworded code for ImGuiTreeNodeFlags_OpenOnArrow (follow up to f79b2d6c) to make it lightweight. Should be a no-op from user's point of view. Will facilitate using the arrow hovering information in the hot path. (#2886) 2019-11-08 15:00:28 +01:00
omar d003674f2c Internals: Added ImChunkStream, used by window settings. (more generic followup to 4c13807, the class will be used more extensively by Tables) 2019-11-07 16:05:03 +01:00
omar a337e219b6 Internals: ImPool: Renaming. 2019-11-07 16:04:51 +01:00
omar 28f1d60de1 Internals: Renaming + added ImStrSkipBlank() from docking branch.
(cherry picked from commit a573943fa0ce323ffb4080e57f5e8fe1bc777c36)
2019-11-06 23:37:35 +01:00
omar 09b2310237 Internals: Added index of helpers and shuffled a few things. 2019-11-06 20:37:47 +01:00
omar 4c13807b7d Misc: Optimized storage of window settings data (reducing allocation count). 2019-11-05 22:43:53 +01:00
omar 3929255b77 Examples: Emscripten: Removed BINARYEN_TRAP_MODE=clamp from Makefile which was removed in Emscripten 1.39.0 but required prior to 1.39.0, making life easier for absolutely no-one. (#2877, #2878) [@podsvirov] 2019-11-05 12:53:30 +01:00
omar 792a8631aa Metrics: Expose basic details of each window key/value state storage. 2019-10-31 14:01:35 +01:00
omar 8fee5a4349 Internals: Renaming for consistency. 2019-10-31 11:15:40 +01:00
omar d62a413476 Misc: Windows: Do not use _wfopen() if IMGUI_DISABLE_WIN32_FUNCTIONS is defined. (#2815) 2019-10-29 21:47:43 +01:00
omar 4e56de757c Doc: Promote Discord over Discourse. Obsoleting Discourse server. 2019-10-25 15:36:37 +02:00
omar f002a11898 Backends: OpenGL3: Fix building with pre-3.2 GL bindings which do not expose glDrawElementsBaseVertex(), using runtime GL version to decide if we set ImGuiBackendFlags_RendererHasVtxOffset. (#2866, #2852) [@dpilawa] 2019-10-25 11:56:44 +02:00
omar 9b323a7ebf SplitterBehavior: not using FrameRounding in render (was in first commit of the function, not sure why). (#319) 2019-10-25 11:05:14 +02:00
omar 3c238ecae3 Move issue_template and pull_request_template to .github folder. 2019-10-24 11:26:45 +02:00
omar ec0e953cca Fixed a couple of subtle bounding box vertical positioning issues relating to text baseline alignment.
The issue would generally manifest when laying out multiple items on a same line, with varying heights and text baseline offsets. (#2833)
Some specific examples, e.g. a button with regular frame padding followed by another item with a multi-line label and no frame padding, such as: multi-line text, small button, tree node item, etc. The second item was correctly offset to match text baseline, and would interact/display correctly,but it wouldn't push the contents area boundary low enough.
Note: previously the second parameter to ItemSize() was 0.0f was default, now -1.0f to signify "no text baseline offset request". If you have code using ItemSize() with an hardcoded zero you may need to change it. (+1 squashed commits)
2019-10-23 18:05:44 +02:00
omar 23c1ff4907 Removed redirecting functions/enums names that were marked obsolete in 1.52 (October 2017).
- Begin() [old 5 args version]     -> use Begin() [3 args], use SetNextWindowSize() SetNextWindowBgAlpha() if needed
- IsRootWindowOrAnyChildHovered()  -> use IsWindowHovered(ImGuiHoveredFlags_RootAndChildWindows)
- AlignFirstTextHeightToWidgets()  -> use AlignTextToFramePadding();
- SetNextWindowPosCenter()         -> use SetNextWindowPos() with a pivot of (0.5f, 0.5f)
- ImFont::Glyph                    -> use ImFontGlyph
If you were still using the old names, read "API Breaking Changes" section of imgui.cpp to find out the new names or equivalent features, or see how they were implemented until 1.73.
2019-10-22 14:45:11 +02:00