Commit Graph

2266 Commits (3cdd2096ec3998aef478a66feb1bb700de69b0d4)

Author SHA1 Message Date
omar 9f200d10d5 Version 1.52
omar 267ea506de Begin: Fix for unused "Debug" (fix for 3b83cd24f5 )
omar 3b83cd24f5 Begin: Moved some code inside of the big if (first_begin_of_the_frame) scope
omar 3656f2c769 NewFrame: Allow MovedWindow setting the ImGuiWindowFlags_NoInputs after moving has started in order to be able to detect windows below it, which is useful for e.g. docking mechanisms.
omar a6edd10ee6 NewFrame: Removed unnecessary call to FindHoveredWindow() and simplified code (went through this multiple times, hopefully haven't broken anything)
omar 6243252d5a Internal: BeginTooltipEx() in imgui_internal.h
omar d42f6bb6cc Merged a bit of code from Navigation branch to ease further merging (InnerRect is currently not required in the Master branch)
omar c432fcf2bb Minor renaming.
omar daef33e268 Comments about mouse setup and clearing HoveredWindow when mouse down isn't owned by imgui (will affect some future hovered test and drag'n drop patterns) (, , )
omar 4faf99eff5 Added most basic form of Disabled flag to disable interactions (but visuals aren't altered), in imgui_internals.h, undocumented/unsupported (, )
omar efcd53a0c3 Removed direct dependency on sprintf() in imgui.cpp ()
(NB: imgui_demo stills uses it)
omar 1f3372b7f1 ImFormatString, ImFormatStringV(): clarifying specs so that passing a NULL buffer should return the desired length. ()
omar 8fd5620277 Renamed IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCS to IMGUI_DISABLE_WIN32_DEFAULT_CLIPBOARD_FUNCTIONS/IMGUI_DISABLE_WIN32_DEFAULT_IME_FUNCTIONS for consistency. (ref , , )
omar 7d2cd0e6ff Added IMGUI_DISABLE_FORMAT_STRING_FUNCTIONS support in imconfig.h ()
Patrick Doane 70cb427469 Add missing CloseClipboard call
omar 5b062c4c29 Fixed typos
omar 0260fdd1c6 ColorButton: As a small convenience, provide a text baseline.
omar e9ff7162bc ColorButton: Fixed rendering color button with a checkerboard if the transparency comes from the global style.Alpha and not from the actual source color.
omar 97bf2131e2 Fixed calling SetNextTreeNodeOpen() on a collapsed window leaking to next frame.
omar e7922b3fa0 Factorized some code (+ declared as static function without namespace, a pattern with the Nav branch has started to use)
omar 1bc1751670 MenuItem(): Tweaks to mimic exact spacing of BeginMenu() when inside a menu bar, which is a little misleading imho but may be useful. ()
omar b177f2432d MenuItem(): Tweak to not draw over all horizontal space when in horizontal layout mode. ()
omar f7259e60ee Comments
omar 6ab737a4bb Popups: Fixed right-click to close popups not handling modal windows properly. (~#439)
omar aca23fd3f0 Popups: similarly to previous commit, we fix reopening a popup within a popup stack from truncating the whole stack. This is done by properly refocusing the lower level popup. (~#439)
omar 59a89774d7 Popups: fixed CloseInactivePopups() so that right-clicking to close one level of popups in a popups stack won't close the whole stack. This is done by properly refocusing the lower level popup. Fixes 87ae40843c (~#439)
omar 43df7eb5ea Added OpenPopupOnItemClick(); helper which mimic BeginPopupContextItem() but doesn't do the open.
Made the color popups uses this standard function so they handle reopening a context menu.
omar 3cc10d25a9 BeginPopupContextItem(), BeginPopupContextWindow(): Using newly introduced IsItemHovered() flags to allow reopening another context menu (over same or not same item) with right-click. () (+1 squashed commits)
omar 695ea45fca IsWindowHovered(): Changed default behavior to now return false is a widget from another window is active + Added support for ImGuiHoveredFlags_AllowWhenBlockedByActiveItem. (relate to drag'n drop idoms: )
omar 564ff2dfd3 IsItemHovered(), IsWindowHovered(): added flags to enable various and more specific behavior. Will enable improvements for popups/context menus and drag'n drop. (relate ~#439, , , )
The legacy confusing IsItemRectHovered(), IsWindowRectHovered() can be completely removed now.
Changed IsWindowHovered() behavior with default parameter: it now return false is the window is blocked by a popup.
Demo: Added tests for those two functions.
omar d29a6a5a5a Moved IMGUI_DISABLE_OBSOLETE_FUNCTIONS block lower in the imgui.h file so obsolete functions can use flags. Also sane to quarantine them outside of the respectable area.
omar e6f06627e9 Made the ImGuiWindowFlags_NoMove flag inherited from parent to child, so in a setup with RootWindow (no flag) -> Child (NoMove flag) -> SubChild (no flag) user won't be able to move the root window by clicking on SubChild. ()
omar 3b485cda51 Fixed a bug allowing to move a _NoMove window from a child that doesn't have the flag. ()
broken by e56eba44fe ()
omar 87ae40843c Popups: popups can be closed with a right-click anywhere, without altering focus under the popup.(~#439)
omar 853018dd4d Popups: Fixed a bug introduced in 1a35766356 which made the BeginPopupContextXXX functions create popups without border. (nb: all that border mess is going away in styling clean up)
omar 5f7299e15a Refactor EndFrame() code that process focusing window with left mouse button. This commit should be no-op.
omar 5b699517d4 Internals: PaintVerts** renamed to ShadeVerts**, moved to imgui_draw.cpp and exposed in imgui_internal.h (+1 squashed commits)
omar 22977ffedb Documentation: Extra comments + tweaks to make usage of long-line more bearable.
omar 370a48c10b Internals: RenderCollapseTriangle() -> RenderTriangle(), takes a ImGuiDir
omar a03093b2d4 CollapsingHeader(bool*) variant: fixed for IsItemHovered() to work properly in the nav branch.Basically the close button now has to use ItemAdd() to be navable into, which overwrite the IsItemHovered data. (, )
omar ef3f87eec5 Internals: ButtonBehavior: made ImGuiButtonFlags_PressedOnClick and ImGuiButtonFlags_PressedOnDoubleClick set the click offset correctly + hold on g.ActiveId so Held state can be reported. Added ImGuiButtonFlags_NoHoldingActiveId flag to disable the later.
omar bf778ebb7e Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker.
omar 03b76bf05b Begin: Marked 5 parameters version of Begin() as obsolete. Now waiting for a riot to happen!
omar 78a85ba3fe Begin: Work toward obsoleting the 5-arguments Begin() overload. Internal BeginEx() becomes the normal public Begin() again! (4)
omar 2739b6ebcd Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed bg_alpha from internal BeginEx(). (3)
omar 4aa9d2089d Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed size_on_first_use from internal BeginEx(). (2)
omar 55d873875e Begin: Work toward obsoleting the 5-arguments Begin() overload. (1)
omar 1a35766356 BeginPopupContextItem() now supports a NULL string identifier and uses the last item ID if available. For interactive items (that have an ID) this works! For non interactive items we assert.
omar c76f014292 Fix IsItemHovered() issue on child by temporarily reverting 344d48be31. This is not the ideal solution. (Fix )
omar ce7b04e8b9 Removed apparently unncessary code in InputFloatN() and InputInt().
omar 4be967823f Exposed Scrollbar() in imgui_internal.h and removed a bool arg
omar 43b4a81b3e Rnamed AlignFirstTextHeightToWidgets() to AlignTextToFramePadding(). Kept inline redirection function (will obsolete).
omar c6e370a77a TreeNode: Added ImGuiTreeNodeFlags_FramePadding flag
omar 042153d254 Internal: ItemAdd(), IsClippedEx(): removed unnecessary indirection for ID parameter
omar acb6f12d2c Removed extraneous calls to GetCurrentWindowRead() when we already have a ImGuiContext. Internal RenderXXX functions also don't need to write into the Accessed field at all.
omar d851775c80 ColorButton: Reduced bordering artefact that would be particularly visible with opaque Col_FrameBg and FrameRounding enabled.
omar 726dcf0dd2 TextUnformatted(): minor tweak
omar a0d724b450 Made AlignFirstTextHeightToWidgets() saner and faster (still disliking its name very much!)
omar a8788e51a7 SetKeyboardFocusHere() added assert to prevent passing values smaller than -1 as we may have to outlaw them (I think nobody was using that)
omar 63cd2bf9b1 Removed obsolete comment.
omar 67ac7da30f Styles: Added ImGuiStyle::ScaleAllSizes(float) helper to make it easier to have application transition to e.g. High DPI with a matching style.
matiTechno b36a043bbf typo
omar 7f58bb03c1 Changed the internal name formatting of child windows to use slashes as separator, more readable.
omar cbc9730798 Metrics: Draw window bounding boxes when hovering Pos/Size. List all draw layers, trimming empty commands like Render() does.
omar 9912f7eef8 BeginMenu(): fixed logic to distinguish vertical menu from one layed out in a menu bar. Makes MenuItem() in a regular window behave more consistently, and this will be also needed by upcoming menu-navigation changes in the nav branch. (, )
omar fba9353c60 BeginMenu: Shuffling braces around to clarify flow
omar e8f7c83138 Begin: Shallow tweak to minimize diff with nav branch
omar 926c1cf9a4 Merged from Navigation branch: ImGuiItemFlags_SelectableDontClosePopup flag
omar f99348711b Added VerticalSeparator() entry point in imgui_internal. Seperator() in an horizontal layout context still does that.
omar 9142002121 Separator(): Tweak Logging so that the separator text is aligned according to tree padding.
omar 0106dcbd02 Fixed IsItemHovered() - part of the processing has to be done in ItemAdd() because the widget may alter clipping rectangle temporarily.
omar fafe65a8fc Refactor to move the responsability of SetHovered() to ItemHoverable() - previously IsHovered(). Simpler and the parallel to ItemAdd is clearer with the new name.
omar 2159629e9e Removed another msileading difference between the hovered functions (IsWindowContentHoverable() uses the root window already). Sorry for the commit spam! (making small commit to easily be able to Bisect those in case I make a mistake)
omar eca74d55c7 IsItemHovered(), IsHovered(): Shallow tweaks, eventually removed all the braces.
omar 2b7d4c713e Internals: Moved IsWindowContentHoverable() in the file
omar c5a79deb38 IsItemHovered(), IsHovered(): Shallow tweaks to make them more symetrical. Removed one set of braces.
omar 7bcb1d3816 Internals: ButtonBehavior(), IsHovered() moved the responsability of flatten_child higher level to ButtonBehavior() - not super sure about the elegance of this
omar 0adcddac39 IsItemHovered(), ItemAdd(): finishing cleaning up, moved the code to IsItemHovered() so ItemAdd() is more lightweight and the two IsXXXHovered functions are now very similar, making their differences less confusing.
omar 19e22baa06 ItemAdd(): more re-ordering of tests to match IsHovered() + comments
omar 344d48be31 IsItemHovered(), ItemAdd(): Fixed seemingly unnecessary comparaison of root windows, makes IsItemHovered() more consistent with internal IsHovered().
Original test was added in 6e99688fa7 should not have been using RootWindow in the first place.
The difference between public-facing and internal versions would only be noticeable with overlapped child windows, which doesn't really happen anyway
omar c075786d8b ItemAdd(): re-ordering the tests, submission should now be faster.
omar 99c7622a1b ItemAdd(), not performing computation for IsItemRectHovered() which does them itself, allowing us in the next commit to optimize ItemAdd() and make its logic more consistent with IsHovered().
omar e87ad328e4 Moved implementation of Hovered-related functions next to each others + comments, before I attempt to work on them. No functional change here.
omar e56eba44fe Fixed not being able to move a window by clicking on one of its child window (, ), broken by 313d388bba
omar 8374a454da Removed extraneous ImGui:: prefixes. Declared ColorEditOptionsPopup in imgui_internals.h. Tweaked internal signatures.
omar bbd6d5d5b5 Combo: Cleaned up, removed unnecessary code (looks like this part went untouched for a long time!).
omar 9e1ad7295f ImFont: Renamed (supposedly internal) fields (e.g. XAdvance to AdvanceX). Custom text renderers might be affected if they didn't use the GetCharAdvance() helper function.
omar 10bb9524eb ImFont: Renamed ImFont::Glyph to ImFontGlyph (for consistency and so ImFontAtlas types can use it without ordering half of the file). Left a redirection type.
omar be03882a15 Separator(): output vertical separator when used in horizontal layout mode, so it works in menu bars.
omar c7a606ab7e Horizontal layout does the minimum job to be usable internally - not exposed ()
omar 728deff56c Comments, debug code (commented), todo list
omar 82748df71a WantCaptureMouse: Tweaked logic so WantCaptureMouse can stay false when e.g. hovering over void while an InputText() is active. ()
omar 69d0d33451 Exposed PushMultiItemsWidths() to imgui_internal.h
omar 24f21bd4d4 Merge pull request from Urmeli0815/ImGuiSelectableFlags_MenuItem
MenuItem: only activate on Release, not on Click (nb: and not on ClickRelease to allow opening menu and selecting something with a single click. Windows seems to behave the same, allowing to click and hold to e.g. Open then move cursor, release on Save and save gets activated)
omar c0547d358d Begin: Fixed auto-fit calculation code that predict the presence of ascrollbar so it works in the case size constraints are used. I actually don't need this fix now, but earlier experiment with BeginCombo() required this fix.
omar 4b2781fe87 Begin: Moving some code into a CalcSizeAutoFit() function.
omar 0d56140b4a BeginCombo(): rework internals a little to make it easier to provide custom combo-like elements relying in BeginCombo().
BeginPopupEx() doesn't enforce AlwaysAutoResize flag anymore.
omar 4b82759598 SetNextWindowPos: added a ImVec2 pivot parameter for positioning a given a center, bottom-right position, etc. As a generalization of SetNextWindowPosCenter() which is now obsolete. This will be useful for combo-like popups as well.
Demo: Simple-overlay window uses the SetWindowPos pivot to select a corner to position itself at.
omar 0a55573288 Begin(): Minor tidying up of flow
omar 9f34925b2a Window: Tweaked ApplySizeFullWithConstraint() -> CalcSizeFullWithConstraint() so it can be used without side-effect
omar 0a5fb24f10 Popups: Exposing a little more of popups internals in imgui_internals.h
omar 479e532f18 ColorEdit: fixed weird ternary pattern that makes some compiler warning (fair)
omar 79ce9b74d5 BeginTooltipEx() internal tweaks
omar 105f3b14e4 Merge branch 'master' into styles
omar 9693fd5351 PushStyleVar/PopStyleVar: internal tweaks
omar 7c9e38f60a Style: Moving code in a function to make incoming diff easier to parse.
omar 709653c330 Merge branch 'master' into styles
omar 052999a6ab More consistently uses "Dear ImGui"
omar 54d30d758f Implicit "Debug" window uses a "Debug##Default" identifier to allow the user creating such window with custom flags
omar f63c03c464 Internals: moved ButtonRepeat and AllowKeyboardFocus bools/stacks to a generic ItemFlags stack. Merged from Navigation branch.
omar 51fcef0c21 BeginCombo() tweaks, merged from Navigation branch.
omar 2169bf6895 Fixed WantTextInput from being true when an activated Drag or Slider was previously turned into an InputText(). ()
omar 790605e359 Minor comments + renaming internal fields
Václav Patejdl e1a7aa41cb Improved ColorPicker hue wheel color interpolation
omar 2600b28f5d Begin(): fixed calling Begin() more than once per frame setting `window_just_activated_by_user` which in turn would set Appearing to true for that frame.
omar 6400f2900a Begin(): renamed locals.
omar a9c6a0f6ec Begin(): Removed unnecessary code (at the time of 1.18 commit e9e0e36f98, CursorPos was used to compute SizeContentsFit and this was necessary)
omar 89cae37b49 Begin(): Tidying up some code, should be a no-op.
omar 8fbe8709f9 TODO, minor tweak
omar e8dbf1c795 Combo: Internally split into BeginCombo(), EndCombo(), toward a more flexible combo api.
omar 5658675e9d Combo: Removed unnecessary ClearActiveId() call (from era where active combo stored an id, now we just use popup functionality)
omar 804ee78731 Added IsWindowAppearing().
Branimir Karadžić 670d40642f Fixed C4267 conversion from size_t to int.
omar 6a1ba317c7 Demo: Minor coding style tweaks so bgfx copy needs less patching.
omar 96d2942373 InputText: Merged bits from Navigation branch (inc. g.ActiveIdIsJustActivated is only set on the toggle).
omar 35e4fa7b85 Merged from Navigation branch (DragBehavior)
omar 6cca4025ee Merge from Navigation branch: 6aa8019763
omar ddf41b0398 Merged from Navigation branch. TAB/Alt-TAB processing now deactivate if holding Ctrl.
omar 550dc09998 Merged from Navigation branch (misc)
omar aef041f948 Merged from Navigation branch
omar c9298c2657 Merged from Navigation branch:
f71cdd13b7  Internal tidying up, moved code to CalcNextScrollFromScrollTargetAndClamp() so it can be reused by upcoming nav code.
c816e6c742 Fixed SetScrollX() handling of center ratio (which actually wasn't exposed publicly). (, )
omar 287a4b6b38 Merged from Navigation branch: 5cac4926c8 fix title bar color of window under a modal window.
omar 358e7a194e Added GetKeyPressedAmount() (from Nav branch) to be able to measure fast repeat rate accurately. Added internal CalcTypematicPressedRepeatAmount() function.
omar 1f1e63f705 Merge various minor things (supposedly harmless) from Navigation branch into Master to reduce differences. Some code in NewFrame() has been moved around. ()
omar ee42fae468 Merge various minor things (supposedly harmless) from Navigation branch into Master to reduce differences. ()
omar f8eef49575 ProgressBar() fixed rendering when straddling rounded area. ()
omar 7a9ea281be ImSwap() helper.
omar 1f51e8f39d Internals: Renamed some ImGuiCorner enums.
omar 7a7327adde ParseFormatPrecision() returns -1 for scientific noation 'e'/'E', RoundScalar() doesn't alter those.
omar b295e185ff Updated copyright date for 2017, updated Gallery link
omar 419b22a487 Internals: Split some code out of NewFrame() into an Initialize() function.
omar 5938f1ba61 Added IsMousePosValid() helper.
omar a02210a455 Fixed compilation with IMGUI_DISABLE_OBSOLETE_FUNCTIONS defined
omar 92a6faca6f IO: io.MousePos needs to be set to ImVec2(-FLT_MAX,-FLT_MAX) when mouse is unavailable/missing. Previously ImVec2(-1,-1) was enough but we'll now accept negative mouse coordinates.
omar 37f3a718c6 Marked all fmt + va_list functions with format attribute so GCC/Clang can warn about them. Not ignoring -Wsuggest-attribute=format anymore for GCC/Clang.
omar 40f608ce9b Version 1.52 WIP
omar 55a6209931 Version 1.51
omar d213c0eb7e Style: Tweaked default border (undo half-way from original c1e1e015c4) ()
omar 92efa00bc9 Minor miscellaneous merges from Navigation branch to reduce divergence a little bit
omar eb2bbf6f29 Renamed IsItemHoveredRect() to IsItemRectHovered(). Renamed IsMouseHoveringWindow() to IsWindowRectHovered() - follow up to previous commit 6be7d4904e merged from Nav.
omar 52b39af0a0 Style: Added obsolete redirects for ImGuiCol_Columns*** fields. (ref 648f75b245)
omar 6be7d4904e Merge part of 88c1966629 from Nav branch. Renamed IsMouseHoveringAnyWindow() -> IsAnyWindowHovered(), IsMouseHoveringWindow() -> IsWindowHoveredRect() for consistency. Kept inline rediection function.
omar 141339e4b7 (internals) Renamed FocusedWindow to NavWindow to match terminology of navigation branch
ocornut 2ad2190d47 Merge 20a0fde012 Tidying up default clipboard handler for non Windows-OS (from Nav branch)
ocornut 50b3a14d0a Merge 2545d75c3b from Nav - Tidying up, removed two unnecessary window flags from being exposed in imgui.h
omar d5b0d51274 Minor miscellaneous merges from Navigation branch to reduce divergence a little bit
omar 6ee317d26d ImRect::Clip() -> ClipWith() to clarify meaning, going to undo the change in Nav branch.
omar 543dc2817f Fixed an assert when calling CloseCurrentPopup() twice in a row.
omar 530baee1a7 Removed tabs that slipped through the cracks
omar 067127f113 Columns: Caching columns clipping rectangles ()
omar adeaf1cd72 Columns: Moved PushColumnClipRect() to imgui_internal.h
omar 54bdd00df7 Columns: Fix for explicit content width and scrollbar. (, )
omar 83e8d10fab Columns: Columns set resize based on the presence of vertical scrollbar. Not 100% sure about that but it looks like we've fixed enough bugs that this may not cause troubles anymore. (, , , )
omar 1ebd7ec049 Demo: Columns: Added Horizontal Scrolling demo. Tweaked another Columns demo. (, , )
omar 7ff1c149b5 Columns: Fixed another form of shearing made visible by the PreserveWidth option. The code was initially added in c46d5634d4 to fix because we've fixed in e42aaede42eb6d8a47cf104f3afd6057b13a61ee. (, )
omar 1c83b073c6 Columns: A set of column (and most importantly the right-most column) do not register its content to the parent, not affecting the window contents size. (, , )
omar 7f0063f858 Columns: Added ImGuiColumnsFlags_NoResize flag (internal). (, )
omar e70d49ba1f Columns: Fixed one form of shearing during resizing columns with PreserveWidth enabled (there's another issue still). (, )
omar 9307631c90 Columns: Removed unnecessary/misleading dummy ItemSize(). Was fixed already before, and fixed again in this branch by 3bf2af23e6. (, ). End() calls EndColumns() directly.
omar a511b00226 Columns: Fixed offset rounding leading to SetColumnOffset() being destructive when ImGuiColumnsFlags_NoPreserveWidths flag is not set. (, )
omar 3bf2af23e6 Columns: Fixed EndColumns() not repositioning the cursor. ()
omar 19a42cb2fd Columns: Moved BeginColumns/EndColumns/flags from to imgui_internals.h + minor shallow tweaks. Removed demo code temporarily. ()
omar bc78535bbf Merge branch 'master' of https://github.com/ggtucker/imgui into ggtucker-master
# Conflicts:
#	imgui.cpp
#	imgui.h
omar b4eeb4aa8d Renamed GetStyleColName() to GetStyleColorName() for consistency. Extra comments in Api Breaking Changes section.
omar af2db53780 Added GetStyleColorVec4()
omar cf84650ee8 GCC warnings fixes
omar fd394e1e95 Scrollbar: Comments. Fixed potential div-by-zero error which I can repro now, so added an assert to notify us if it's actually ever useful or not.
omar 91d841dd5f Added PushStyleColor(ImGuiCol idx, ImU32 col) overload. (Which _might_ cause an "ambiguous call" compilation error if you are using ImColor() with implicit cast. Cast to ImU32 or ImVec4 explicily to fix.)
omar 24a78767d2 Merge branch 'master' into styles
# Conflicts:
#	TODO.txt
omar 68bf5ecbc1 Marked the weird IMGUI_ONCE_UPON_A_FRAME helper macro as obsolete. prefer using the more explicit ImGuiOnceUponAFrame. Removed the broken __LINE__ from IMGUI_ONCE_UPON_A_FRAME
omar a85a14370b OpenPopupEx() internal tweaks to receive an ImGuiID, BeginPopupContextXXX shortening unnecessarily long identifier.
omar a9915681eb PushID()/PopID() to not need to mark parent window as Accessed (needlessly waking up the root "Debug" window) ()
omar 5ea1865fdb (api breaking) changed parameter order for BeginPopupContextWindow(), note that most uses relied on default parameters completely.
omar d2259f65e5 Undo part of 32dbe836d0 to keep the same name for both overloads (, )
omar f98376d02b Merge branch 'is-popup-open' of https://github.com/mkeeter/imgui into mkeeter-is-popup-open
# Conflicts:
#	imgui.cpp
omar a83f7083ed BeginPopupEx() uses ImGuiID internally
omar 1e162dfc74 PushStyleVar/PopStyleVar: internal tweaks
omar 18f217e631 Style: Moved position of ImGuiCol_TitleBgCollapsed
omar 5429bd892e ColorEdit4: Added "Copy as..." option in context menu ()
omar 0f935248e3 Combo, Inputint, InputFloat, ColorEdit4 all use the small size for little square
omar 032c222d57 Merge branch 'master' into styles
omar a6d69f04c0 PlotHistogram: bars are drawn based on the position of zero ()
omar 3d6e037c23 Comments ()
omar bd3dfc0eba Moved TODO list to TODO.txt
omar c26b29b254 Style: Moving code in a function to make incoming diff easier to parse.
omar 2b7fe73a08 Window size can be loaded from .ini data even if ImGuiWindowFlags_NoResize flag is set (, )
omar c1e1e015c4 Style: Tweaked default border (which is off by default) to be less noticeable (, )
omar 648f75b245 Style: renamed ImGuiCol_Columns_*** to ImGuiCol_Separator_*** (BREAKING), Separator() uses this color as well. (, )
omar 6a4064e5f2 PathArcToFast: Minor renaming for clarification. Comments.
omar 8c61a4eb4c Fonts: Adding references to the fact that .OTF fonts are supported (but haven't renamed the entry points)
LuK1337 8352d43a0c Fix broken ImGuiColorEditFlags_NoAlpha flag check
* Fixes warning:
  imgui.cpp:9295:98: warning: enum constant in boolean context [-Wint-in-bool-context]
omar 908b025c3c Fixed (unlikely) Ini saving crash if the ImGuiWindowFlags_NoSavedSettings gets removed from a window after its creation () + minor FAQ tweaks
omar 08265bfbd9 RenderArrow(): fix warning. re-orderer lines to match enum order.
omar d7cad903aa Documentation tweaks
omar 7e452ec737 Renamed ImGuiSetCond_XXX type and enums to ImGuiCond_XXX, kept old enums under #ifdef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
omar 53d1b1e929 ColorPicker: Fixes for when ImGuiColorEditFlags_NoOptions flag is set: always read a default picker type + forward flag to sub ColorEdit widgets. ()
omar fed18d3203 Removed old ValueColor() helpers. ()
omar fc5ab0cb8d RenderCheckMark() tidying up
omar 4fd148f4f9 Added ImFontAtlas::GlyphRangesBuilder helper + doc
omar 43e2abbee3 Comments, FAQ entry (, )
omar 55b99d753c Minor string typo
omar a78ef7a369 Comments
omar 942cb0e1f2 Added SetColorEditOptions(). ColorPicker4: context menu to select picker type and alpha bar. Reorganized flags (again!). ()
omar a4012fd5b2 Merge branch 'master' into 2016-02-colorpicker
omar b5ad88627d Merge various documentation tweaks, comments, todos from the Navigation Branch to reduce drift a little
omar a1bcc8392e Fixed GetScrollMaxX() debug left-over from 7096fd8500 ()
omar 1c991b525a Merge remote-tracking branch 'origin' into 2016-02-colorpicker
omar 0ab722c3c5 Columns: First first column appearing wider than others ()
omar d43c25d8f4 SetScrollHere() tweak to make the code a little less confusing
omar e36b41cbd0 Fixed Y scroll aiming when Horizontal Scrollbar is enabled (). Tweak log demo.
omar 7096fd8500 Fixes for Vertical Scrollbar not automatically getting enabled if enabled Horizontal Scrollbar straddle the vertical limit. (, )
omar 233a6efeba Fixed GetScrollMaxX(), GetScrollMaxY(). Tweak demo to display more data. Using functions in Begin(). ()
omar 46c73cccff Popups window can be moved (if they don't have explicit positions provided by user, or e.g. sub-menu popup) ()
omar d762f1dbfb Comments, clarification about io.WantCaptureMouse, io.WantCaptureKeyboard flags timing and NewFrame(). ()
omar 95f2706d1c Clipboard: [windows] Fixed not closing win32 clipboard on early return. ()
omar 40ac84d701 DataTypeApplyOpFromText: renamed local variables + comments to avoid confusion about the fact that int and float paths are not totally symetrical. ()
omar f6460970c5 ColorPicker: Hue wheel + SV triangle picker mode (mode selection flags still wip, missing context menu and persistent options). ()
omar fb54dce71c Internals: Added ImLineClosestPoint, ImTriangleClosestPoint helpers. Changing ImVec2 arg to const ImVec2&
omar 72da4081f8 Internals: Added ImTriangleBarycentricCoords() helper. Renamed ImIsPointInTriangle() to ImTriangleContainsPoint(), with different arg order.
omar 2f508c7073 ColorEdit: Extract ColorOptionsPopup() function out of ColorEdit4(). ()
omar 10ef5a63f0 ColorPicker: Rearrange code to introduce alternate HSV picker/selector with simpler diff. ()
omar cc3cce7567 Comments, minor tidying up.
omar 70ee41b8b3 ColorPicker: Reordered drawing code to match left-to-right display. Extra comments. ()
omar 4b2f157fb1 Renamed ImGuiColorEditFlags_ModeMask_ to ImGuiColorEditFlags_InputsModeMask_ ()
omar efbb1ae04e ColorPicker4: Fixed forwarding _HDR flag from ColorPicker4 back to ColorEdit4 components. ()
omar 3ee969c3e3 ColorPicker: Alpha bar using a checkerboard. ()
omar 3075d8bcd4 ColorEdit4: Preliminary support for ImGuiColorEditFlags_HDR flag (currently only lift limits). ()
omar f6a89779c8 ColorEdit4: Hex input clamps integer components to 0..255 range during printout ()
omar e1a00c3d26 ColorButton: Added frame border when style border are off. () @jdumas
omar 90fcd4a829 Renamed ImGuiColorEditFlags_NoColorSquare to ImGuiColorEditFlags_NoSmallPreview ()
omar 3fe7739b5d ColorPicker: Honor ImGuiColorEditFlags_NoTooltip if for some reason user wants that. ()
omar 3ffcc72f98 ColorPicker: Better cursor/color preview over the color matrix. ()
omar fef8aac523 ColorPicker4: hue/alpha bars draw arrows that would look right on all background. RenderArrow helper. ()
omar 3926bd08e1 ColorPicker: Added ImGuiColorEditFlags_NoSidePreview flag + optional reference color. Added more demo code. ()
omar e84224bcd5 ColorEdit4: Can open context menu from inputs/drags as well ()
omar 6c82572a35 ColorEdit4: Fixed not returning true when clicking on the Original/Ref color in Picker spawned from ColorEdit4 + shallow tidying up ()
omar 7537dff806 ColorEdit4: Picker spawned from ColorEdit4 has a preview for original/previous color with revert button - WIP not really happy with it being in ColorEdit4 code ()
omar 6bc1572d31 ColorPicker: Comments. Single input value mode allow access to context-menu options. ()
omar 973d4a361b ColorPicker: Forward AlphaPreview flag to its individual inputs/sliders. Split code into extra lines to make logic more readable. ()
omar cdcda9ff68 ColorEdit4: Store edit options per window. Demo: Letting user change edit mode. ()
omar c36d59a42a ColorEdit, ColorPicker: AlphaPreview, AlphaPreviewHalf are explicit. Updated demo and using in style editor. 3x3 checkerboard more readable in half mode. ()
omar b1cbd87a94 ColorEdit4: Minor tidying up. ()
omar bfec9c657e ColorButton: Pretty much gave up with getting the checkerboard + AA + rounding + blending + offset all working together with every combination under the sun. It works as long as you don't sneeze. ()
omar a9df6bfe86 ColorButton: Fixed rounding corners artefact when there is a single cell.
omar b7a563276d ColorTooltip: Honor ImGuiColorEditFlags_HalfAlphaPreview flag by calling ColorButton(). Added HalfAlphaPreview to demo. ()
omar c1c2b2400a ColorButton: Undo ce203f99f5
omar 2e37db9002 ColorEdit4: Fix not forwarding ImGuiColorEditFlags_AlphaBar flag to ColorPicker4 ()
omar 27e5b09af1 ColorButton: ImGuiColorEditFlags_HalfAlphaPreview flag to render both opaque and alpha-with-checkerboard versions of the peak preview ()
omar 69dd1ed583 RenderColorRectWithAlphaCheckerboard() in one layer to shunt out anti-alasing artefacts when rounded. Added ImLerp(int,int,float). ()
omar 76bae2f015 ColorEdit, ColorPicker: Fixed broken build due to commiting an undesirable change in 78a8f798c5 ()
omar 19c6a9c0e0 ColorButton, ColorPicker: painfully made RenderColorRectWithAlphaCheckerboard more friendly to using Rounding and Border in style, still not perfect :( () + comments
omar 6796e771fd ColorEdit, ColorPicker: added ImGuiColorEditFlags_NoAlphaPreview flag (). Reorder flags again.
omar ce203f99f5 ColorButton: Push a text baseline offset if higher than g.FontSize. ()
omar 78a8f798c5 ColorEdit, ColorPicker, ColorButton: Display grid under transparent colors (WIP) ()
omar 9d0e5beaa7 GetColorU32(ImGuiCol): avoid using GImGui twice since some implementation make it a TLS-ish variable with non-trivial accessors.
omar 95fe11b5bf Added GetColorU32(u32) variant that does the style alpha multiply without a floating point round trip. Not 100% sure about that before the signature may seem ambiguous? But also make using imgui+drawlist more consistent in end-user extensions.
omar 4f1f251bd2 ColorEdit, ColorPicker: Context / options menu allows to toggle between u8 and float display. Using short words to avoid localization. ()
omar 8d32e8dae6 ColorPicker: Handle out of 0..1 range colors when displaying the cross hair. ()
omar 7b2d79cffd ColorEdit: Added ImGuiColorEditFlags_Float flag to display and edit drag values in 0.0..1.0 range instead of 0..255. ()
omar a8b202782f ColorPicker,ColorButton: Honor Border/Shadow style settings ()
omar 790d0eb5be ColorPicker: Added ImGuiColorEditFlags_AlphaBar option ()
omar 4355b2e422 ColorPicker: Honor ImGuiColorEditFlags_NoColorSquare flag + comments ()
omar 15be7e1a71 ColorPicker: new prototype for ColorButton() .Added _NoTooltip, _NoLabel flags. Changing _Alpha flag to _NoAlpha makes so much much sense and allow to revert default parameters to zero. ColorEdit4/Picker4 don't attempt to read/write fourth component, making ColorEdit3/Picker3 shorter/faster. Tooltip and Picker called from ColorEdit can have a title. Picker shows colored square. Moved ColorTooltip() to imgui_internal.h ()
omar dd9c2f97a8 ColorPicker: Renamed _NoSliders to _NoInputs ()
omar eba33deaf3 ColorPicker: Longer white line for hue/alpha selection, scale down according to ItemInnerSpacing. ()
omar 1edeea2f5a ColorPicker: Removed extraneous ImGui:: prefixes + minor comments ()
omar e79d7553b0 ColorPicker: Don't use Alpha setting when enabling all 3 sliders ()
omar 97bedd704c Better, unified color tooltip ()
omar c8553817d9 Merge branch 'master' into 2016-02-colorpicker
omar 138a9dbaeb Tooltip: SetTooltip() is expanded immediately into a window, honoring current font / styling setting. Add internal mechanism to override tooltips (not exposed in BeginTooltip yet because bools are evil) ()
omar e4007f7145 Internals: Move GetVisibleRect() a few functions above so it gets to hang out with its peers.
omar 85d9c8fb46 Internals: renaming IndexWithinParent to OrderWithinParent
omar 25f3717a1c Removed IsPosHoveringAnyWindow() which was severaly broken and misleading (most people want to use io.WantCaptureMouse). Added dummy function with assert for now. ()
omar 3e4cb40d45 Merge branch 'master' into 2016-02-colorpicker
omar 41f944238b Comments about GlyphExtraSpacing ()
omar be7fa76fdd Fixed Clang unknown-warning-ignored warning by ignoring it..... we are truly living in a special time ()
omar cb6d893a13 Comments (, )
omar d3f4309491 Comments about ImGuiStyleVar enum ()
omar a5e0210902 Revert 978c84d2e9 because int32 >> 32 tends to warns on some compilers/settings. Add ImU64 type. ()
omar e47cf79773 Comments tweaks, typos ()
omar 4c8d87d3fb Comments ()
omar 978c84d2e9 Removed dependency on int64_t type (unvailable in VS2008) by rewording an assert ()
omar 12d265fa31 Version 1.51 WIP tag
omar 5e1caaaef3 Version 1.50
omar 7ad84b22f8 Comments
omar 62c4698a73 Further clarifications of the key indices passed to IsKeyXXX functions ()
omar c038339a4c Merge branch 'master' into 2015-02-colorpicker
omar 9da53bcecd ImFontConfig: Removed MergeGlyphCenterV in favor of a more multipurpose ImFontConfig::GlyphOffset. (Breaking change)
omar bd9868f447 Scrollbar: Avoid rendering when sizes are negative to reduce glitches (not sure how this ever slipped through - perhaps because of WindowMinSize settings).
omar dbfd5d6e9a Ignoring unreasonnable Clang -wformat-pedantic warning ()
See e.g.
http://clang-developers.42468.n3.nabble.com/The-p-conversion-and-cast-to-void-td4044226.html
omar 89b1497843 Merge branch 'master' into 2016-02-colorpicker
omar a0a6c8a2ef Renamed ImDrawList::PathFill() to ImDrawList::PathFillConvex() for clarity. (breaking API)
omar d878462866 End() avoid calling Columns() if no columns set is open, not sure what it wasn't the case.
Pros: Faster. Avoid early crashes StackId underflow that are meant to be more gracefully caught by CheckStacksSize() (with more explicit assert). Cons: Excercise less code.
omar bbd44b4edd Clarified asserts in CheckStacksSize() when there is a stack mismatch
Michael Link 8df58e2cfd MenuItem should only be selected on release
omar 0e1950f7d6 Comments about child menu positioning ()
omar 92ea8d1131 Merge branch 'master' into 2016-02-colorpicker
Codecat fdd11658eb Fix ColorButton showing wrong hex value for alpha
omar b8043d3ee5 Internal: Renamed ImLoadFileToMemory to ImFileLoadToMemory to be consistent with ImFileOpen + fix mismatching .h name ()
omar b6c0227add Merge branch 'master' into 2016-02-colorpicker
omar 6257b5814a Added an explicit (internal) ClearActiveID() helper and removed the default NULL window parameter to internal SetActiveID(),
ocornut a60b2cc645 Merge branch 'master' into 2016-02-colorpicker
omar 081aec482b Merge pull request from nlguillemot/master
Combo, ListBox: Extra const correctness.
ocornut baa2e3b451 Minor documentation tweaks
Nicolas Guillemot 36d78e0565 const correctness for Combo and ListBox
Since Combo and ListBox only read and display the list of items, they
should not modify the pointers inside the array of pointers passed in.
Adding "const" here makes it possible to call these functions with such
an array of const pointers. Previously, a cast to "const char**" was
required as a workaround, otherwise there was a compile error.
ocornut 55d651812d Renaming and massaging internal Settings/Ini functions ()
ocornut 0b6211f907 Fixed clicking on a window's void while staying still overzealously marking .ini settings as dirty ()
ocornut 9235e0da46 SliderInt, SliderFloat(): Fixed edge case where style.GrabMinSize being bigger than slider width can lead to a division by zero ()
ocornut ca9a918535 SliderInt(): Fixed reverse direction mode when (v_max-v_min)==-1 () (+ ref )
ocornut bbd0a37bd2 ImFileOpen: MinGW uses _wfopen() codepath to support UTF-8 filenames ()
ocornut 449c47c789 SliderInt, SliderFloat() interacting enforce modifying to the value to be consistent with other widget behaviors ()
ocornut 94c77edfa5 SliderInt, SliderFloat() Better display support for v_min==v_max range. ()
ocornut 0a483379af Split SliderBehaviorCalcRatioFromValue() out of SliderBehavior(), fix + Not using fabsf() anymore
ocornut 004e863727 Split SliderBehaviorCalcRatioFromValue() out from SliderBehavior()
ocornut f4cf972ea9 Merge branch 'master' into 2016-02-colorpicker
ocornut 219e4fb8fb SliderInt, SliderFloat: Passing v_min==v_max disable setting value from clicking/dragging ()
ocornut a868c32ed1 SliderInt, SliderFloat: Renaming
ocornut 61d5b46307 SliderInt, SliderFloat(): support reverse direction ()
ocornut 104b381023 Using _wfopen() under Windows+MSVC because fopen() doesn't support UTF-8 encoding. Wrapped as ImFileOpen(). ()
Geoffrey Tucker 66c4281290 Began improvements to columns API by splitting the Columns() function into BeginColumns() and EndColumns() and adding additional flags. The columns data still needs to be placed into a stack.
ocornut 98e1d500d4 Support for #define-ing GImGui and IMGUI_SET_CURRENT_CONTEXT_FUNC to enable custom thread-based hackery ()
ocornut 8553bab241 Ignoring overzealous GCC warnings ()
ocornut ccb3db94da Merge branch 'master' into 2016-02-colorpicker
ocornut 3689efb726 Font: Readme about icons
ocornut da9feba539 Fixed missing frame padding on title bar text when Collapse triangle is disabled
ocornut b376b68326 Font: Added io.FontDefault in ImGuiIO structure to make it easier to change default font from third-party or demo code
ocornut ddf08ec2e8 BeginChild(const char*) applies stack id to provided label (, )
Matt Keeter 32dbe836d0 Add user-facing IsPopupOpen function
ocornut dd6163241c Merge branch 'master' into 2016-02-colorpicker
ocornut 7252d93dcd stb_textedit.h Merged from master 1.9 (merged bits from )
ocornut 0d3f8807c7 Added a void* user_data parameter to Clipboard function handlers. ()
ocornut cb7e1c18b5 Separator: Fixed zero-height bounding box resulting in clipping when at top of clipping rectangle ()
ocornut 4de35b4f30 Removed left-over empty op
ocornut 1810b3ff38 Added ImGuiCorner enum to clarify some internal code
ocornut abaada4224 Removed the inconsistent shadow under RenderCollapseTriangle() (~#707)
ocornut 5957af8a80 Fixed not using IM_ARRAYSIZE() where appropriate
ocornut fa73e5aa0e Plot: Fixed calling with values_count == 0
ocornut 51111b0ed5 FAQ clarified the ClipRect entry a little
ocornut 404979e48d Merge remote-tracking branch 'origin' into 2016-02-colorpicker
ocornut a2487bc143 Minor tweaks