2244 Commits (74dc70c543107c14ddd9e635908958c90524abef)

Author SHA1 Message Date
omar b016215c80 Columns: Refactor: Not using statestorage lookup anymore. (#125, #1499) 7 years ago
omar 3a31a75e3b Columns: Refactor: Renamed all members. (#125, #1499) 7 years ago
omar 78320aa633 Columns: Refactor: Moved columns data into their own data structure. Minimum changes now to ease diffing. (#125, #1499) 7 years ago
omar 027ffd91ea IsWindowFocused(): oops, that was bound to happen with loosely typed enums (this is sort of why I made both values identical - no direct side effects). 7 years ago
omar 8b59ed0708 Drag and Drop: Exposed some internals. 7 years ago
omar 7c7a7baf76 Merged miscellaneous small stuff (from nav/dock branches). 7 years ago
omar b174fcc9af Added IsAnyWindowFocused() (from Nav branch). 7 years ago
omar d0a1be0de0 Merge branch 'drag_and_drop' 7 years ago
omar ab049c6fc0 Drag and Drop: Fix merge for IMGUI_DISABLE_OBSOLETE_FUNCTIONS 7 years ago
omar 7faa5b16bb Tweak 7 years ago
omar 02e0a078f4 Begin: Tidying up code to make it more readable. 7 years ago
omar 28bbf1ade6 Fixed ParentWindow setup which broke Modal windows (fix c65124f415) 7 years ago
omar d561a43a4d Drag and Drop: Drop target infer a fallback ID from the rectangle. Avoid Preview being accepted on drop frame when drop target has no ID. (#143) 7 years ago
omar e98df91dc4 Drag and Drop: Added ImGuiCol_DragDropTarget (#143, #707) 7 years ago
omar 7ec934f439 Drag and Drop: Comments 7 years ago
omar 052b6021dd Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
#	imgui_internal.h
7 years ago
omar 6190ab0084 Renamed GetItemsLineHeightWithSpacing() to GetFrameHeightWithSpacing() 7 years ago
omar c22657985a Added GetFrameHeight() function (used to be SmallSquareSize internally) 7 years ago
omar ee7f1921e8 Internals: Added GetSmallSquareSize() 7 years ago
omar 08b72eb5c0 IsWindowFocused() refactor will flags. (#1382)
Marked IsRootWindowFocused() as obsolete in favor of using IsWindowFocused(ImGuiFocusedFlags_RootWindow).
Marked IsRootWindowOrAnyChildFocused() as obsolete in favor of using IsWindowFocused(ImGuiFocusedFlags_RootAndChildWindows).
7 years ago
omar c65124f415 Internals: ParentWindow is now NULL for non-child windows and means what everyone expects. 7 years ago
omar f42d7b89e2 Internals: Removed misleading GetWindowParent() function. + renaming to clear confusing. 7 years ago
omar 4a555d35f0 IsWindowHovered(): split ImGuiHoveredFlags_FlattenChild into separate ChildWindows and RootWindow flags. Allowing more combination and a better symetry with IsWindowFocused() flags. (#1382) 7 years ago
omar f93945540f Renamed ImGuiTreeNodeFlags_AllowOverlapMode to ImGuiTreeNodeFlags_AllowItemOverlap. (#600, #1330) 7 years ago
omar 45f440bb7d Internals: Renamed ImGuiButtonFlags_FlattenChilds -> ImGuiButtonFlags_FlattenChildren, ImGuiButtonFlags_AllowOverlapMode -> ImGuiButtonFlags_AllowItemOverlap 7 years ago
omar 2b9d8ab91d Merge branch 'master' into drag_and_drop
# Conflicts:
#	imgui.cpp
#	imgui.h
7 years ago
omar 9fd15defe4 Added an implementation of SetItemDefaultFocus() in the master branch for combo patterns to use and be more forward-compatible. (#787) 7 years ago
omar e3e0326ea9 Exposed BeginCombo() publicly. 7 years ago
omar eab6333a0b SetNextWindowContentSize() adjust for client->window size, but the fate of borders isn't really clear for now (until now we always tried to make borders not affect layout, so if we want a 200x200 fully visible space with borders and zero window padding user need to include the borders) (#1490) 7 years ago
omar 7ac1583411 Scrollbar: Minor simplication of the code using InnerRect data. 7 years ago
omar a9b01600ac Internals: window->InnerRect includes removal of borders so it'll be easier to use from other locations. 7 years ago
omar b75acc21b0 Fix for border under title bar when WindowBorderSize == 0 and FrameBorderSize > 0 7 years ago
omar f72b002da8 Removed SetNextWindowContentWidth(), prefer using SetNextWindowContentSize(). Kept redirection function (will obsolete). (#246, #519, #1444) 7 years ago
Branimir Karadžić e23083a080 Fixed warning: logical ‘and’ of equal expressions 7 years ago
omar 0365c524a2 ColorPicker4: Fixed returning true when holding mouse button on the sat/value/alpha locations. (#1489) 7 years ago
omar a8c7b1a2a2 ColorEdit4: Made IsItemActive() return true when picker popup is active. (#1489) 7 years ago
omar c9f0275e22 Combo: Removed ImGuiWindowFlags_ComboBox flag. Moved internal window flags. 7 years ago
omar 457011660e Mouse wheel scrolling doesn't change speed inside Combo box (uses to slow down from 5 to 3) but instead slow down on window that are smaller than the scroll speed. 7 years ago
omar a263dce2f2 Combo: Cleanup. Removed unrequired uses of the _ComboBox flag (the test in EndChild() is from commit no 1!). We could remove ImGuiWindowFlags_ComboBox soonish. 7 years ago
omar 7ac5f11b29 Standardizing the casing/format of internal window names + Misc comments. 7 years ago
omar befc58771c Combo: Recycling windows by using a stack number instead of a unique id, wasitng less windows. 7 years ago
omar e998c7d3e3 Combo: Moved functions (untouched). 7 years ago
omar a5e9392140 Combo: Added flags to BeginCombo() new api, removed explicit height, default to 8 instead of 7 items, allow popup height constraints via SetNextWindowSizeConstraints(), width expand if contents doesn't fit, popup reposition policy if it doesn't fit. 7 years ago
omar d9d231dc6b Internals: Renamed CalcSizeFullWithConstraint() to CalcSizeAfterConstraint() which is more appropriate + added explicit parameter to CalcSizeAutoFit() so it can be used externally. 7 years ago
omar 74f42baf3e Fixed scrollbar issue, source size when explicit was read before applying custom size constraints (followup to cc2c023880 etc.) 7 years ago
omar 541dfd7901 Combo: Comments + fixed missing lower window padding. 7 years ago
omar 9872297a84 Internals: Renamed FindBestPopupWindowPos() to FindBestWindowPosForPopup() 7 years ago
omar 7bf85db6c4 Drag and drop: Added COL3F payload for color without alpha overwrite. Exposed standard color payload types in imgui.h (#143) 7 years ago
omar e118239f69 IsItemHovered() comments (#1382) 7 years ago
omar ca0bb000ad Begin: Factored out a bit of code to CalcSizeContents() 7 years ago
omar f658edc72a Begin: Remove unnecessary usage of window_is_new flag, as both fields are zero on window creation. 7 years ago
omar 45466a8cf9 Internals: BeginCombo() added dummy ImGuiComboFlags. 7 years ago
omar 97edd42fc0 Indent(), Unindent(): Allow passing negative values. 7 years ago
omar 7f2b9ea4c0 Begin: Minor refactor following fcf652f8ee7267055e331bf7a0133ed477816f27. Merging the if (Collapsed) block with the main one. 7 years ago
omar 8dcc1a8a20 Begin: Sizing fixes regarding uses SetNextWindowSize() on individual axises. 7 years ago
omar e045eddd77 Minor tweaks. Using ImGuiAxis defines. 7 years ago
omar 92f7bd3605 Fixed 64-bit warnings. 7 years ago
omar cc2c023880 Fixed scrollbar issue, followup to beda5fc5a0 and 2df8fa95df. 7 years ago
omar 3c9f9a455e Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended. FIXED TYPO. 7 years ago
omar 8959c64b33 Internals: Cleanup FindBestPopupWindowPos() to be more digestible, since we are bounds to rework the logic there. No functional changes intended 7 years ago
omar 20c7aab60c Exposed GetOverlayDrawList(). (~#545, ~#530) 7 years ago
omar 8f41508c52 Begin: Move the code that update the Appearing flag above the BeginDocked() branch. 7 years ago
omar beda5fc5a0 Fixed scrollbar enable/disable calculation when size is modified programmatically. This is the generalization of the fix in 2df8fa95df. 7 years ago
omar ecacaf7f2d Lower-right resize grip only appears when hovered. (#822) 7 years ago
omar 3b7e4eaf38 Comments about ImGuiWindowFlags_ResizeFromAnySide. Removed hovering color. May need its own color. (#822) 7 years ago
omar 531e559e49 Windows can be resized from their borders when ImGuiWindowFlags_ResizeFromAnySide is set. (#822) The interaction is currently unsatisfying because we can only reach a window from its inner rectangle (because of HoveredWindow filtering). 7 years ago
omar e103fe8c1f Tweak four-corners resize grip code. Added ImRect::FixInverted() helper. (#822) 7 years ago
omar 90ae1c59c4 Added ImGuiWindowFlags_ResizeFromAnySide flag and code to resize from any of the 4 corners (only 2 corners enabled). (#822) 7 years ago
omar 77d1a4b636 Fixed a one frame glitch, when window claiming focus themselves on appear, the title bar wouldn't use the focused color on that frame. 7 years ago
omar 16d9fa30b2 Merge branch 'master' into drag_and_drop 7 years ago
omar 5f7cd7fb1c Internals: Splitter Behavior doesn't show a border. (#319) 7 years ago
omar be6384eb2a Style: Tweaked default WindowRounding value from 9 to 7 (#707) 7 years ago
omar 6ea744d8f4 Drag and Drop: Added DragSource from color square. Added DragTarget on ColorEdit4 widget. (#143) 7 years ago
omar b513fdce48 Scrolling: SetScrollFromPosY() tweak to match change in a0d53fee81084a547bf21f46e736ea89f79fffb5 with similar desirable jump/discontinuity at each limit to skip the (ItemSpacing>WindowPadding) difference (followup to 0e5b64ecd2, #150) 7 years ago
omar c36e586cce Style, Scrolling: Fixed padding and scrolling asymetry where lower/right sides of a window wouldn't use WindowPadding properly + causing minor scrolling glitches. 7 years ago
omar 25c159fac8 Internals: Removed unnecessary duplicate scrolling code + added extra infos to Metrics window. 7 years ago
omar 52e475230f Settings: Internals: Renaming. 7 years ago
omar 2e1013a0c6 Settings: Internals: Simplifying code a bit. Creating Settings structure during first save. Windows where ImGuiWindowFlags_NoSavedSettings was late toggled will save settings correctly. (#1000) 7 years ago
omar 7ae71e4984 Settings: Internals: Added FindSettingsHandler() 7 years ago
omar 35eb5c5c99 Settings: Internals: Exposed FindWindowSettings(). Simplified some code. 7 years ago
omar 963259d128 Settings: Internals: Renamed ImGuiSettingsWindow to ImGuiWindowSettings. 7 years ago
omar 63712d5f5c Merge branch 'master' into drag_and_drop 7 years ago
omar 4a43632163 Build fix 7 years ago
omar 1a8a7c9d17 Settings: Import old style .ini file 7 years ago
omar e5ebe42207 Settings: Make ImGuiWindow settings always first in the list. 7 years ago
omar f3ec608c19 Settings: Initializing ImGuiSettingsWindow so external users don't end up with uncleared data. Exposed MarkIniSettingsDirty() in imgui_internal.h 7 years ago
omar 7e2d0d734c Settings: basic refactor so that additional data structures can be loaded/saved. Parser/saver is still the minimum viable poor-man parsing. 7 years ago
omar d552cabd15 Settings: Internal renaming of structure and fields names. 7 years ago
omar ade09b9e3c Settings: Basic internal refactor to have functions for saving from/to memory (not exposed) 7 years ago
omar 532f564fd3 ImGuiTextBuffer: Renamed append() helper to appendf(), appendv() to appendfv(). Added reserve(). 7 years ago
omar d9c5d72962 ImGuiStorage: Added BuildSortByKey() helper to rebuild storage from stratch. 7 years ago
omar 6bd3b45b34 Sisyphus says: tweaked comments about not using old-style OpenGL examples (#1459, #1394 etc.) 7 years ago
omar 7763ab3fcc Menu bar: better software clipping to handle small windows, in particular child window don't have the minimum constraint added in e9a7e73bba so we need to render clipped menus better. 7 years ago
omar aafa6cece5 Tweak expression to be less weird (how did that ever happen?) 7 years ago
Giuseppe Barbieri 21b456e567
Update imgui.cpp 7 years ago
omar 176d8fbe74 Fixed unreferenced variable warnings. 7 years ago
omar 302757447a Internals: Added SplitterBehavior(). (#319) 7 years ago
omar 195abc3d17 Begin: Fix border size latch when rounding uses Child or Popup value. (#707) 7 years ago
omar 3f5b2a3fe3 Exposed ImDrawCornerFlags, replaced occurences of ~0 with an explicit ImDrawCornerFlags_All. Inversed BotLeft (prev 1<<3, now 1<<2) and BotRight (prev 1<<2, now 1<<3). 7 years ago
omar 7f447c8270 Color picker: Tweak vertex shading code, since we aren't shading between PrimReserve and PrimVert the code can be expressed more naturally. (#346) 7 years ago
omar dc2768503f Fix for drag and drop branch. 7 years ago
omar 92212b17aa Merge branch 'master' into drag_and_drop 7 years ago
omar abbf836fd0 Style, Begin: removed ImGuiWindowFlags_ShowBorders window flag. Borders are now fully set up in the ImGuiStyle structure (see e.g. style.FrameBorderSize, style.WindowBorderSize). Use ImGui::ShowStyleEditor() to look them up. (#707, fix #819, #1031, ref #1019, ref #447) 7 years ago
omar c433bc971f Reorder fields for consistency. 7 years ago
omar 39137ccc3e Style: renamed ImGuiCol_ChildWindowBg to ImGuiCol_ChildBg. (#707) 7 years ago
omar 9a44d447cd NewFrame() now asserts if neither Render or EndFrame have been called. Exposed EndFrame(). Made it legal to call EndFrame() more than one. (#1423 etc.) 7 years ago
omar 538a704143 NewFrame(): using literal strings in the most-frequently firing IM_ASSERT expression to increase the odd of programmers seeing them (especially those who don't use a debugger). 7 years ago
omar 4022ada843 Merge branch 'master' into drag_and_drop 7 years ago
omar 8a7f03cbf9 Combo: Offset popup position by border size so that a double border isn't so visible. (#707) 7 years ago
omar d7af1a218e Style: Added PopupRounding setting. (#1112) 7 years ago
omar 067605052d Fix IsItemHovered() returning true for non-title bar hidden items that are clipped due to window collapsing logic. Fix 27fd1b913b. (#823) 7 years ago
omar 6f7b1bf2e1 Internals: Renamed ImGuiWindow::Accessed to WriteAccessed. 7 years ago
omar 58345b11e1 Style: Removed ImGuiCol_ComboBg in favor of combo boxes using ImGuiCol_PopupBg for consistency. (#707) 7 years ago
omar 29e0078b66 Internals: Window minor internal renaming + added WindowRounding latch. 7 years ago
omar bd4bc929ce Style: renamed style.ChildWindowRounding to style.ChildRounding, ImGuiStyleVar_ChildWindowRounding to ImGuiStyleVar_ChildRounding. 7 years ago
omar da2be7bbdc Style: ScaleAllSizes() helper rounds down every values so they are aligned on integers. 7 years ago
omar 834fa52c8e Columns: Added ImGuiColumnsFlags_GrowParentContentsSize to internal API to restore old content sizes behavior. (#1444, #125) 7 years ago
omar 7746dd104c Merge branch 'master' into drag_and_drop 7 years ago
omar 29d962069d Internals: Updating condition/allow flags with a function. 7 years ago
omar 4ad414c8d4 Internals: Window: Store whether the windows has a close button (we need that info for window/tabs dropping preview calculation) 7 years ago
omar 7c4be0a000 Internals: Added BringWindowToFront(), BringWindowToBack() helpers. 7 years ago
omar e9a7e73bba Windows with MenuBar have a larger minimum height to avoid artefacts (I fixed most of the vertical/horizontal artefacts, but the ones in rounded corners were too hard to fix). 7 years ago
omar f36037b384 Menu: Fixed minor rendering issues on the right size with rounded window when resizing a window small. 7 years ago
omar 9b82d9fbef Scrollbar: Minor graphical fix for when scrollbar don't have enough visible space to display the full grab. 7 years ago
omar f5bdf443c9 Minor comments, tweaks 7 years ago
omar 5ea6e80da1 Make it possible to use SetNextWindowPos() on a child window. Useful internally. 7 years ago
omar 44b761b308 Merge branch 'master' into drag_and_drop 7 years ago
omar 27fd1b913b Made it guaranteed by API that after calling Begin() the last Item represent the title bar. (#823) 7 years ago
omar ae060b1d67 Merge branch 'master' into drag_and_drop 7 years ago
omar 64e79035d5 Scrollbar flicker fix for menus/popups (fixes 4d00dd8326 and 2df8fa95df). Hopefully right this time. 7 years ago
omar 6001d9c7a4 Columns: Clipping columns borders on Y axis on CPU because some GPU drivers appears to be unhappy with triangle spanning large regions (not sure why tbh). (#125)
Demo: Columns: Adding a billion of extra lines and using clipper.
7 years ago
omar ffad688fc8 Drag and Drop: Added payload->IsPreview() to user can render their custom preview while handling overlapping drop targets. (#143) 7 years ago
omar 852ece3a0e Fixed build (3e06450d27 not meant for master branch, but ok) 7 years ago
omar 3e06450d27 Internals: Added ArrowButton() helper. 7 years ago
omar 7908cce25f Drag and Drop: Added internal BeginDragDropTargetCustom() convenient to avoid submitting dummy ItemAdd. (#143) 7 years ago
omar 4d00dd8326 Fixed scrollbar flickering on/off when uncollapsing a window (fixes 2df8fa95df) 7 years ago
omar 30bf40195b io.OptNoCursorBlink -> io.OptCursorBlink (#1427) 7 years ago
omar 669498ff26 Added io.OptNoCursorBlink option to disable cursor blinking. (#1427). Renamed io.OSXBehaviors to io.OptMacOSXBehaviors. Should affect users as the compile-time default is usually enough. (#473, #650) 7 years ago
Branimir Karadžić 9daac64ff8 Clean g.WindowsById storage on shutdown. 7 years ago
omar ba09de3a39 Begin: Fixed appending into a child window with a second Begin() from a different window stack querying the wrong window for the window->Collapsed test. 7 years ago
omar 8451855a30 ButtonBehavior: Fixed ImGuiButtonFlags_AllowOverlapMode to avoid temporarily activating widgets on click before they have been correctly double-hovered. (#319, #600) 7 years ago
omar 4b94738c7e Drag and Drop: Drop target rectangle goes out of clipping range (#143) 7 years ago
omar b1653cd361 Drag and Drop: Allow NULL payload (since type only can be useful). (#143) 7 years ago
omar 2df8fa95df Fixed vertical scrollbar flickering/appearing, typically when manually resizing and using a pattern of filling available height (e.g. full sized BeginChild). THIS IS A GREAT FIX, this glitch was nasty and annoying (and yet somehow nobody reported it?). Hopefully haven't broken anything else... 7 years ago
omar a4cc3d4637 Minor tweaks/comments. Note that the reordering the one subtraction caused subtle havoc before the patch in 9ac8820ee2. 7 years ago
omar 9ac8820ee2 Fixed non-pixel aligned bounding box of window resize grip, / which triumphally led to any re-arrangement of operations inside the resize grip code outputting non-exact size_target values which led to unstable window position because clamping code uses size in a subtraction, etc etc. Lovely how a whole system can be made to act weird with a single bad input. 7 years ago
omar b6504b8eee Drag and drop: Handle overlapping drag target priorities given their surface, which appears to make most sense for drag and drop operations. 7 years ago
omar 2ab27be3de Child window with MenuBar use regular WindowPadding.y so layout look consistent in child or in a regular window. 7 years ago
omar 41862b8c0e ButtonBehavior: Fixed ImGuiButtonFlags_NoHoldingActiveID from incorrectly setting ActiveIdClickOffset, which probably have no known effect, but it is more correct this way. (#1418) 7 years ago
omar 1870738880 LowerBound() minor tweaks 7 years ago