638 Commits (457d4b7b72606663f588fe28103bf9e725f9ecfa)

Author SHA1 Message Date
omar ccaec1a270 Version 1.76 WIP 5 years ago
omar 30bb15672d Remove trailing spaces 5 years ago
omar d8948b5343 ColorButton: Added ImGuiColorEditFlags_NoBorder flag to remove the border normally enforced by default. 5 years ago
omar 58b3e02b95 Version 1.75
Comments
5 years ago
omar d37d25470a Added IMGUI_DISABLE compile-time definition to make all headers and sources empty. 5 years ago
omar f694244dec InputText: Fix using a combination of _CallbackResize + _EnterReturnsTrue + lack of persisting user storage. (#3009)
Amend 24ff25981 (#2006, #1443, #1008)
5 years ago
omar bdbb2b21f5 Fix 83efdcec from overflowing buffer + make it a single undo records + comments (#3008) 5 years ago
Rokas Kupstys 83efdcec8d Canceling text input with [esc] key uses stb_textedit facilities to restore original value. This makes restoration undoable using hotkeys.
Fixes #3008.
5 years ago
omar d19297e2fa InputTextMultiline: Provide label to BeginChildEx so internal window name hold a little more context. 5 years ago
Rokas Kupstys 9cff4d6e5e Columns: ImDrawList::Channels* functions now work inside columns.
Use a private splitter in columns, paving way for removal of obsolete ImDrawList::Channels* functions.
5 years ago
omar 0e89041997 Internals: ButtonEx, ButtonBehavior can support multiple mouse buttons. 5 years ago
omar 5f4dfad5b7 Merge misc/shallow changes from Docking to reduce drift.
Most are comments. Fix menu bar clipping: 07ff47bf1b
5 years ago
omar 6c1a73774d Tooltip: Testing DragDropWithinSourceOrTarget in BeginTooltipEx() instead of just BeginTooltip() - feel this was an overlook. Added tooltip flags instead of using bool. 5 years ago
omar 2eda3585e7 Fixed hoverable/focus bug introduced in 3fe6ae97 (#2997)
+ ArrowButtonEx() internal bits.
5 years ago
omar 2478dbfdb7 Disable warning C5054 introduced in VS 2019 16.2 (#2983) 5 years ago
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) 5 years ago
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.
5 years ago
omar e2eb0b4bc4 Internals: Begin tries to setup WindowTemp/DC members in same order as their declaration. Readme: remove Coverity banner (PVS is better) 5 years ago
omar 02c2d18aa3 Internals: Renaming and marking of legacy focus/tabbing system 5 years ago
omar 52334ad8df Internals: Minor ordering/comments of ImGuiWindowTempData. 5 years ago
omar f56962cb9a ColorEdit: "Copy As" context-menu tool shows hex values with a '#' prefix instead of '0x' + both with/without alpha when available. 5 years ago
omar 4ee7aa72e9 ButtonBehavior: Default assignment of pressed behavior now also test for ImGuiButtonFlags_PressedOnDragDropHold which wasn't the case before. 5 years ago
omar 1eb71fc72b ButtonBehavior: Added ImGuiButtonFlags_PressedOnClickReleaseAnywhere behavior (#2971)
Rearranged flags. Added tests in 'widgets_button_press'
5 years ago
omar 1db78b8ca7 Renaming + missing initialization + missing Changelog update. 5 years ago
Rokas Kupstys 32c33c6659 ColorEdit: Preserve last saturation value when V=0. Disable Hue editing lock.
This workaround is no longer necessary because preserving hue value prevents it from resetting when it is edited in said condition.
5 years ago
Rokas Kupstys e254167afd ColorEdit: Fix label alignment when using ImGuiColorEditFlags_NoInputs. (#2955) 5 years ago
omar d581939387 Removed trailing spaces. 5 years ago
omar e01fb5462d Internals: Separator: Simplify duplicated code. 5 years ago
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.
5 years ago
omar e4a59d0025 TabItem: honor ImGuiTabItemFlags_NoCloseButton passed as parameter (although undocumented and part of private api) (#2923) 5 years ago
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).
5 years ago
omar abaf0256b8 Version 1.75 WIP
Added message to font file loading assert.
5 years ago
omar bdce833636 Version 1.74 5 years ago
omar 51a02b319c Added IM_UNICODE_CODEPOINT_MAX. Changed specs of ImFontAtlas::AddCustomRectRegular() (breaking change). 5 years ago
omar ca63349eb4 Renamed XX-bits -> XX-bit in comments to match what the world appears to be using. 5 years ago
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().
5 years ago
omar 03852470de Internals: Routing recoverable user errors via IMGUI_USER_ERROR() macro. (#1651) 5 years ago
omar b138f8cbcd Internal: Nav rename preparing for nav inputs ownership changes. IsNavInputPressed() -> IsNavInputTest() 5 years ago
omar 57dc34f4e8 TreeNode: Added IsItemToggledOpen() to explicitly query if item was just open/closed, facilitating interactions with custom multi-selections patterns. (#1896, #1861) 5 years ago
omar 011d475532 TreeNode: The collapsing arrow accepts click even if modifier keys are being held, facilitating interactions with multi-select patterns. (#2886, #1896, #1861) 5 years ago
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) 5 years ago
omar 8fee5a4349 Internals: Renaming for consistency. 5 years ago
stfx 6bf5aed325 Declaration and assignment can be joined, Member function may be 'const'. (#2875) 5 years ago
Rokas Kupstys c863c1f6a1 Clean up number rounding. Now it is more obvious what code is doing. (#2862)
Add IM_ROUND() macro
Replace IM_FLOOR(n + 0.5f) and ImFloor(n + 0.5f) with IM_ROUND(n)
5 years ago
omar 9b323a7ebf SplitterBehavior: not using FrameRounding in render (was in first commit of the function, not sure why). (#319) 5 years ago
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)
5 years ago
Alexey be9f1e8f00 ColorPicker: Fixed SV triangle gradient to block (broken in 1.73). (#2864, #2711). [@lewa-j] 5 years ago
omar 048b73dfaa Various comments + Doc: Examples readme. Moved main menu bar code below menu bar code. 5 years ago
Rokas Kupstys 714fe29d1a Replace manual flooring with IM_FLOOR() macro. (#2850)
Macro is used to ensure that flooring operation is always inlined even in debug builds. __forceinline does not force inlining in /Od builds with MSVC.

(cherry picked from commit bc165df6fd7969605bbc07b8a6d3d28f9109e8f3)
5 years ago
omar a41f0b2df4 Inputs: Fixed a miscalculation in the keyboard/mouse "typematic" repeat delay/rate calculation, used by keys and e.g. repeating mouse buttons as well as the GetKeyPressedAmount() function.
IMPORTANT: Renamed internal CalcTypematicPressedRepeatAmount to CalcTypematicRepeatAmount and reordered the t1, t0 arguments to t0, t1 !!
If you were using a non-default value for io.KeyRepeatRate (previous default was 0.250), you can add +io.KeyRepeatDelay to it to compensate for the fix.  The function was triggering on: 0.0 and (delay+rate*N) where (N>=1). Fixed formula responds to (N>=0).
Effectively it made io.KeyRepeatRate behave like it was set to (io.KeyRepeatRate + io.KeyRepeatDelay).
Fixed the code and altered default io.KeyRepeatRate,Delay from 0.250,0.050 to 0.300,0.050 to compensate.
If you never altered io.KeyRepeatRate nor used GetKeyPressedAmount() this won't affect you.
5 years ago
omar c7bdec7e18 InputText, Nav: Fixed Left!Right keys broken when activating Keyboard Navigation. (#787) Amend 892dfb1 5 years ago
omar aeb6481499 InputText: Filter out Ascii 127 (DEL) emitted by low-level OSX layer, as we are using the Key value. (#2578) 5 years ago
omar bf746c4215 DragScalar, SliderScalar, InputScalar: Added p_ prefix to parameter that are pointers to the datato clarify how they are used, and more comments redirecting to the demo code. (#2844) 5 years ago
omar 927472f5ff Combo: Added _NoMove flag to prevent window from docking, which has an effect in Docking branch (in Master was not noticeable as the Combo code kept repositioning the window). (#2835) 5 years ago
omar 73fa6509a5 Internal: InputTextEx: tweaked a bit of code (should be a no-op) 5 years ago
omar ee3373d067 TreeNode: Fixed combination of ImGuiTreeNodeFlags_SpanFullWidth and ImGuiTreeNodeFlags_OpenOnArrow incorrectly locating the arrow hit position to the left of the frame. (#2451, #2438, #1897) 5 years ago
domgho ccb2a947a2 Internal: SliderBehaviorT: Condition '!is_decimal' is always true (#2828) 5 years ago
omar a6c3be4bda Internals: Tweaks to ItemSize() should be harmless. Added DebugDrawItemRect() helper. 5 years ago
omar 892dfb1dea InputText, Nav: Fixed Home/End key broken when activating Keyboard Navigation. (#787)
Small refactor of ActiveIdUsingXXX inputs flags toward a little more consistent system. (#2637)
5 years ago
omar c262276988 Version 1.74 WIP 5 years ago
omar d5efe16157 Version 1.73 5 years ago
goran-w e100523917 CollapsingHeader: Added support for ImGuiTreeNodeFlags_Bullet and ImGuiTreeNodeFlags_Leaf on framed nodes. (#2159, #2160)
The Bullet and Leaf ImGuiTreeNodeFlags are now taken into account for Framed/CollapsingHeader tree nodes as well. TreeNodeEx() can be used to specify these flags. A choice was made to left-adjust the Framed text when no Bullet/Arrow is rendered, since this was deemed to look better in the Framed context (especially when considering that CollapsingHeader is drawn using NoTreePushOnOpen, so child/sibling Text items etc will often be non-indented).
5 years ago
omar 25849234f6 Internal: Tree: tweaks (initially tried to implement auto-scrolling, stashed) 5 years ago
omar 80b3ab7d3e TabBar: Fixed single tab shrinking reducing the tab to 0.0f size. Broken by a856c670c1. 5 years ago
omar 38d22bc47d ColorPicker / ColorEdit: restore Hue when zeroing Saturation. (#2722, #2770) - changelog, fixed uninitialized variables, tweaks, renaming. 5 years ago
Rokas Kupstys accb0261b8 ColorPicker / ColorEdit: restore Hue when zeroing Saturation. (#2722, #2770)
Issue is fixed by storing last active color picker color and last hue value when active color picker takes rgb as input. Then if current color picker color matches last active color - hue value will be restored. IDs are not used because ColorEdit4() and ColorWidget4() may call each other in hard-to-predict ways and they both push their own IDs on to the stack. We need hue restoration to happen in entire stack of these widgets if topmost widget used hue restoration. Since these widgets operate on exact same color value - color was chosen as a factor deciding which widgets should restore hue.
5 years ago
omar 9d02ed51e3 TreeNode: Added ImGuiTreeNodeFlags_SpanAvailWidth and ImGuiTreeNodeFlags_SpanFullWidth flags (#2451, #2438, #1897)
Added demo bits.
5 years ago
omar 3f986e72d9 Internal: Offset STB_TEXTURE_K_ defines to remove that change from #2541 + sponsors update. 5 years ago
omar 7d5a17e5e4 Remove trailing spaces (grep for ' \r?$' in visual studio) 5 years ago
omar 404dc0367e BeginTabItem: Fixed case where right-most tab would create an extraneous draw calls (probably related to other tab fitting code in 1.73 wip) 5 years ago
omar 3dcf323c35 Columns: Separator: Fixed a bug where non-visible separators within columns would alter the next row position differently than visible ones.
Fixed rounding issues also leading to change of ScrollMax depending on visible items (in particular negative coordinate would be rounded differently)
5 years ago
Bagrat Dabaghyan 3cf519c9cb Fix DragScalar for unsigned types (#2780)
decreasing the value was broken on arm64
5 years ago
omar 0537ac005f ColorEdit: Disable Hue edit when Saturation==0 instead of letting Hue values jump around. 5 years ago
omar b59ec7b9b7 DragInt, DragFloat, DragScalar: Using (v_min > v_max) allows locking any edit to the value. 5 years ago
omar 3f99890f40 TabBar: feed desired width (sum of unclipped tabs width) into layout system to allow for auto-resize. (#2768)
Before 1.71 tab bars fed the sum of current width which created feedback loops in certain situations. Amend f95c77eeea.
5 years ago
omar f8d3d8d7f5 TabBar: improved shrinking for large number of tabs to avoid leaving extraneous space on the right side. Individuals tabs are given integer-rounded width and remainder is spread between tabs left-to-right. 5 years ago
omar c8418015c2 SliderScalar: Improved assert when using U32 or U64 types with a large v_max value. (#2765)
+  misc minor stuff.
5 years ago
omar a856c670c1 TabBar: fixed single-tab not shrinking their width down.
+ minor typo fixes (#2738)
5 years ago
omar 7abd41bd5f TabBar: fixed ScrollToBar request creating bouncing loop when tab is larger than available space. 5 years ago
omar 9fce278918 ColorPicker: Made rendering aware of global style alpha of the picker can be faded out. (#2711)
Note that some elements won't accurately fade down with the same intensity, and the color wheel when enabled will have small overlap glitches with (style.Alpha < 1.0).
5 years ago
omar f624455d7b Version 1.73 WIP 5 years ago
omar 6a0d0dab5a Version 1.72b (patch for nav) 5 years ago
omar 27079e68c2 Nav: Made hovering non-MenuItem Selectable not re-assign the source item for keyboard navigation. 5 years ago
omar 5ef7445d92 Internal: Avoid using GImGui multiple times in same function. 5 years ago
omar 9183e7c426 Version 1.73 WIP 5 years ago
omar ecb9b1e2eb Version 1.72 5 years ago
omar 824e8c53b4 Internals: Added IMGUI_DEBUG_INI_SETTINGS. Made IMGUI_DEBUG_LOG redefinable in imconfig.h. Comments. Fix to allow Metrics's NodeWindow() being called with a NULL window. 5 years ago
omar baae057a03 Internals: Merge in minor noise from wip Tables branch to simplify further merging. 5 years ago
omar 51853292cc ImDrawList: Using ImDrawCornerFlags instead of int in various apis.
Demo: Using ImGuiColorEditrFlags instead of int.
5 years ago
omar dcd03f62a7 Scrolling: Made it possible for mouse wheel and navigation-triggered scrolling to override a call to SetScrollX()/SetScrollY(), making it possible to use a simpler stateless pattern for auto-scrolling.
Demo: Log, Console: Using a simpler stateless pattern for auto-scrolling.
5 years ago
omar 34cf00566f InputTextMultiline: Fixed vertical scrolling tracking glitch.
Fixed Travis-CI banner address.
5 years ago
omar f0348ddffc Amend 0f86116, renamed to ImGuiKey_KeyPadEnter Changelog.. (#2677, #2005) 5 years ago
Aaron Cooper 0f86116a69 Adding an ImGuiKey 'ImGuiKey_EnterSecondary' to support platforms that differentiate the enter (return key) and the numpad enter key. 5 years ago
omar c37f21788f Columns: Made GetColumnOffset() and GetColumnWidth() behave when there's no column set, consistently with other column functions + fixed Columns demo (#2683) 5 years ago
omar b443bc0a64 Columns: Improved honoring alignment with various values of ItemSpacing.x and WindowPadding.x. (#125, #2666) 5 years ago
omar 4abc2a82e0 Columns: Made the right-most edge reaches up to the clipping rectangle (removing WindowPadding.x*0.5 worth of asymmetrical/extraneous padding). (#125, #2666)
+ Moved a few things in BeginColumns().
5 years ago
omar 493795cdd1 Columns: Fix support for BeginColumns() with a count of 1 (not that this isn't available via the old Columns() api). Tweaked Demo to facilitate testing for it. 5 years ago
omar 44336950e9 Revert "Columns: Improved honoring left-most and right-most alignment with various values of ItemSpacing.x and WindowPadding.x. In particular, the right-most edge now reaches up to the clipping rectangle while ensuring that the right-most column clipping width matches others. (#125, #2666)"
This reverts commit 6c16ba6490.
5 years ago
omar 6c16ba6490 Columns: Improved honoring left-most and right-most alignment with various values of ItemSpacing.x and WindowPadding.x. In particular, the right-most edge now reaches up to the clipping rectangle while ensuring that the right-most column clipping width matches others. (#125, #2666) 5 years ago
omar e28d20c3e2 Columns: Fixed a regression from 1.71 where the right-side of the contents rectangle within each column would wrongly use a WindowPadding.x instead of ItemSpacing.x like it always did. (#125, #2666) 5 years ago
omar 61c7f0194e Misc: Made Button(), ColorButton() not trigger an "edited" event leading to IsItemDeactivatedAfterEdit() returning true. This also effectively make ColorEdit4() not incorrect trigger IsItemDeactivatedAfterEdit() when clicking the color button to open the picker popup. (#1875)
Demo: Added Button with repeater and InputFloat with +/- button to the status query test demo.
5 years ago
omar 1f3feb481e Internals: Refactor: Moved all Columns code from imgui.cpp to imgui_widgets.cpp (#125)
Also moved NextColumn between BeginColumn and NextColumn which makes it easier to work on that code.
5 years ago
omar e6a286b3a5 Style: Added style.ColorButtonButton (left/right, defaults to ImGuiDir_Right) to move the color button of ColorEdit3/ColorEdit4 functions to either side of the inputs. 5 years ago
omar a35f42f123 Removed TreeAdvanceToLabelPos() which is rarely used and only does SetCursorPosX(GetCursorPosX() + GetTreeNodeToLabelSpacing()). Kept redirection function (will obsolete). (#581, #324) 5 years ago
omar 3d07c7cbe4 TabBar: Fixed unfocused tab bar separator color (was using ImGuiCol_Tab, should use ImGuiCol_TabUnfocusedActive). 5 years ago
omar 7a9d32acee Fixed unnecessary test in UpdateMouseWheel() (thanks PVS).
TreeNodeBehavior: avoid computing bg_col for non-framed non-active tree nodes.
Comments, binaries update, minor typos.
5 years ago
omar 3436132d4b Combo: Hide arrow when there's not enough space even for the square button.
+ Various todo items.
5 years ago
omar e16564e67a Scrollbar: Avoid overlapping the opposite side when window (often a child window) is forcibly too small. 5 years ago
omar 2a3517a399 Internals: Checkbox: Added undocumented mixed/indeterminate/tristate support via ImGuiItemFlags_MixedValue. (#2644) 5 years ago
omar e9b92d1cef Disable -Wpragmas warning in GCC to avoid relying on version checks, as unusual/forks/mods don't appear to always have same warning<>version. (#2618)
+ Fix version number in imgui.h
5 years ago
omar 5286ecb8a7 Version 1.72 WIP 5 years ago
omar 2da1c66d15 Version 1.71 + comments 5 years ago
omar 5ae268c0a3 Internals: Reworked RenderTextEllipsis() to satisfy what we need for table headers. 5 years ago
omar c3a348aa25 CollapsingHeader: Minor fix to align right side of frames (which is extruded past the Work/Contents rect) with clipping rectangle. 5 years ago
omar a8eb64fc54 Log/Capture: Fixed BeginTabItem() label not being included in a text log/capture.
Extracted tab rendering code into a RenderTextEllipsis() function.
5 years ago
omar afa3978ff6 Internals: Added drawlist and color arg to RenderArrow(), RenderBullet(). Reordered args for RenderPixelEllipsis. 5 years ago
omar 431aa4e456 Synced/merged minor cruft from docking branch to minimize drift. AFAIK the only meaningful no-op change is that the call UpdateHoveredWindowAndCaptureFlags() was moved above UpdateMouseMovingNewFrame() to match what docking branch has been doing for a while. 5 years ago
omar c1a61d25a7 Scrollbar overlap an extra WindowBorderSize amount on the left to make all distances consistent. Reverted to BorderSize not affecting work/contents rectangles. Scrollbar, Style: Changed default style.ScrollbarSize from 16 to 14. 5 years ago
omar 15282261dd Internals: Minor no-op tidying up toward solving the WindowPadding / WindowBorderSize / ScrollbarSize overlapping mess.
+ Demo: Use SetScrollY().
5 years ago
omar fe32fde376 Internals: Renamed SizeContents to ContentSize, SizeContentsExplicit to ContentSizeExplicit. Tweaked Metrics->Show Rectangles functionality. 5 years ago
omar f95c77eeea Window rectangles: Changed WorkRect to cover the whole region including scrolling (toward obsolete ContentsRegionRect) + using full WindowPadding*1 padding.
Tweaked InnerClipRect.
TreeNode, CollapsingHeader: Fixed highlight frame not covering horizontal area fully when using horizontal scrolling. (#2211, #2579)
TabBar: Fixed BeginTabBar() within a window with horizontal scrolling from creating a feedback loop with the horizontal contents size.
Columns: Fixed Columns() within a window with horizontal scrolling from not covering the full horizontal area (previously only worked with an explicit contents size). (#125)
Demo: Added demo code to test contentsrect/workrect
5 years ago
omar a0994d74c2 Clarified behavior of SetNextWindowContentSize(). Content size is defined as the size available after removal of WindowPadding on each sides. So SetNextWindowContentSize(ImVec2(100,100)) + auto-resize will always allow submitting a 100x100 item without creating a scrollbar, regarding of WindowPadding.The exact meaning of ContentSize for decorated windows was previously ill-defined. 5 years ago
omar b9874a2423 Comments about obsoleted features version. Todo. Clarify tab bar initial offset (useful if we decide to remove the half-windowpadding clip margin). 5 years ago
DucaRii 6614bab883 Combo: Fixed rounding not applying with the ImGuiComboFlags_NoArrowButton flag. (#2606, #2607) 5 years ago
omar 21ebdcafc9 Internals: Window rectangles: Renaming of all rectangles toward their final form. Should be a no-op. Renamed GetWorkRectMax() to GetContentRegionMaxAbs(). Metrics shows SizeContents. 5 years ago
omar cb7ba60d3f CollapsingHeader: When a close button is enabled, better clip the label to avoid overlap. (#600) 5 years ago
omar 70d9f79312 Internal: Renamed InnerMainRect to InnerVisibleRect. Printing coordinates in Metrics window. 5 years ago
omar 70a4be07df ColorEdit: Fixed the color picker popup only displaying inputs as HSV instead of showing multiple options. (#2587, broken in 1.69 by #2384). 5 years ago
omar 958d75c00a Style: Added style.WindowMenuButtonPosition (left/right, defaults to ImGuiDir_Left) to move the collapsing/docking button to the other side of the title bar. 5 years ago
omar 6c3697f6f1 Internal: CloseButton takes an upper-left corner + a size to be consistent with similar widgets. 5 years ago
omar ec3ec24157 Internals: Extracted some of the tab bar shrinking code into a ShrinkWidths() function so columns/table can use it. 5 years ago
omar 3fda90d6a7 Fixed InputScalar, InputScalarN, SliderScalarN, DragScalarN with non-visible label from inserting style.ItemInnerSpacing.x worth of trailing spacing. 5 years ago
omar 7bc03f7155 Internals: Added InnerWorkRect equal to old InnerClipRect, added InnerWorkRectClipped actually clipped. 5 years ago
omar 882d2c3aea Fixed crash when appending with BeginMainMenuBar() more than once and no other window are showing. (#2567) + comments 5 years ago
omar f242cd4d8a Fixed GCC mem-access warnings (#2565)
+ using "if defined" more consistently for Clang.
5 years ago
omar e6109a9145 Fixed ColorEdit breakage introduced by d3a387c (#2557, #1875, #2034) 5 years ago
omar d3a387cc18 Fixed InputFloatX, SliderFloatX, DragFloatX functions erroneously reporting IsItemEdited() multiple times when the text input doesn't match the formatted output value (e.g. input "1" shows "1.000"). It wasn't much of a problem because we typically use the return value instead of IsItemEdited() here. (#1875, #2034) 5 years ago
omar 99a845053a Internal: Renamed fields + minor tweaks (probably shallow break stack-layout pr, sorry!) 5 years ago
omar 64dbd932d2 Internal: Removed GetNextItemWidth(), relying on ItemAdd or NextItemData.ClearFlags() to clear the width data. Amend 5078fa20 and undo some of its effects of imgui_widgets.cpp 5 years ago
omar 632469d2e5 Renamed SetNextTreeNodeOpen() to SetNextItemOpen(). Refactored SetNextItemXXX stuff to match SetNextWindowXXX code closely. 5 years ago
omar 36e714a459 Internal: Storing flags for NextWindowData so that we can clear everything with a single write and remove dummy condition fields. 5 years ago
omar 0b485f12d7 Internal: Minor tidying/reordering of sections within ImGuiContext / window DC. 5 years ago
omar 39eeda0227 Internal: Scrollbar: Further sane simplification (using InnerMainRect instead of duplicating calculations). 5 years ago
omar 37174c85e2 Internal: Scrollbar: Extracted scrollbar code for other uses (eg. table v2 scrolling without using a child window). 5 years ago
omar 9534ef9b26 Separator: Revert 1.70 "Declare its thickness (1.0f) to the layout" change (c5d83d8a). It's not incorrect but it breaks existing some layout patterns. Will return back to it when we expose Separator flags. 5 years ago
omar a4d0b0efa4 Internal: Refactored Separator into SeparatorEx(), exposed ImGuiSeparatorFlags_SpanAllColumns in imgui_internal.h and support without. (#759) + misc comments 5 years ago
omar b7c2759f95 Columns: Fixed Separator from creating an extraneous draw command. Fixed Selectable with SpanAllColumns flag from creating an extraneous draw command. (#125) 5 years ago
omar 42fc563fed Version 1.71 WIP + fixed minor typo 5 years ago
omar d1d5075b66 Version 1.70 6 years ago
omar 2dc81057ec Selectable: With ImGuiSelectableFlags_AllowDoubleClick doesn't return true on the mouse button releas efollowing the double-click. Only first mouse release + second mouse down (double-click) returns true. Likewise for internal ButtonBehavior() with both _PressedOnClickRelease | _PressedOnDoubleClick. (#2503) 6 years ago
omar ce19cb465f Internals: Rename GetContentRegionMaxScreen() -> GetWorkRectMax(). At this point this is mostly useful to facilitate merge of other branches. 6 years ago
omar 4dec744795 Tidying up BeginMenu() code + comments. 6 years ago
omar bda2cde68e Popups: Closing a popup restores the focused/nav window in place at the time of the popup opening, instead of restoring the window that was in the window stack at the time of the OpenPopup call. (#2517)
Among other things, this allows opening a popup while no window are focused, and pressing Escape to clear the focus again.
6 years ago
omar 3276b12765 Internals: Added DataTypeApplyOp, DataTypeApplyOpFromText to imgui_internal.h 6 years ago
omar 4e81b2d093 Internals: Renaming. Renamed ImGuiPopupRef to ImGuiPopupData for consistency and added constructor. 6 years ago
omar 3d363c91fd Internals: Exposed ImGuiDataTypeInfo, DataTypeGetInfo(), DataTypeFormatString(). Comments. 6 years ago
omar c5d83d8af2 Separator: Declare its thickness (1.0f) to the layout, making items around separator more symmetrical. 6 years ago
omar 56c3aaf6bd Nav: Fixed Drag/Slider functions going into text input mode when keyboard CTRL is held while pressing NavActivate. 6 years ago
omar dd15b44230 Internals: TempInputText: Tidying up DragScalar / SliderScalar / TempInputTextScalar. 6 years ago
omar 0ca1675ff9 Internals: TempInputText: Rename InputScalarAsWidgetReplacement() -> TempInputTextScalar(), ScalarAsInputTextId -> TempInputTextId, small tidying up in affected functions. 6 years ago
omar 59a3f0476d Internals: Using more explicit PushOverrideID() helper + renamed equivalent internal tree helper. 6 years ago
omar 16b18b265e MenuItem, BeginMenu: Fix undesirable tall frames in horizontal layout context, which would be visible when trying to use rounded selectable/menus.
PushStyleVar: Added comments in the assert message.
Minor tweaks.
6 years ago
omar 6db0766564 Misc comments, internal renaming, added disable indentation option to Columns demo section. 6 years ago
omar 59f012d656 Internals: ImHashStr() default parameter. 6 years ago
omar 5078fa208b Added SetNextItemWidth() helper to avoid using PushItemWidth/PopItemWidth() for single items. 6 years ago
omar f355a40367 Added commentary about ContentRegion functions. Added internal GetContentRegionMaxScreen() to facilitate internal code at the moment. 6 years ago
omar 9d4a893a77 Internals: Moved CalcItemSize next to CalcItemWidth, added comments to clarify their respective intent. Should have no side effect. 6 years ago
omar 240dddff87 Combo, Slider: Improve rendering in situation when there's there's very little space available. 6 years ago
omar 1aeee9d40f Internals: Columns: Tweaks, renaming. Metrics: Show rectangles for child windows.
Renamed SameLine() first parameter.
6 years ago
omar 7baf45cffa Metrics: Added "Show windows rectangles" tool to visualize the different rectangles. 6 years ago
omar 311469e9d6 Internals: Columns: Some renaming, extracted code into GetColumnsID(). 6 years ago
omar fb2626c21b Tests: Added hook/tweaks for imgui-test engine. + Fixed warnings. 6 years ago
omar 30d81f53cb PlotLines, PlotHistogram: Ignore NaN values when calculating min/max bounds. (#2485) 6 years ago
omar ee02cdbf03 Internals, Docs: Added a bunch of clarification about ButtonBehavior in the form of a table (and to facilitate writing tests) 6 years ago
omar 07a70dc972 Internals: Merge minor things from range_select branch. Added ImGuiButtonFlags_NoHoveredOnNav. Added IsItemToggledSelected() - unused here. Renaming. 6 years ago
omar 1391904fd2 Internals: Selectable: Added ImGuiSelectableFlags_AllowItemOverlap in imgui_internal.h (~ #684, #2341) 6 years ago
omar b53630813e Internals: Tweak ItemSize calls. Added todo items. 6 years ago
omar c8fd4afd75 Misc: Added IM_MALLOC/IM_FREE macros mimicking IM_NEW/IM_DELETE so user doesn't need to revert to using the ImGui::MemAlloc()/MemFree() calls directly. 6 years ago
omar 8dab7ac021 InputText: Made Shift+Tab consistently do nothing regardless of whether the back-end emits both char and keys or just keys. (#2467, #1336) 6 years ago
omar da035ced97 InputText, Examples/SDL: Emulate \t input if back-end doesn't provide it. (#1336, #2467)
+ Fix some output filename in SDL build batch files.
6 years ago
omar 01e29a3933 InputText: Fixed ImGuiInputTextFlags_AllowTabInput leading to two tabs characters being inserted if the back-end provided both Key and Character input. (#2467, #1336) 6 years ago
omar 4a57507f75 InputText: Work-around for buggy standard libraries where isprint('\t') returns true. (#2467, #1336)
Not using isprint. + todo items.
6 years ago
omar 3d8ea352d1 InputText: Fixed selection background starts rendering one frame after the cursor movement when first transitioning from no-selection to has-selection. (Bug in 1.69) (#2436) [@Nazg-Gul] 6 years ago
omar abb7d7b18a InputText: Simplify read-only code path. 6 years ago
omar 221bf93a55 Comments, todo list, remove trailing spaces. 6 years ago
omar cf2c52282d Version 1.70 WIP 6 years ago
omar 55c02099c5 Version 1.69, comments, typos 6 years ago
omar a26085ed53 Internals: Fixed Navigation from reaching ImGuiItemFlags_Disabled items (#211) + Examples comments 6 years ago
omar 53e0c13be2 TabBar: Reworked scrolling policy (when ImGuiTabBarFlags_FittingPolicyScroll is set) to teleport the view when aiming at a tab far away the visible section, and otherwise accelerate the scrolling speed to cap the scrolling time to 0.3 seconds. 6 years ago
omar 99d8425173 TabBar: Fixed Tab tooltip code making drag and drop tooltip disappear during the frame where the drag payload activate a tab. 6 years ago
omar 495065f790 Fixed Clang and PVS warnings. 6 years ago
omar f254168335 InputText: Fixed c779fbb leading to display of the wrong buffer when resizing a buffer. (#2400, #2006, #1443, #1008). 6 years ago
omar 65c2220049 Internal: Removed unused fields from ImGuiMenuColumns. 6 years ago
Haldean Brown 79bb4ce128 Added ImGuiColorEditFlagsFlags_InputHSV. (#2383, #2384) 6 years ago
omar 8e0e91827f ColorEdit: Fixed tooltip not honoring the ImGuiColorEditFlags_NoAlpha contract of never reading the 4th float in the array (value was read and discarded). (#2384) 6 years ago
omar e9651aaa77 TabBar: Fixed ImGuiTabItemFlags_SetSelected being ignored if the tab is not visible (with scrolling policy enabled) or if is currently appearing. 6 years ago
omar 1c23981782 Made ImS8 and ImS16 explicitly signed in case some crazy SDK decide to flip the signedness over. (#2408) 6 years ago
omar 8464df1f6e Internals: ColorEdit: Minor optimizations. Initialize internal arrays as static const, avoid unnecessary HSV->RGB conversion. 6 years ago
omar ea8158acdf Demo: Renamed ShowHelpMarker() -> HelpMarker(). Fixed minor PVS warning. Removed unnecessary casts. 6 years ago
omar c779fbb651 InputTextWithHint: Fix for Password fields. Update changelog, demo. (#2400) 6 years ago
Lucas Lazare ab80ee6453 Added InputTextWithHint() (#2400)
Squashed commit of the following:

commit 1970d84051d3878f8c1354d9c33c795d9c66143f
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Tue Mar 5 12:20:39 2019 -0500

    Removing sneaky tabulations #2 (why, editor T-T)

    I should update my settings, I guess

commit 219bdfcb7fbd17edf3048cb0edfde2532e4d6ac3
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Tue Mar 5 12:17:27 2019 -0500

    Removing useless check introduced in b0d172

commit 8afd7a2b459df0eb14eca88d832d2bebd1e684e6
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Tue Mar 5 11:49:24 2019 -0500

    Removing sneaky tabulations

commit 8e0490863126d63cafc782a6aac8707e44f95653
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Tue Mar 5 11:45:13 2019 -0500

    Moving InputTextHinted code to InputTextEx

commit b0d1723a2fb02d17ba15b9c1e679dedbbe3c17fd
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Tue Mar 5 00:23:02 2019 -0500

    C++11 to C++98

commit 9afeae399826015357962607b4aeb0109fde698e
Author: Lucas Lazare <lazarelucas@yahoo.fr>
Date:   Mon Mar 4 23:43:28 2019 -0500

    Added InputTextHinted
6 years ago
omar fe48368cb2 InputText: Moving some code in anticipation of supporting hint display with password. This commit is aimed at having no visible side effect. (#2400) 6 years ago
omar 344140004b Fixed IsItemDeactivated()/IsItemDeactivatedAfterEdit() from not correctly returning true when tabbing out of a focusable widget (Input/Slider/Drag) in most situations. (#2215, #1875)
+ Minor renaming of a local variable in widget code.
6 years ago
omar 26328fc9fe Internal: Tabbing/Focus: Tidying up old code, moved some state to context instead of window. Storing new data will allow us to fix the bug mentioned in #2215 (probably in next commit). 6 years ago
omar 076be7ec41 MenuItem, Selectable: Fixed disabled widget interfering with navigation (fix c2db7f63 in 1.67). 6 years ago
omar ce4e62649a Internal: Tabbing: Tweaks to FocusableItemRegister and using the standard mechanism to allow/block Tab being interpreting by tabbing instead of InputText() widget. 6 years ago
omar 1ed3c4cf4a Internal: Text: Extracted TextUnformatted into TextEx over which we can freely atter the signature. Clarified current large text behavior of TextUnformatted with explicit ImGuiTextFlags_NoWidthForLargeClippedText flag (always set). 6 years ago
omar 622a27506a Text: Fixed large Text/TextUnformatted call not declaring its size when starting below the lower point of the current clipping rectangle. Somehow this bug has been there since v1.0! It was hardly noticeable but would affect the scrolling range, which in turn would affect some scrolling request functions when called during the opening frame of a window. 6 years ago
omar 94e794f81b Renamed GetOverlayDrawList() to GetForegroundDrawList() for consistency. Kept redirection function (will obsolete). (#2391)
Demo: Using GetBackgroundDrawList() and GetForegroundDrawList() in "Custom Rendering" demo.
6 years ago
omar 1c67d09c0b ColorPicker: Fix assertion when running in a collapsed window and dragging its title bar (#2389) 6 years ago
omar f02705fbaa InputInt, InputScalar: +/- buttons now respects the natural type limits instead of overflowing or underflowing the value. 6 years ago
omar 736d3e2654 DragScalar, InputScalar, SliderScalar: Added support for u8/s8/u16/s16 data types. We are reusing function instances for larger types to reduce code size. (#643, #320, #708, #1011) 6 years ago
omar ac47710db7 Internal: InputText: Tweaks to make PVS static analyzer relax a little with its false positive. 6 years ago
omar 6de09a5e48 Renamed ColorEdit/ColorPicker's ImGuiColorEditFlags_RGB/_HSV/_HEX flags to respectively ImGuiColorEditFlags_DisplayRGB/_DisplayHSV/_DisplayHex. This is anticipation of adding new flags to ColorEdit/ColorPicker functions which would make those ambiguous. (#2384) [@haldean] 6 years ago
haldean 8a2f6866a6 add _Show prefix to color flags that control inputs, rename __InputsMask to __ShowMask
This is anticipation of changing __InputsMask to control the format of
input colors, and adding _InputRGB and _InputHSV to change how input
colors are interpreted.
6 years ago
omar def723b6b6 Plot: Fixed error in 5e3a1de (#2387) 6 years ago
omar 5e3a1de4e6 Plot: Fixed divide-by-zero in PlotLines() when passing a count of 1. (#2387) [@Lectem] 6 years ago
omar cf3cb7cf7e InputText: Fixed various display corruption related to swapping the underlying buffer while a input widget is active (both for writable and read-only paths). Often they would manifest when manipulating the scrollbar of a multi-line input text. 6 years ago
omar b7b82520b4 Internal: InputText: Minor changes (intended to have side-effect but clarify next commit, however there is rarely such a thing as zero side effect in InputText land!) 6 years ago
omar 439f726945 InputText; Disabled rendering selection when inactive (it kinda work but I'm not sure this is desirable especially for single-line input, was not intended to be active). 6 years ago
omar 6f80179a1d InputText: Fixed deactivated but-last-active InputText instance holding on displaying the last active version of the text and not reflecting change in the source. Fix/amend 2e9a175. [+test] 6 years ago
omar cd67d4d3c1 Log/Capture: Fixed LogXXX functions 'auto_open_depth' parameter being treated as an absolute tree depth instead of a relative one. Fixed CollapsingHeader trailing ascii representation being "#" instead of "##". Minor tidying up the of code. 6 years ago
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) 6 years ago
omar 0f83145aa8 TabBar: Fixed a crash when using BeginTabBar() recursively (didn't affect docking). (#2371)
Added ImPool::Contains() helper.
6 years ago
omar f988618ebe Internal: InputText: Tweaks (including a large indentation change, compare ignoring space) to make next commit more digestible. 6 years ago
omar be593f2c16 Internal: InputText: refactor the flow to easily decorrelate rendering of selection vs cursor, which would allow us to render selection on inactive items, and generally makes the code clearer. + Some renaming. 6 years ago
omar 332f8f2462 Internal: InputText: Made clipboard copy/cut use its own temporary buffer (like paste) so we can guarantee that TempBuffer if not altered and can be preserved. Renamed TempBufferA to TextA to celebrate this. 6 years ago
omar 81a8730022 Internal: InputText: Renamed is_editable to !is_readonly, Hopefully more explicit. Renamed internal member. Shuffled some code. Added comments, assert (_will_ trigger on !readonly > readonly edge, old bug). 6 years ago
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. 6 years ago
omar 2e9a175057 Internal: InputText: Refactor to clarify access pattern to the InputTextState (we are now accessing via a pointer which can be NULL, shortened its name while we are at it) + added an assert to track an issue that existed already before. 6 years ago
omar 677e64e71e Internal: InputText: Comments. Renamed internal member. Renamed ImGuiStb->ImStb. 6 years ago
omar 782b747a17 InputText: Renamed some local variables to clarify code. Should be a no-op functionality wise. TODO items. 6 years ago
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) 6 years ago
omar 257f5d204e Version 1.69 WIP 6 years ago
omar 93b06e6e7c Internal: Changed Scrollbar() signature. Using GetScrollbarID() in InputTextMultiline().
Removed multiple semi-colons (#2368)
6 years ago
omar 77833003ff Fixed unused argument warning when compiling with IM_ASERT() evaluating to an empty macro. 6 years ago
omar 3c15dffc94 Version 1.68 6 years ago
haldean b277cfffc8 Selectable: add support for specifying text alignment on selectables (#2347)
Adds a style variable to Selectable that allows clients to specify the
text alignment within Selectables, adds a section in the demo to
demonstrate selectable text alignment, and a pair of sliders in the
style editor to change selectable alignment on the fly.

In terms of implementation, this one is extremely simple: Selectable was
already calling an API that supports text alignment, but had hard-coded
it to top-left. This changes that to just pass the style variable
straight through to RenderTextClipped. Backwards-compatibility is
preserved by defaulting the text_align parameter to (0, 0), i.e.,
top-left.

This also fixes a bug with selectable text rendering that caused
right-aligned text in a selectable to be clipped incorrectly, because
the wrong clipping rectangle was being used.
6 years ago
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)
6 years ago
omar 0640b6e67c Shallow tweaks 6 years ago
omar 1b63ded8fa Tabs: Fixed border (when enabled) so it is aligned correctly mid-pixel and appears as bright as other borders. 6 years ago
omar 29d38b59d0 ListBox/InputTextMultiline: Better optimized when clipped / non-visible. 6 years ago
omar 62084aac0f DragScalarN, SliderScalarN, InputScalarN: Removed unnecessary string id after the integer PushID() calls. 6 years ago
omar f366828dd2 Minor tweaks to reduce false positive of PVS Studio static analyzer. 6 years ago
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) 6 years ago
omar 97ed97b8ce Plot: Register an ID to take the click the same way as other framed widgets. Set HoveredId in the FramePadding zone (between inner_bb and frame_bb). 6 years ago
omar cef4e086ba Internals: Selectable: Fixed rendering width miscalculation when starting pos is not line start pos, which would generally be unnoticeable. Could affect group lock X with a smaller SetCursorPos value but that's unlikely to be used. 6 years ago
omar 521470b3cd Internals: Removed unnecessary code. 6 years ago
omar b980e0077a Tabs: Moved Tab List Popup to left-side to match docking button. Highlight selected tab. (#261, #351) 6 years ago
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) 6 years ago
omar f7c879eb60 RadioButton: Fixed label horizontal alignment to precisely match Checkbox(). + Internals: Checkbox, RadioButton: Single call to ItemSize() for flow layout purpose. 6 years ago
omar 0b05ba18df Internals: DragScalar, SliderScalar: Calling ItemSize before ItemAdd as with every other widgets so we can more easily rearrange the signature of ItemXXX functions (toward allowing non-rounded sizes for scaling and flow layout). 6 years ago
omar d5945aa25b Internals: Minor changes to TreeNodeBehavior() and Selectable() for the benefit of fhe range_select branch. (#1861) 6 years ago
omar 0d4a2a2cd0 Internals: Track ActiveIdHasBeenPressed (similar to ActiveIdHasBeenEdited). This is currently mostly for the benefit of the range_select branch. (#1861) 6 years ago
omar 1fb57c97c6 Internals: InputScalarAsWidgetReplacement: Fixed seemingly unnecessary calling of SetActiveID/SetHoveredID every frame, which in turns allow us to remove the g.ActiveIdAllow/Block settings duplicated. 6 years ago
omar fb4f1ff7f6 InputText: Fixed a bug where ESCAPE would be first captured by the Keyboard Navigation code. (#2321, #787) 6 years ago
omar 158995f271 InputText: Fixed a bug where ESCAPE would not restore the initial value in all situations. (#2321) [@relick] 6 years ago
omar 0a233a505d imgui-test: Added extra item info callbacks. Using nav_bb for interactions when possible. Comments, Demo tweaks. 6 years ago
omar 4e8e177cac Persistently fixing some PVS-Studio static analyzer false positive warnings. 6 years ago
omar ee3b4f2bf1 Using IM_UNUSED() macro. 6 years ago
omar c3c2cd1e82 Fix various XCode and PVS-Studio static analyzer warnings (#2309) 6 years ago
omar f14f93ef6e Fixed range-version of PushID() and GetID() not honoring the ### operator to restart from the seed value. 6 years ago
omar 2c38b32db1 Removed trailing spaces (#2038, #2299) 6 years ago
omar f94ba546ba Added checks for "zero-as-null-pointer-constant" warnings for older Clang (#2299, followup to #2277) 6 years ago
omar 06aaf23877 Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!) 6 years ago
omar 95ee99e6aa Version 1.68 WIP 6 years ago
omar 7a5058e3bf Version 1.67 6 years ago
omar 1da40df279 DragFloat: Fixed broken mouse direction change with power!=1.0. (#2174, #2206) [@Joshhua5] 6 years ago
omar 6e41745f31 Added a bunch of diagnostic ignore to cope with Clang -Weverything being absurd. Also fixed two legit warnings. (#2277) 6 years ago
omar 1f6e0b2f98 ImVector: Made a struct. Using T/T* in the code instead of value_type/iterator. Renamed index_from_pointer() to index_from_ptr() (was not documented, added in 1.63, users not supposed to use ImVector, hopefully not a big deal). 6 years ago
omar 61a99f994e Minot internal tweaks, comments 6 years ago
omar b33977bc15 Tests: Reworking hook prototypes for imgui-test to be faster and multi-context friendly. 6 years ago
omar c2db7f63bd Selectable() should have an ID even though they are disabled, to be consistent with other widgets. Not sure of the reasoning ~1.41 which made this turn to 0. 6 years ago
omar 1ae7f88495 Tabs: Added ImGuiTabBarFlags_NoTooltip flag. (#261, #351) + added helpful assert 6 years ago
omar acfa4050ec Tweak changelog + tweak internal render helper functions. 6 years ago
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. 6 years ago
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) 6 years ago
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. 6 years ago
omar acacd93836 Renamed extra_flags to flags in InputXXX parameters. 6 years ago
omar c738f9ef92 InputFloat: When using ImGuiInputTextFlags_ReadOnly the step buttons are disabled. (#2257) 6 years ago
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. 6 years ago
omar 65dac02171 Internals: Popups: Renamed CurrentPopupStack to BeginPopupStack which is much less ambiguous. 6 years ago
omar f6f5c51106 Internals: Popups: EndMenu() calls ClosePopupToLevel(g.CurrentPopupStack.Size) which is more correct. 6 years ago
omar 587506dd57 Tests: Changed prototype of ImGuiTestEngineHook_ItemAdd to match functions called in same spot. Made ButtonBehavior submit fallback item info if ItemAdd() was not called (for resize grips, resize borders, scrollbar, columns, etc.) 6 years ago
omar 1b263f6ab0 Tabs: Fixed support for drag and drop ImGuiButtonFlags_PressedOnDragDropHold. (#261) incorrectly missing from the merge from Docking branch. 6 years ago
omar 5a6b8e00db BeginTabBar: Fix to push the expected ID into the ID stack (instead of a hash's hash). (#261) 6 years ago
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.
6 years ago
omar 15447f5b7b Using named flags instead of 0 + shallow formatting tweaks from other branches. 6 years ago
omar d20e3ee710 Tests: Adding imgui-test engine hooks (experimental) to provide missing widget state to the testing system. 6 years ago
omar 125e62491e Internals: Nav: Added ImGuiNavLayer_ to clarify semantic of previously integer NavLayer values, and not pretend that increment/decrement operators on them super flexible. + Storage tweaks. 6 years ago
omar 10e13dd6bb Version 1.67 WIP (again, this time IMGUI_VERSION_NUM has leeway for another hot-fix). 6 years ago
omar 801645d350 Version 1.66b (will revisit how to change IMGUI_VERSION_NUM across versions, this commit reduces the numerical IMGUI_VERSION_NUM compared to the commit on Nov 22). 6 years ago
omar 1bfcf8f339 Separator: Fixed Separator() outputting an extraneous empty line when captured into clipboard/text/file. 6 years ago
omar d27ffefbd4 Version 1.67 WIP 6 years ago
omar da3c4330c1 Version 1.66 6 years ago
omar 6c1ae6cc71 Internals: DragBehavior: Added support for ImGuiDragFlags_Vertical to implement a vertical drag widget (no frontend function provided). 6 years ago
omar 6d7677534f Internals: SliderBehavior: Using axis indexing. 6 years ago
omar eb592bf7d3 ListBox(): Fixed frame sizing when items_count==1 unnecessarily showing a scrollbar. (#2173). Tweaked frame sizing so list boxes will look more consistent when FramePadding is far from ItemSpacing. 6 years ago
omar 7fa3e71abb Internals: Moved the FocusableItemUnregister() outside of InputScalarAsWidgetReplacement(), it should not be here and doesn't facilitate reusing InputScalarAsWidgetReplacement(). (cc #2155) 6 years ago
Konstantin Podsvirov faecf90383 SliderAngle: Added optional `format` argument to allow users customize precision and make localization. (#2150) 6 years ago
omar 31fd6c585a Removed unnecessary ImGui:: qualifiers in internal code. 6 years ago
omar ca753829cb Revert using wchar_t functions (9cf94d5 + 2eaf5b0). Big mistake, wchar_t is not guaranteed to be 16-bits. 6 years ago
omar ede3a3b92d Fixes crash introduced in previous commit 9cf94d5. 6 years ago
omar 9cf94d5dd6 RenderText(), InputTextMultiline(): Optimization for large text by using memchr, wmemchr, wcschr when appropriate. 6 years ago
omar 0fe48cbb61 Renamed misc/stl/imgui_stl.h,.cpp to misc/cpp/imgui_stdlib.h in prevision for other files.(#2035, #2096)
Added misc/README file.
6 years ago
omar cf0afb48ac TextUnformatted: Using memchr(), fixed not properly testing for text_end bound + comments.
Internals: Added ImStreolRange() + used in LogRenderedText() + comments.
6 years ago
omar 3d318a6577 ArrowButton(): Fixed arrow shape being horizontally misaligned by (FramePadding.y-FramePadding.x) if they are different.
Demo: Added extra usage of AlignTextToFramePadding() in a more visible section.
6 years ago
omar c12da2a607 BeginMenu(): Fixed menu popup horizontal offset being off the item in the menu bar when WindowPadding=0.0f. 6 years ago
omar ca5dc0c019 ColorPicker: Replaced the Separator with a Spacing call. (#2068) 6 years ago
Elias Daler ec04e8bb05 Fix MSVC's C4312 warning about casting user texture type to void* in ImageButton (#2080) 6 years ago
omar 9cc63ba279 Internals: Replace unsigned short with ImWchar when dealing with character storage (missing cases) + in imgui_impl_ file keep using neutral type everywhere, added missing explicit cast in three bindings. (#2078) 6 years ago
omar d014d0285a DragFloat: Disabled using power curve when one edge is FLT_MAX (broken in 1.61). Disabled setting a default drag speed when one edge is FLT_MAX. (#2024) 6 years ago
omar af6cf25255 DragFloat: Fixed a situation where dragging with value rounding enabled or with a power curve erroneously wrapped the value to one of the min/max edge. (#2024, #708, #320, #2075). 6 years ago
omar e2436ca625 Nav, Focus: Fixed ImGuiWindowFlags_NoBringToFrontOnFocus windows not being restoring focus properly after the main menu bar or last focused window is deactivated. 6 years ago
omar eb7033e75b Version 1.66 WIP 6 years ago
omar e0cab5664a Version 1.65 6 years ago
omar 5a679a45cc Renamed stb_truetype.h to imstb_truetype.h, stb_textedit.h to imstb_textedit.h, and stb_rect_pack.h to imstb_rectpack.h. (#1718, #2036)
If you were conveniently using the imgui copy of those STB headers in your project, you will have to update your include paths.
The reason for this change is to avoid conflicts for projects that may also be importing their own copy of the STB libraries. Note that imgui's copy of stb_textedit.h is modified.
6 years ago
omar e58bc3d5b7 Refactor: Tweaked and improved the sectioning to facilitate grepping/moving around and applied to all files. (#2036) 6 years ago
omar bb3184af74 Refactor: moved low-layout helpers to imgui_widgets.cpp (Spacing, Dummy, NewLine, Separator, etc.) (#2036) 6 years ago
omar 77ba883f23 Renamed io.OptCursorBlink/io.ConfigCursorBlink to io.ConfigInputTextCursorBlink. (#1427) + changed ImGuiIO layout. 6 years ago
omar b944aa623c Minor mostly inconsequential merges from Viewport + LoadIniSettingsFromMemory() entirely skip lines starting with ';' 6 years ago
omar d07f494305 Internals: Exposed SliderBehaviorT, DragBehaviorT, RoundScalarWithFormatT, SliderCalcRatioFromValueT. (#2036)
Renamed RoundScalarWithFormat -> RoundScalarWithFormatT.
Renamed SliderBehaviorCalcRatioFromValue -> SliderCalcRatioFromValueT
6 years ago
omar bcb1441ce7 Version 1.65 WIP 6 years ago
omar 767649afb1 Fix missing include on some systems to use intptr_t. (#2036, #2054) 6 years ago
omar 48db5713d6 Version 1.64 6 years ago
omar 38cfcf9fbc Tweak comments and indexes 6 years ago
omar df37a156e8 Refactor: Moved Scrollbar function from imgui.cpp to imgui_widgets.cpp, added file index (#2036) 6 years ago
omar 2714f8fa23 Refactor: Moved Slider/Drag/Input functions + support DataType stuff from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar c25f48b902 Refactor: Moved InputText functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar ad0bfdcd95 Refactor: Moved ColorEdit/ColorPicker/ColorButton/etc. functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar 5dc954f5d7 Refactor: Moved Tree/Selectable functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar a265c62636 Refactor: Moved Plot/Value functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar 0e9577d0da Refactor: Moved Menu functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar f26b8c1e07 Refactor: Moved Combo/ListBox functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar 6468a3c0ce Refactor: Moved Button/Image/Checkbox/RadioButton/Bullet/ProgressBar functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar 3eaa063984 Refactor: Moved Text functions from imgui.cpp to imgui_widgets.cpp (#2036) 6 years ago
omar 52c115fb2c Refactor: Added imgui_widgets.cpp headers to easily merge in the functions in all our branches. (#2036) 6 years ago
omar 01586d33f3 Refactor: Added empty imgui_widgets.cpp + updated project files / makefiles etc. accordingly (#2036) 6 years ago