haldean
b277cfffc8
Selectable: add support for specifying text alignment on selectables ( #2347 )
...
Adds a style variable to Selectable that allows clients to specify the
text alignment within Selectables, adds a section in the demo to
demonstrate selectable text alignment, and a pair of sliders in the
style editor to change selectable alignment on the fly.
In terms of implementation, this one is extremely simple: Selectable was
already calling an API that supports text alignment, but had hard-coded
it to top-left. This changes that to just pass the style variable
straight through to RenderTextClipped. Backwards-compatibility is
preserved by defaulting the text_align parameter to (0, 0), i.e.,
top-left.
This also fixes a bug with selectable text rendering that caused
right-aligned text in a selectable to be clipped incorrectly, because
the wrong clipping rectangle was being used.
2019-02-14 19:38:57 +01:00
omar
3c07ec6a61
Made it illegal/assert when io.DisplayTime == 0.0f (with an exception for the first frame).
...
Causing too many subtle side-effect, e.g. IsNavInputPressed() would return true multiple times in a row.
2019-02-14 17:14:29 +01:00
omar
2206df9e7a
Demo: Added Auto-Scroll option in Log/Console. Comments. Removed some ImColor() uses.
2019-02-14 14:08:36 +01:00
omar
57a586b4f1
Font: Moved functions to internal block (not enforced). Made ConfigData pointer const. Added link to stb's notes.
2019-02-13 18:21:21 +01:00
omar
417cf2237f
Font: Fixed high-level ImGui::CalcTextSize() used by most widgets from erroneously subtracting 1.0f*scale to calculated text width. Among noticeable side-effects, it would make sequences of repeated Text/SameLine calls not align the same as a single call, and create mismatch between high-level size calculation and those performed with the lower-level ImDrawList api. ( #792 )
2019-02-12 22:43:56 +01:00
omar
a79785c0b9
ImDrawData: Added FramebufferScale field (currently a copy of the value from io.DisplayFramebufferScale).
...
This is to allow render functions being written without pulling any data from ImGuiIO, allowing incoming multi-viewport feature to behave on Retina display and with multiple displays. If you are not using a custom binding, please update your render function code ahead of time, and use draw_data->FramebufferScale instead of io.DisplayFramebufferScale. (#2306 , #1676 )
Examples: Metal, OpenGL2, OpenGL3: Fixed offsetting of clipping rectangle with ImDrawData::DisplayPos != (0,0) when the display frame-buffer scale scale is not (1,1). While this doesn't make a difference when using master branch, this is effectively fixing support for multi-viewport with Mac Retina Displays on those examples. (#2306 ) Also using ImDrawData::FramebufferScale instead of io.DisplayFramebufferScale.
Examples: Clarified the use the ImDrawData::DisplayPos to offset clipping rectangles.
2019-02-11 18:52:08 +01:00
omar
afc36cf802
Window: Fixed initial width of collapsed windows not taking account of contents width (broken in 1.67). ( #2336 , #176 )
2019-02-08 14:34:42 +01:00
omar
f366828dd2
Minor tweaks to reduce false positive of PVS Studio static analyzer.
2019-02-06 13:16:52 +01:00
omar
5bdc7d7a6f
Menus: Tweaked horizontal overlap between parent and child menu (to help convey relative depth) from using style.ItemSpacing.x to style.ItemInnerSpacing.x, the later being expected to be smaller. ( #1086 )
2019-02-06 12:32:10 +01:00
omar
e3dd95d335
Added IsItemActivated() as an extension to the IsItemDeactivated/IsItemDeactivatedAfterEdit functions which are useful to implement variety of undo patterns. ( #820 , #956 , #1875 )
2019-02-06 11:52:42 +01:00
omar
b8c24aff4c
Internals: EndGroup: Removed unnecesary parameter to ItemSize()
2019-02-05 21:16:54 +01:00
omar
521470b3cd
Internals: Removed unnecessary code.
2019-02-05 21:16:32 +01:00
omar
8e44aacc8e
Fonts: Fixed crash if FontGlobalScale is zero. Correctly debug naming default font if not 13 px. Demo: Moved PopupRounding along with other rounding values. Metrics: Displaying indexes with idx to be correct / less misleading.
2019-02-04 23:34:20 +01:00
omar
c23a19c26f
Internals: Exposed internal SetWindowPos to imgui_internal.h (for imgui-test)
2019-02-03 17:29:51 +01:00
omar
ac6d474103
Removed io.DisplayVisibleMin/DisplayVisibleMax (which were marked obsolete and removed from viewport/docking branch already).
2019-02-01 16:37:07 +01:00
omar
5cb7040f66
Internals: Tracking dummy select scope id (currently always zero) to facilitate merging of the range_select branch. ( #1861 )
2019-02-01 12:14:38 +01:00
omar
0d4a2a2cd0
Internals: Track ActiveIdHasBeenPressed (similar to ActiveIdHasBeenEdited). This is currently mostly for the benefit of the range_select branch. ( #1861 )
2019-02-01 12:14:37 +01:00
omar
52a9f8bd3e
Merged from Docking branch: Various small changes, comments, typos fixes, moved blocks. To reduce overall drift. Should be no-op.
2019-02-01 10:26:08 +01:00
omar
fb4f1ff7f6
InputText: Fixed a bug where ESCAPE would be first captured by the Keyboard Navigation code. ( #2321 , #787 )
2019-01-30 15:16:09 +01:00
omar
0a233a505d
imgui-test: Added extra item info callbacks. Using nav_bb for interactions when possible. Comments, Demo tweaks.
2019-01-30 12:53:01 +01:00
Francisco Gallego
aacf993ee1
ImStrncpy: Fixed -Wstringop-truncation warning on GCC8 ( #2323 )
2019-01-30 10:19:40 +01:00
omar
8a4422b2fa
Fixed CloseCurrentPopup() on a child-menu of a modal incorrectly closing the modal. ( #2308 )
2019-01-27 23:54:17 +01:00
omar
13ca2fe845
Silence XCode static analysis false positive ( #2309 )
2019-01-27 23:30:44 +01:00
omar
b26ac92a12
Revert "Added PushID(size_t sz) helper (may not be useful/meaningful for non C/C++ languages)."
...
This reverts commit 20bc06af70
.
2019-01-27 16:43:56 +01:00
omar
f56d9b74cc
Nav: Removed unnecessary test (always failing).
2019-01-27 16:37:02 +01:00
omar
ee3b4f2bf1
Using IM_UNUSED() macro.
2019-01-27 16:23:23 +01:00
omar
c3c2cd1e82
Fix various XCode and PVS-Studio static analyzer warnings ( #2309 )
2019-01-27 16:18:23 +01:00
omar
20bc06af70
Added PushID(size_t sz) helper (may not be useful/meaningful for non C/C++ languages).
2019-01-27 16:18:23 +01:00
omar
c362a96a3f
When resizing from an edge, the border is more visible and better follow the rounded corners. Border rendering moved to RenderOuterBorders so it can be called in a different order for docking. ( #1495 , #822 )
2019-01-23 19:21:25 +01:00
omar
f14f93ef6e
Fixed range-version of PushID() and GetID() not honoring the ### operator to restart from the seed value.
2019-01-21 16:50:27 +01:00
omar
28901dd104
Internals: Tweaks. Comments about PushID/GetID public function.
2019-01-21 16:50:27 +01:00
omar
f994b8aab8
ImHash: Moved crc32 table out of the function so it can be shared, also avoid cases were compiler tries to makes its initialization thread-safe.
2019-01-21 16:50:27 +01:00
Thomas Ruf
1e4cf67a53
avoid floating point exception when _EM_OVERFLOW is enabled ( #2303 )
2019-01-21 16:43:07 +01:00
omar
00ffdb9fa9
ImGuiTextBuffer: Added append() function (unformatted).
2019-01-20 22:21:26 +01:00
omar
2c38b32db1
Removed trailing spaces ( #2038 , #2299 )
2019-01-20 17:56:17 +01:00
omar
f94ba546ba
Added checks for "zero-as-null-pointer-constant" warnings for older Clang ( #2299 , followup to #2277 )
2019-01-20 17:46:00 +01:00
omar
fcd61e0c59
Comments about DLL boundaries and using TLS variables for GImGui. ( #2292 )
2019-01-18 23:04:45 +01:00
omar
06aaf23877
Various tweaks and fixes as suggested by PVS Studio (thanks PVS Studio!)
2019-01-16 16:10:51 +01:00
omar
09f1cb642b
FreeType: Minor tweaks previous commit ( #2285 )
2019-01-15 21:50:43 +01:00
omar
95ee99e6aa
Version 1.68 WIP
2019-01-15 20:19:05 +01:00
omar
b8c6e31c2d
Fixed cursor issue caused by 6890e08b
when calling BeginChild/EndChild multiple times to reappend into a same child window. ( #2282 )
2019-01-15 15:05:56 +01:00
omar
7a5058e3bf
Version 1.67
2019-01-14 17:41:44 +01:00
omar
6e41745f31
Added a bunch of diagnostic ignore to cope with Clang -Weverything being absurd. Also fixed two legit warnings. ( #2277 )
2019-01-13 18:57:46 +01:00
omar
49994ceb6e
FAQ entry, moved ImTextureId, Gallery links.
2019-01-12 19:48:07 +01:00
omar
1f6e0b2f98
ImVector: Made a struct. Using T/T* in the code instead of value_type/iterator. Renamed index_from_pointer() to index_from_ptr() (was not documented, added in 1.63, users not supposed to use ImVector, hopefully not a big deal).
2019-01-10 15:51:08 +01:00
omar
61a99f994e
Minot internal tweaks, comments
2019-01-08 23:11:54 +01:00
omar
f53cd3ee0f
Internals: LowerBound: Use raw pointer typedefs, we never use iterator anywhere else in the codebase.
...
Demo: Typo.
C98 fix.
2019-01-08 17:37:07 +01:00
omar
57b1622afc
Added IMGUI_USE_STB_SPRINTF (undocumented) ( #1038 )
2019-01-08 15:28:33 +01:00
omar
b33977bc15
Tests: Reworking hook prototypes for imgui-test to be faster and multi-context friendly.
2019-01-07 23:59:05 +01:00
omar
3997e8b555
Fixed animated window titles from being updated when displayed in the CTRL+Tab list. + Adding overkill helpers for reusing buffers. ( #787 )
2019-01-07 22:46:42 +01:00