Commit Graph

923 Commits

Author SHA1 Message Date
ocornut
1cb6a294b0 BeginPopupContextWindow() rearranged and clarified parameters (#126) 2015-05-27 23:07:24 +01:00
ocornut
b0a9bbf6f6 Popup taking focus deactivate focused widget of other window (#126)
e.g. focus InputText(), open contextual popup, input text used to stay
focused
2015-05-27 22:58:49 +01:00
ocornut
f8b7d5c76d Tracking ActiveIdWindow along with ActiveId 2015-05-27 22:53:43 +01:00
ocornut
938528e5ee Added BeginPopupContextItem() / BeginPopupContextWindow() (#126) 2015-05-27 22:36:23 +01:00
ocornut
5b0861768e Fixed GetId()/BeginPopup() accessing current window in "append" mode 2015-05-27 22:26:03 +01:00
ocornut
8c4c421f74 Added IsAnyItemHovered() public helper. 2015-05-27 22:02:12 +01:00
ocornut
70f2ff0e5a No minimum size for popups 2015-05-27 21:59:02 +01:00
ocornut
99ff45ad2e Tweak context menu example 2015-05-27 21:42:16 +01:00
ocornut
90db64d4e3 Added context menu example on a DragFloat widget 2015-05-27 21:39:41 +01:00
ocornut
487500d291 Tweaks 2015-05-27 16:03:44 +01:00
ocornut
7d28fe5915 WIP Menus: Reverted f26de46350 for now (#126) 2015-05-27 15:51:50 +01:00
ocornut
d05c1d58c3 Oops 2015-05-27 15:44:07 +01:00
ocornut
405785ea62 ItemWidthStack can be empty, to remove one allocation per window 2015-05-27 15:42:29 +01:00
ocornut
0a7024c198 Store common stacked settings contiguously in memory to reduce cache misses & unnecessary heap allocations 2015-05-27 15:35:49 +01:00
ocornut
3d36c81241 Added PushButtonRepeat() / PopButtonRepeat(). REMOVED third 'repeat_if_held' parameter of Button() ! 2015-05-27 15:22:09 +01:00
ocornut
d69f2f57ee Added configurable io.KeyRepeatDelay, io.KeyRepeatRate 2015-05-27 15:17:44 +01:00
ocornut
904e187f70 Simplified some widget code, moving alignment to RenderTextClipped() 2015-05-27 14:39:41 +01:00
ocornut
3c264827fd Reordering parameters of internal RenderTextClipped() 2015-05-27 14:24:52 +01:00
ocornut
f841097e99 Button centering left to RenderTextClipped function. 2015-05-27 14:20:50 +01:00
ocornut
f26de46350 Button() closes active popup (#126) unsure about that 2015-05-27 09:28:44 +01:00
ocornut
e6ac9e88aa Refactor Button() and SmallButton() into a shared function ButtonEx() 2015-05-27 09:22:30 +01:00
ocornut
843219daec Spacing + untabify 2015-05-26 22:14:07 +01:00
ocornut
7b8b5754bc EndGroup() carries on the text base offset from the last line of the group (sort of incorrect but better than nothing) 2015-05-26 22:13:07 +01:00
ocornut
6f32684f15 Examples: various usage comments. 2015-05-26 21:36:44 +01:00
ocornut
15113f682e Added TextDisabled(), TextDisabledV() helpers. 2015-05-26 21:10:16 +01:00
ocornut
3a6e6645e6 WIP Menus: Fixed remaining inconsistency with stacks of popups. Activating/closing a menu close the parent popup. Added test case. (#126) 2015-05-26 20:33:48 +01:00
ocornut
90cf77b191 Merge remote-tracking branch 'origin' into 2015-05-menus 2015-05-26 18:03:46 +01:00
ocornut
6b3ccd3edf WIP Menus: Added support for disabled sub-menu (#126) 2015-05-26 18:02:42 +01:00
ocornut
0db122bc3b Comments. Examples: added empty if (MenuItem()) {} statements in more places to better document the typical use cases (#126) 2015-05-26 17:48:28 +01:00
ocornut
fdce095101 Comments 2015-05-26 17:27:35 +01:00
ocornut
d009a85de4 WIP Menus: Implement amazon's dropdown-like triangle test for navigating sub-menus (#126) 2015-05-26 17:09:21 +01:00
ocornut
63a39dd08e WIP Menus: Recursive menu demo (#126). Actually useful to test sub-menu positioning. 2015-05-26 16:14:51 +01:00
ocornut
cdb5e16f70 SelectableEx: use flags internally (similar to ButtonBehavior) 2015-05-26 16:12:40 +01:00
ocornut
4eeba016f6 WIP Menus: Closing sub-menu when hovering something else in the same parent window (#126)
Immediate open/close is error-prone
2015-05-26 15:01:04 +01:00
ocornut
83b10f77a9 Comments 2015-05-25 23:47:59 +01:00
ocornut
98540370a0 WIP Menus: Layout in menu-bar tweaks to lay better when mixed widgets (#126) 2015-05-25 23:15:00 +01:00
ocornut
bb8cdcb916 WIP Menus: Layout in menu-bar more standard, allows mixing different widgets in menubar. (#126)
Still some minor spacing bugs.
2015-05-25 23:08:22 +01:00
ocornut
83cb040d20 Selectable: text baseline alignment for line that aren't of text height. 2015-05-25 23:03:16 +01:00
ocornut
44ed5640d3 WIP Menus: Sub-menu overlapping amount not hardcoded (#126) 2015-05-24 23:58:40 +01:00
ocornut
0836f69d9b WIP Menus: Fixed style.WindowPadding == 0 leading to zero-sized initial clipping rectangle leading to self-collapsing childs (#126) 2015-05-24 23:56:29 +01:00
ocornut
6c749934ec Combo: empty label doesn't add ItemInnerSpacing alignment, matching other widgets 2015-05-24 23:45:44 +01:00
ocornut
9abcbf73cb WIP Menus: Sub-menus appears over the parent-menu scrollbar if there is one (unsure about that) (#126) 2015-05-24 23:37:47 +01:00
ocornut
63aa035f59 WIP Menus: Fixed estimation of scrollbar width (broke in 292f08b11e) (#126) 2015-05-24 23:25:57 +01:00
ocornut
8c1d7daef8 WIP Menus: Fixed repositioning of menus when there's no room in the 4 quadrants., we still keep them within the visible display area (#126)
vs popup which prefer to stay away from the mouse cursor
2015-05-24 23:17:06 +01:00
ocornut
1ab1712849 WIP Menus: Clicking the label of an already open sub-menu doesn't close it unless from a menu-bar (match Windows behavior) (#126)
Argh,
2015-05-24 22:33:04 +01:00
ocornut
48ede93a58 WIP Menus: Fixed closing popup on menu item activation when a child menu is open from the popup (#126) 2015-05-24 22:30:48 +01:00
ocornut
53892ab893 WIP Menus: Fixed manually closing submenu affecting position of the following window (#126) 2015-05-24 21:20:10 +01:00
ocornut
292f08b11e WIP Menus: Fixed some alignment issues with non standard styles. Tweaked menu-bar color (#126) 2015-05-24 21:11:11 +01:00
ocornut
14bcfef041 Merge remote-tracking branch 'origin' into 2015-05-menus
Conflicts:
	imgui.cpp
2015-05-24 17:32:10 +01:00
ocornut
8cfae35042 Added Dummy() helper 2015-05-24 17:30:59 +01:00
ocornut
89d1340225 WIP Menus: Added Enabled/Disabled option for MenuItem() (#126) 2015-05-23 13:54:57 +01:00
ocornut
485832fe06 WIP Menus: Added BeginMainMenuBar()/EndMainMenuBar() helpers. Added to examples. 2015-05-23 13:43:45 +01:00
ocornut
e6b1e39847 WIP Menus: don't clamp windows within display when a position has been explicitly set by user. Menu item spacing uses ItemSpacing. (#126) 2015-05-23 13:43:13 +01:00
ocornut
e7097d6176 WIP Menus: menus now affected by WindowMinSize (#126) 2015-05-23 13:03:09 +01:00
ocornut
882b4a5eb4 Merge remote-tracking branch 'origin' into 2015-05-menus
Conflicts:
	imgui.cpp
2015-05-21 22:51:21 +01:00
ocornut
7fbe6574c6 Removed unnecessary PushTextureId/PushClipRect/PopClipRect/PopTextureId on multiple Begin/End pairs 2015-05-21 22:45:32 +01:00
ocornut
8a6d543bc9 ImDrawList: merge draw command better, cases of multiple Begin/End gets merged properly 2015-05-21 22:43:28 +01:00
ocornut
6a1eba2d0a Fixed appending multiple times to an existing child via multiple calls to same BeginChild/EndChild 2015-05-21 22:21:00 +01:00
ocornut
14ab9708be Removed a few empty lines 2015-05-20 10:31:05 +01:00
ocornut
df276b82da Updated FAQ for usage of ## to display empty label 2015-05-19 23:33:55 +01:00
ocornut
e43c5cd3d3 InputText: Fixed cursor generating a zero-width wireframe rectangle turning into a division by zero. 2015-05-18 23:42:12 +01:00
ocornut
0cdd050cd7 WIP Menus: fixed recycling menu level during the same frame (#126)
We could also enforce "clearing" the window and recycle immediate which
sort of work, but it would be a less tested code path.
2015-05-18 21:26:46 +01:00
ocornut
6da8a77fa3 WIP Menus: tidying up, fixed hovering in parent popup menu item from child popup (individual popups acts as hovering barrier) (#126) 2015-05-18 19:41:02 +01:00
ocornut
9bdacaf08d WIP Menus: click again to toggle + allow hovering in same menuset even outside of a menubar (#126) 2015-05-18 19:12:36 +01:00
ocornut
75ec4841df WIP Menus: menu opens on press (not release), uses popup style hovering, allow switch between menus at parent site (#126) 2015-05-18 18:44:15 +01:00
ocornut
e674df8101 Merge remote-tracking branch 'origin' into 2015-05-menus 2015-05-18 16:45:55 +01:00
ocornut
097fe51f97 Hovering require to hover same child window. Reverted 860cf578f5 (December 3), replaced by a flag resize grip.
Might break something if you have childs overlapping non-childs.
2015-05-18 16:42:55 +01:00
ocornut
060f879816 Tweak internal ButtonBehavior() to ease passing extra options 2015-05-18 16:39:37 +01:00
ocornut
7184de24b8 WIP Menus: scrolling section of the window is clipped by the menu bar (#126) 2015-05-18 15:54:56 +01:00
ocornut
a17c930d1f WIP Menus: Added example menu, move app examples to a sub-menu (#126)
NB: menus do not react on click yet, with popup-style blocking of other
inputs yet
2015-05-17 23:19:05 +01:00
ocornut
09abf11e56 WIP Menus: BeginMenuBar() return false on window without a menu bar (#126) 2015-05-17 23:13:53 +01:00
ocornut
4bd43bdb35 Renamed ImGuiWindowFlags_Menu to ImGuiWindowFlags_ChildMenu 2015-05-17 22:28:57 +01:00
ocornut
7f3f3891c0 WIP Menus: fixed case where zero-sized display (e.g. minimised window) clips popups/menus and asserted (#126) 2015-05-17 22:15:40 +01:00
ocornut
88d7b3de23 WIP Menus: fixed hovering handling of menus from menu bars (#126) 2015-05-17 17:21:49 +01:00
ocornut
f2b738648f WIP Menus: menu bars. Still inconsistency with hovering scheme. Will probably follow what Windows does. (#126). 2015-05-17 17:13:45 +01:00
ocornut
6251d37987 WIP Menus: further fixes for resizing (#126) 2015-05-17 15:48:56 +01:00
ocornut
f44526cc45 Selectable(): horizontal filling not declared to ItemSize() so Selectable(),SameLine() works and we can best auto-fit the window 2015-05-17 13:09:46 +01:00
ocornut
e912bcb36d Comments 2015-05-17 12:10:57 +01:00
ocornut
ecda785cbc Popups: fix to allow child popups to be opened from a normal window without an intermediate popup window. 2015-05-15 23:57:43 +01:00
ocornut
4250357ed2 Selectable: using window->WindowPadding() to work within non-padded child windows 2015-05-15 22:39:52 +01:00
ocornut
79a95256e8 Window: fixed auto-fit calculation mismatch of whether a scrollbar will be added by maximum height clamping.
Also honor NoScrollBar in the case of height clamping, not adding extra
horizontal space.
2015-05-15 22:36:31 +01:00
ocornut
3115e546aa Style editor: fixed slider for indent spacing. 2015-05-15 21:55:54 +01:00
ocornut
c1b55991c0 Window: fixed child window sizing lag + minimum size clamping lag 2015-05-15 21:40:45 +01:00
ocornut
70f83a3a65 Popups: child popups (menus) hidden on their first frame the same way as regular popup 2015-05-15 20:35:28 +01:00
ocornut
81937d34a8 Popups: made OpenPopup()/close loops reclaim focus and update popup position. It is generally a mistake but it's now more easy to understand 2015-05-15 17:29:42 +01:00
ocornut
fa0f0f4507 ImVector: tweak growth strategy 2015-05-15 13:14:46 +01:00
ocornut
1fe2906923 Metrics: do not count free(NULL) calls. Settings: contiguous allocations for ImGuiIniData. 2015-05-15 12:45:35 +01:00
ocornut
900394a612 Metrics: metrics window shows popups list 2015-05-15 12:24:05 +01:00
ocornut
222a9231bb Examples: Console: example uses standard malloc/free, makes more sense as a copy & pastable example 2015-05-15 12:09:34 +01:00
ocornut
d9ca8f3145 Added IO.MetricsAllocs counter (number of memory allocations 2015-05-15 12:05:05 +01:00
ocornut
d9b2a90773 Popups: fixed child windows within popups vs handling of sub menus. Added examples. 2015-05-15 11:30:51 +01:00
ocornut
748072c045 Popups: identifying popups by their id to avoid conflict when recycling popup durnig same same (CloseCurrentPopup followed by Open+Begin) 2015-05-14 15:15:17 +01:00
ocornut
e57ee2852a Comments 2015-05-14 11:32:12 +01:00
ocornut
1e4c22c206 Added io.MetricsActiveWindows counter (#213) 2015-05-12 16:08:34 +01:00
ocornut
5df542c3c0 ImFontAtlas: doesn't clear input data, left to the application. (#224) 2015-05-12 15:16:12 +01:00
ocornut
4b088ec7e8 ImFontAtlas: Fix toward allowing to add extra font without clearing existing one (need to comment out ClearInputData) (#224) 2015-05-12 15:10:36 +01:00
ocornut
9d9cf31972 ImFontAtlas: added ClearFonts(), making the different clear funcs more explicit (#224) 2015-05-12 14:53:29 +01:00
ocornut
ad79db32c7 Window title text centering tweaks, RenderTextClipped() now has different args for pos_max and clip_max #222 2015-05-12 14:02:45 +01:00
ocornut
356a37edcf Added window title text horizontal alignment option (#222),, ImGuiAlign_ type for future use. 2015-05-12 11:49:24 +01:00
ocornut
03720acaff Merge remote-tracking branch 'origin' into 2015-05-menus 2015-05-12 10:11:14 +01:00
ocornut
9be3319653 Tweaks, comments around ImFontAtlas
Removed unsigned int from API
2015-05-12 09:08:47 +01:00
ocornut
9e307d60e3 Merge remote-tracking branch 'origin' into 2015-05-menus 2015-05-11 21:45:13 +01:00
ocornut
515e0c6122 Cleanup, merged duplicate code into a function 2015-05-11 21:44:50 +01:00
ocornut
317744489f WIP Menus: sub-menu arrow alignment take account of extension by other widgets (#126) 2015-05-11 20:58:07 +01:00
ocornut
5082182790 Merge remote-tracking branch 'origin' into 2015-05-menus
Conflicts:
	imgui.h
2015-05-11 20:39:19 +01:00
ocornut
ba7a4fc034 WIP Menus: minor cleanup using a ImGuiSimpleColumns helper type (#126) 2015-05-11 20:34:52 +01:00
ocornut
7fb704d308 WIP intermediary branch commit for menus, submenus (some large inconsistencies remaining in API + need cleanup) (#126)
May remove the ImGuiWindowFlags_Menu alltogether
2015-05-11 19:52:02 +01:00
ocornut
79198fd6a5 Default item width for AlwaysAutoResize windows expressed as a factor of font height 2015-05-11 19:47:01 +01:00
ocornut
34aad73fd8 Added ImGuiCol_TextDisabled 2015-05-11 19:36:32 +01:00
ocornut
141ac8beab Tweaks 2015-05-11 18:28:30 +01:00
omar
33a2fd368a Merge pull request #218 from paperManu/inputNFlags
InputFloat2/3/4, InputInt2/3/4: Added extra_flags parameter.
2015-05-11 16:54:12 +01:00
Emmanuel Durand
b3faed610d Renamed flags to extra_flags in last commit 2015-05-11 11:40:08 -04:00
ocornut
fcd08ed8d4 BeginPopup() API had to be changed! :( Proper support for stacked popups, leading into menus (wip #126) 2015-05-11 15:57:02 +01:00
Emmanuel Durand
94b7c9e307 Input text flags added to InputFloatN and InputIntN 2015-05-11 10:15:22 -04:00
Stefano Cristiano
99a1a85f1f Example fix PopStyleVar on Vertical Slider to avoid assertion
Adding an explicit ImGui::PopStyleVar to avoid assertion in
CheckStacksSize
2015-05-11 14:45:49 +02:00
ocornut
4a41ce9414 InputText: make sure Ctrl+V has ONLY the control key pressed (follow up to #214) + tidying 2015-05-11 09:29:10 +01:00
ocornut
c2c43928a9 Untabifiy 2015-05-11 09:26:53 +01:00
ghassanpl
bb2d3a8b41 * make sure letter-key shortcuts have ONLY the control key pressed (fixes bug for AltGr->Ctrl+Alt on windows) 2015-05-10 22:41:28 +02:00
ocornut
6c1084eaa1 Shutdown() test for g.IO.Fonts not being NULL to allow workarounds in case of using multiple contexts #207 2015-05-09 10:27:03 +01:00
ocornut
f293bec97c Added style.ScrollbarRounding #212 2015-05-09 10:13:56 +01:00
ocornut
d23709ce35 Merge remote-tracking branch 'origin' into 2015-05-menus 2015-05-09 10:02:48 +01:00
ocornut
9fe654c6e4 Assert on modifiers stack size mismatch between Begni()/End() pairs #204
Experimenting with this. It's helpful but not happy with the idea of
ImGui asserting on that sort of user error.
2015-05-09 09:59:46 +01:00
ocornut
debe6522bb Examples: test for tooltip over popup. 2015-05-07 19:00:17 +01:00
ocornut
33e8fb85cf Allow stacking popups, not really useful yet (wip #126) 2015-05-07 18:43:08 +01:00
ocornut
dd2a578012 Added ImGuiSetCond_Appearing to test the hidden->visible transition. 2015-05-07 18:39:23 +01:00
ocornut
f46557d2d6 MenuItem() draft for popups, with Selected option (wip #126) 2015-05-07 17:21:48 +01:00
ocornut
c36172ebef Tweak RenderCheckMark() 2015-05-07 17:11:32 +01:00
ocornut
85b8967291 Added RenderCheckMark() helper following the font size
Pretty ugly, not sure what's the right way to solve that automatically,
better shown as an "icon" so it doesn't have to necessarily look like
the font.
2015-05-07 17:06:07 +01:00
ocornut
13c3f11c66 Comments (#209) 2015-05-07 11:36:16 +01:00
ocornut
fbbe7fee53 Fix "Debug" window stealing focus/popup #208 #209 @thevaber 2015-05-07 11:24:51 +01:00
ocornut
25d8c1af91 Removed inline marker #210 2015-05-07 10:48:05 +01:00
ocornut
e7ffcea33d Removed style.AutoFitPadding, using style.WindowPadding makes more sense (the default values were already the same). 2015-05-03 14:26:47 +01:00
ocornut
b1b23d6ca9 Autofit cancel out one worth of vertical spacing for correct symmetry (group and tooltip already do that) 2015-05-03 13:52:53 +01:00
ocornut
0ca7926b94 Popup auto-border doesn't spread to its childs #197 2015-05-03 13:04:43 +01:00
ocornut
a3a10d4a3c Popup have borders by default #197 attenuated border alpha in default theme 2015-05-03 12:17:53 +01:00
ocornut
47e875314b Plot: overlay label clipped within frame when bigger than frame 2015-05-03 11:32:39 +01:00
ocornut
d84b5737a6 Popups, Tooltips: fit within display. Hidden during size calculation. Fixed popups flicker when changing size.
Big change, needed reorder of Begin(). May trigger new bugs.
2015-05-02 18:22:46 +01:00
ocornut
99e315d2b2 Fix for width of child windows with scrollbar (broken 376a6a5af0) 2015-05-02 18:14:24 +01:00
ocornut
221f36e116 Comments, tweaks, metrics window tweak 2015-05-02 17:54:25 +01:00
ocornut
a3560b274e Tidying up Begin(): using local copy of 'flags' for brevity 2015-05-02 17:45:54 +01:00
ocornut
6ca4b31bf8 Fixed popup resizing (broken 376a6a5af0) 2015-05-02 15:54:35 +01:00
ocornut
a906738ba7 Renamed Visible->Active internally 2015-05-02 13:20:50 +01:00
ocornut
1b5795c96d InputText: fixed incorrect edit state after text buffer is modified by user through callback #206 2015-05-02 12:45:53 +01:00
ocornut
81bf614821 Fix window size after collapsing (broken 376a6a5af0) 2015-05-02 12:35:34 +01:00
ocornut
7fac4013a4 Build fix 2015-05-02 12:22:52 +01:00
ocornut
4e292bf67d Tidying up Begin(): separated blocks needed for auto-resize so it can be moved above position calculation later 2015-05-02 12:20:06 +01:00
ocornut
376a6a5af0 Tidying up Begin() separated blocks needed for auto-resize so it can be moved above position calculation later
Being cautious again. Hopefully didn't break anything.
2015-05-02 12:08:24 +01:00
ocornut
46f55fe6f6 Tidying up Begin() 2015-05-02 10:46:24 +01:00
ocornut
3f7f256752 Tidying up. Re-arranged the (first_begin_of_the_frame) blocks in Begin() for further changes.
Being cautious.
2015-05-02 10:32:32 +01:00
ocornut
19f7bf90f8 Examples: AutoResize demo doesn't use TextWrapped() 2015-05-01 21:01:54 +01:00