omar
f7259e60ee
Comments
2017-10-20 21:17:51 +02:00
omar
6ab737a4bb
Popups: Fixed right-click to close popups not handling modal windows properly. (~#439)
2017-10-20 20:31:01 +02:00
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)
2017-10-20 19:25:34 +02:00
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)
2017-10-20 19:24:12 +02:00
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.
2017-10-20 18:56:31 +02:00
omar
3cc10d25a9
BeginPopupContextItem(), BeginPopupContextWindow(): Using newly introduced IsItemHovered() flags to allow reopening another context menu (over same or not same item) with right-click. ( #439 ) (+1 squashed commits)
2017-10-20 18:02:52 +02:00
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: #143 )
2017-10-20 17:59:48 +02:00
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, #1013 , #143 , #925 )
...
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.
2017-10-20 17:52:22 +02:00
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.
2017-10-20 17:29:52 +02:00
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. ( #1381 )
2017-10-20 16:13:13 +02:00
omar
3b485cda51
Fixed a bug allowing to move a _NoMove window from a child that doesn't have the flag. ( #1381 )
...
broken by e56eba44fe (#1337 )
2017-10-20 16:09:24 +02:00
omar
87ae40843c
Popups: popups can be closed with a right-click anywhere, without altering focus under the popup.(~#439)
2017-10-20 13:26:39 +02:00
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)
2017-10-20 13:21:42 +02:00
omar
5f7299e15a
Refactor EndFrame() code that process focusing window with left mouse button. This commit should be no-op.
2017-10-20 13:07:57 +02:00
omar
2a32a2e662
Demos: Tweaks of popups/context/menus section.
2017-10-20 12:38:48 +02:00
omar
e384078d7a
IO: reordering some supposedly private fields.
2017-10-19 22:49:36 +02:00
omar
5b699517d4
Internals: PaintVerts** renamed to ShadeVerts**, moved to imgui_draw.cpp and exposed in imgui_internal.h (+1 squashed commits)
2017-10-19 19:42:19 +02:00
omar
22977ffedb
Documentation: Extra comments + tweaks to make usage of long-line more bearable.
2017-10-19 19:30:46 +02:00
omar
d3c2e904d8
Internals: Added ImLinearSweep() helper.
2017-10-19 19:29:59 +02:00
omar
370a48c10b
Internals: RenderCollapseTriangle() -> RenderTriangle(), takes a ImGuiDir
2017-10-18 23:46:16 +02:00
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. ( #600 , #787 )
2017-10-18 19:55:08 +02:00
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.
2017-10-18 13:08:25 +02:00
omar
1c4af303bf
Internals:Helpers: Added ImSwap(int,int), exposed ImStrncpy().
2017-10-18 13:08:14 +02:00
omar
bf778ebb7e
Checkbox: Using checkmark. MenuItem: Tweaked checkmark, thicker.
2017-10-18 13:06:49 +02:00
omar
03b76bf05b
Begin: Marked 5 parameters version of Begin() as obsolete. Now waiting for a riot to happen!
2017-10-17 16:19:21 +02:00
omar
78a85ba3fe
Begin: Work toward obsoleting the 5-arguments Begin() overload. Internal BeginEx() becomes the normal public Begin() again! (4)
2017-10-17 16:15:46 +02:00
omar
2739b6ebcd
Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed bg_alpha from internal BeginEx(). (3)
2017-10-17 16:14:20 +02:00
omar
4aa9d2089d
Begin: Work toward obsoleting the 5-arguments Begin() overload. Removed size_on_first_use from internal BeginEx(). (2)
2017-10-17 15:51:20 +02:00
omar
55d873875e
Begin: Work toward obsoleting the 5-arguments Begin() overload. (1)
2017-10-17 15:47:55 +02:00
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.
2017-10-16 23:37:12 +02:00
omar
c76f014292
Fix IsItemHovered() issue on child by temporarily reverting 344d48be31. This is not the ideal solution. ( Fix #1370 )
2017-10-16 16:41:09 +02:00
omar
e32569dd5a
ImDrawList: Fixed a bug in ChannelsMerge() leading to an extraneous draw call being created, which unexpectly led to more dramatic condition but to faulty draw command merging code. ( #1172 , #1368 )
2017-10-15 21:07:22 +02:00
omar
ce7b04e8b9
Removed apparently unncessary code in InputFloatN() and InputInt().
2017-10-13 23:59:17 +02:00
omar
4be967823f
Exposed Scrollbar() in imgui_internal.h and removed a bool arg
2017-10-13 13:30:28 +02:00
omar
43b4a81b3e
Rnamed AlignFirstTextHeightToWidgets() to AlignTextToFramePadding(). Kept inline redirection function (will obsolete).
2017-10-11 15:36:57 +02:00
omar
578a588c1d
Links
2017-10-11 15:26:35 +02:00
omar
4cfec4813e
Links
2017-10-11 15:24:54 +02:00
omar
c6e370a77a
TreeNode: Added ImGuiTreeNodeFlags_FramePadding flag
2017-10-11 15:16:11 +02:00
omar
042153d254
Internal: ItemAdd(), IsClippedEx(): removed unnecessary indirection for ID parameter
2017-10-06 14:23:18 -07:00
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.
2017-10-06 11:48:07 -07:00
omar
335c8dd159
Comments (clarifying whether types are to be considered as flags or regular, non combinable enums)
2017-10-06 11:23:08 -07:00
omar
d851775c80
ColorButton: Reduced bordering artefact that would be particularly visible with opaque Col_FrameBg and FrameRounding enabled.
2017-10-05 17:55:27 -07:00
omar
726dcf0dd2
TextUnformatted(): minor tweak
2017-10-05 11:03:38 -07:00
omar
a0d724b450
Made AlignFirstTextHeightToWidgets() saner and faster (still disliking its name very much!)
2017-10-05 11:02:23 -07:00
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)
2017-10-05 09:53:07 -07:00
omar
63cd2bf9b1
Removed obsolete comment.
2017-10-05 09:40:06 -07:00
omar
b3099d650c
Examples: Adding Roboto to the commented-out font list, and removing the unnecessary ProggyClean from there.
2017-10-04 19:28:04 -07:00
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.
2017-10-04 18:13:57 -07:00
omar
89ab4b5e07
TODO update
2017-10-04 15:42:03 -07:00
omar
7f58bb03c1
Changed the internal name formatting of child windows to use slashes as separator, more readable.
2017-10-02 16:07:34 -07:00
omar
cbc9730798
Metrics: Draw window bounding boxes when hovering Pos/Size. List all draw layers, trimming empty commands like Render() does.
2017-10-02 16:07:33 -07:00
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. ( #126 , #787 )
2017-09-29 22:19:53 +02:00
omar
fba9353c60
BeginMenu: Shuffling braces around to clarify flow
2017-09-29 16:29:00 +02:00
omar
3b85a8b6a0
Demo: Added an extra test related to baseline and fixed an id collision.
2017-09-28 22:01:08 +02:00
omar
164f22d5b7
Comments
2017-09-28 22:00:49 +02:00
omar
e8f7c83138
Begin: Shallow tweak to minimize diff with nav branch
2017-09-28 17:37:55 +02:00
omar
926c1cf9a4
Merged from Navigation branch: ImGuiItemFlags_SelectableDontClosePopup flag
2017-09-28 17:02:28 +02:00
omar
f99348711b
Added VerticalSeparator() entry point in imgui_internal. Seperator() in an horizontal layout context still does that.
2017-09-28 16:41:01 +02:00
omar
9142002121
Separator(): Tweak Logging so that the separator text is aligned according to tree padding.
2017-09-28 16:40:28 +02:00
omar
0106dcbd02
Fixed IsItemHovered() - part of the processing has to be done in ItemAdd() because the widget may alter clipping rectangle temporarily.
2017-09-28 15:43:26 +02:00
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.
2017-09-28 00:21:47 +02:00
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)
2017-09-28 00:05:35 +02:00
omar
eca74d55c7
IsItemHovered(), IsHovered(): Shallow tweaks, eventually removed all the braces.
2017-09-28 00:05:18 +02:00
omar
2b7d4c713e
Internals: Moved IsWindowContentHoverable() in the file
2017-09-27 23:31:03 +02:00
omar
c5a79deb38
IsItemHovered(), IsHovered(): Shallow tweaks to make them more symetrical. Removed one set of braces.
2017-09-27 23:10:46 +02:00
omar
7bcb1d3816
Internals: ButtonBehavior(), IsHovered() moved the responsability of flatten_child higher level to ButtonBehavior() - not super sure about the elegance of this
2017-09-27 22:59:40 +02:00
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.
2017-09-27 17:21:50 +02:00
omar
19e22baa06
ItemAdd(): more re-ordering of tests to match IsHovered() + comments
2017-09-27 17:06:07 +02:00
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
2017-09-27 16:49:25 +02:00
omar
c075786d8b
ItemAdd(): re-ordering the tests, submission should now be faster.
2017-09-27 16:29:46 +02:00
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().
2017-09-27 16:20:53 +02:00
omar
e87ad328e4
Moved implementation of Hovered-related functions next to each others + comments, before I attempt to work on them. No functional change here.
2017-09-27 16:07:47 +02:00
omar
842e88a8e3
Examples: Avoid using ImColor() to not tempt newcomers into looking at it
2017-09-27 15:47:08 +02:00
omar
e56eba44fe
Fixed not being able to move a window by clicking on one of its child window ( #1337 , #635 ), broken by https://github.com/ocornut/imgui/commit/313d388bba42e0634a02b976dcdbae238d25eddc
2017-09-27 12:25:40 +02:00
omar
8374a454da
Removed extraneous ImGui:: prefixes. Declared ColorEditOptionsPopup in imgui_internals.h. Tweaked internal signatures.
2017-09-27 11:39:13 +02:00
omar
09f6f564d9
ImFontAtlas: Fixed calling Clear() and rebuilding (broken in 3fe2ecfd4c) thanks @pdoane @mikesart
2017-09-27 11:21:42 +02:00
omar
bbd6d5d5b5
Combo: Cleaned up, removed unnecessary code (looks like this part went untouched for a long time!).
2017-09-27 00:20:09 +02:00
omar
3fe2ecfd4c
ImFontAtlas: Added support for CustomRect API to submit custom rectangles to be packed into the atlas / and map them as font glyphs
2017-09-26 20:24:27 +02:00
omar
501e73feed
Minor comments
2017-09-26 20:18:14 +02:00
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.
2017-09-26 20:05:16 +02:00
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.
2017-09-26 19:54:30 +02:00
omar
072d6d8cb5
ImFontAtlas: Refactored internals API to 1) avoid building lookup table multiple times for merged fonts + 2) allow the mapping of custom icons inside fonts (wip, uncommited)
2017-09-26 19:26:16 +02:00
omar
2170b0b278
ImFontAtlas: Comments and minor reorganization of declaration in header file.
2017-09-26 19:10:29 +02:00
omar
529ca279a4
ImFont: Split some building code into a AddGlyph() helper (that custom rect code and imgui_freetype can use)
2017-09-26 18:41:21 +02:00
omar
be03882a15
Separator(): output vertical separator when used in horizontal layout mode, so it works in menu bars.
2017-09-26 15:43:48 +02:00
omar
c7a606ab7e
Horizontal layout does the minimum job to be usable internally - not exposed ( #97 )
2017-09-26 15:42:55 +02:00
omar
728deff56c
Comments, debug code (commented), todo list
2017-09-26 15:33:57 +02:00
omar
99b9f1c93c
Fix static misusage error with decent compilers. Error introduced in 4b82759598
2017-09-26 11:23:06 +02:00
omar
82748df71a
WantCaptureMouse: Tweaked logic so WantCaptureMouse can stay false when e.g. hovering over void while an InputText() is active. ( #621 )
2017-09-26 01:12:09 +02:00
omar
69d0d33451
Exposed PushMultiItemsWidths() to imgui_internal.h
2017-09-25 22:45:10 +02:00
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.
2017-09-25 22:04:39 +02:00
omar
4b2781fe87
Begin: Moving some code into a CalcSizeAutoFit() function.
2017-09-25 21:57:42 +02:00
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.
2017-09-25 21:45:34 +02:00
omar
a34edb810e
Demo: Fixed overlay demo keeps resizing (in case, e.g.: font changes)
2017-09-25 21:12:07 +02:00
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.
2017-09-25 18:25:43 +02:00
omar
0a55573288
Begin(): Minor tidying up of flow
2017-09-25 15:48:52 +02:00
omar
9f34925b2a
Window: Tweaked ApplySizeFullWithConstraint() -> CalcSizeFullWithConstraint() so it can be used without side-effect
2017-09-25 13:23:25 +02:00
omar
0a5fb24f10
Popups: Exposing a little more of popups internals in imgui_internals.h
2017-09-25 12:52:06 +02:00
omar
3dd3d0b248
Examples: DirectX11: allow creating device with feature level 10 sinec we don't really need much for that example. ( #1333 )
2017-09-24 12:54:49 +02:00
omar
229921541b
TODO list
2017-09-20 18:54:36 +02:00