Commit Graph

957 Commits

Author SHA1 Message Date
ocornut
eb4ffd5dbd Added ImGuiListClipper helper to avoid using CalcListClipping() directly. 2015-05-31 12:33:24 +01:00
ocornut
446d8abfb0 ListBoxHeader() can return false. Also made ListBox() only use public API. 2015-05-31 11:54:00 +01:00
ocornut
df37df821e RetWindowCollapsed() to IsWindowCollapsed() for consistency. Kept inline indirection. 2015-05-31 11:52:57 +01:00
ocornut
0539be7067 Added IMGUI_DISABLE_OBSOLETE_FUNCTIONS 2015-05-31 11:17:58 +01:00
ocornut
03ff2faacb Comments 2015-05-31 11:01:22 +01:00
ocornut
9417df2a26 Renamed IsRectClipped to IsRectVisible for consistency. Note that return value is opposite! Kept inline redirection function (will obsolete) 2015-05-31 09:12:07 +01:00
ocornut
5ea23977f7 Fixed uninitialized fields in constructor - wouldn't have caused a problem (thanks Coverity!) 2015-05-29 14:54:33 +01:00
ocornut
f1f3424cdd Popups WantCaptureMouse active when popups/menus are active + using tracked mouse button ownership when mouse down (#126) 2015-05-29 11:42:35 +01:00
ocornut
73d1126bf4 Examples: OCD tweaks, a sign that we are near the release! 2015-05-29 11:15:24 +01:00
ocornut
448b262b37 Examples: Comments. 2015-05-29 11:11:50 +01:00
ocornut
83770e5e40 Examples: Tweaks. Usnig sprintf() in user-copiable code. 2015-05-29 11:05:17 +01:00
ocornut
0db6bac590 Examples: Tweaks, demo code creating graph data actually creates data at the correct rate. 2015-05-29 11:01:53 +01:00
ocornut
9ace617e7e Examples: Tiding up. Moved Dragging example higher up. 2015-05-29 10:52:45 +01:00
ocornut
616a7e6c61 Examples: Using a helper function for ? markers 2015-05-29 10:44:30 +01:00
ocornut
d86785ac98 Examples: Fixed Simple Layout example always showing. Using BeginPopupContextItem(). 2015-05-29 10:36:33 +01:00
ocornut
4144c59ce4 Added Simple Layout example applet 2015-05-29 10:29:26 +01:00
ocornut
15a26a479b Fixed auto-filling child window using WindowMinSize at their minimum size, irrelevant. Using an arbitrary small number instead. 2015-05-29 10:24:03 +01:00
ocornut
f0781d3a24 Added GetItemsLineHeightWithSpacing() helper. 2015-05-29 09:00:34 +01:00
ocornut
aaefe462bb Popups: calling OpenPopup() on already open popup doesn't close it's child (#126)
Fixed previous commit.
2015-05-28 23:47:01 +01:00
ocornut
78dc54ab3d Popups: calling OpenPopup() on already open popup doesn't close it's child (#126)
It think it makes more sense? Maybe?
Note that calling OpenPopup() every frame probably doesn't make sense.
2015-05-28 23:37:11 +01:00
ocornut
7847100ad8 Tweak BeginMenu() code 2015-05-28 23:14:25 +01:00
ocornut
733e079081 Moved CloseInactivePopups() and tweaked. 2015-05-28 23:04:29 +01:00
Branimir Karadžić
123fd73c8c Merge remote-tracking branch 'upstream/master' 2015-05-27 22:01:37 -07:00
Branimir Karadžić
cd9244ab15 Define STBTT_DEF extern when STBTT not compiled with ImGui. 2015-05-27 16:12:52 -07:00
ocornut
dcc7df2b21 Added BeginPopupContextVoid() helper for completeness (#126) 2015-05-27 23:28:53 +01:00
ocornut
235cca4f97 Fix to allow opening popup from a left-click on void or another window (because left-click would normally override focus immediately) (#126)
Neither appears to be really useful frankly.
2015-05-27 23:24:39 +01:00
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
e3f2ad728a Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
Conflicts:
	examples/directx11_example/imgui_impl_dx11.cpp
2015-05-21 22:57:29 +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
e9b6e437eb Merge remote-tracking branch 'origin' into 2015-04-indexed-rendering
Conflicts:
	imgui.cpp
	imgui.h
2015-05-15 17:33:04 +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