omar
222b7ddbfa
Texture-based thick lines: Tweaks, fix for truetype builder.
2020-07-08 17:38:01 +02:00
Ben Carter
741ab74b55
Texture-based thick lines: Improvements to code for drawing anti-aliased lines using textures
...
Moved line width into a constant
Removed test code (now in imgui-tests)
Improved matching between geometry and texture rendering at non-integer sizes
2020-07-08 17:38:01 +02:00
Ben Carter
1d3c3070d8
Texture-based thick lines: Initial version of AA line drawing using textures (press SHIFT to enable)
2020-07-08 17:38:01 +02:00
Ben Carter
8e4046e13b
Atlas build use GetCustomRectByIndex() + comments, rename, and shallow merge from tex_antialiasing_lines branch.
2020-07-08 17:25:40 +02:00
omar
ab4ef822f0
Version 1.78 WIP
2020-06-30 16:56:09 +02:00
Rokas Kupstys
0738611559
Misc: Bunch of code formatting changes suggested by a pass running 'astyle'
2020-06-30 16:37:21 +02:00
omar
9418dcb693
Version 1.77
...
+ fix minor clang-tidy warnings which seems reasonable
2020-06-29 15:54:28 +02:00
omar
8ead38c100
Clang: Reduce uses of __has_warning for overall sanity, as compilers are hostile to software targetting multiple compiler version.
2020-06-18 17:02:24 +02:00
omar
704723744e
Disabled latest overzealous warnings from Clang
2020-06-18 16:19:51 +02:00
ocornut
c658cba22b
Comments, reworded some !(xxx && xxx) complex expression to be a little less confusing.
2020-06-15 18:06:48 +02:00
ocornut
64d8d302fb
ImDrawList: Fixed VtxOffset change leading to unnecessary leading empty ImDrawCmd in certain cases.
2020-06-10 19:16:14 +02:00
ocornut
84862ec78e
ImDrawList, ImDrawListSplitter, Columns: Fixed an issue where changing channels with different TextureId, VtxOffset would incorrectly apply new settings to draw channels. ( #3129 , #3163 )
2020-06-08 20:58:30 +02:00
ocornut
3bef743df4
ImDrawList: Clarifying and guarateeing that CmdBuffer.back()->UserCallback should be always be NULL.
2020-06-08 20:58:30 +02:00
ocornut
b1f2eacdf3
ImDrawList: Prefixed internal functions with underscore, renamed UpdateClipRect() to _OnChangedClipRect(), UpdateTextureID() -> _OnChangedTextureID()
2020-06-08 20:58:30 +02:00
ocornut
117d57df5b
ImDrawList: Additional comments and extracted bits into ImDrawList::PopUnusedDrawCmd()
2020-06-08 20:58:29 +02:00
ocornut
a6bb047bab
ImDrawList: Store header/current ImDrawCmd in instance to simplify merging code. Amend 0320e72
, toward #3163 , #3129
2020-06-08 19:36:02 +02:00
ocornut
f6120f8e16
ImDrawList, ImDrawListSplitter, Columns: Fixed an issue where starting a split when current VtxOffset was not zero would lead to draw commands with wrong VtxOffset. ( #259
2020-06-06 21:31:31 +02:00
ocornut
41f47c853b
ImDrawList: Amend 0320e72
removed an unnecessary test.
2020-06-06 20:35:29 +02:00
ocornut
0320e7257b
ImDrawList: Small refactor to create empty command when beginning the frame, allowing to simplify some functions.
...
+ Missing clearing two fields in ClearFreeMemory() (was hamrless)
2020-06-06 20:27:24 +02:00
ocornut
003153b3ac
ImDrawList: Tweaks to make style consistent (using pointers, same local names). Added comments. Should be no-op.
2020-06-06 20:26:04 +02:00
thedmd
e22e3f300a
ImDrawList: Fixed an issue when draw command merging or cancelling while crossing the VtxOffset boundary would lead to draw command being emitted with wrong VtxOffset value. ( #3129 , #3163 , #3232 )
2020-06-06 18:54:53 +02:00
ocornut
41e8837f59
Comments, adding some spacing in ImVec2() constructors.
2020-06-02 18:13:54 +02:00
ocornut
417ac68f82
Internals: AddPolyline: Add spaces for consistency, renaming.
2020-05-18 12:07:53 +02:00
Maru
6b80bd9cc3
Fix GetGlyphRangesKorean() end-range to end at 0xD7A3 (instead of 0xD79D). ( #348 , #3217 )
...
https://en.wikipedia.org/wiki/Hangul_Syllables
2020-05-11 18:01:42 +02:00
Clownacy
a2454f2a45
Use __NEWLIB__ instead of __SWITCH__ and __CYGWIN__ for alloca.h-detection ( #3070 )
...
Cygwin uses newlib, so it's covered by the __NEWLIB__ check.
You can see how it defines __NEWLIB__ here: https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=newlib/configure.in#l453
2020-04-28 16:15:00 +02:00
Ryan Pavlik
8cbff5ccb2
Fix various typos. ( #3161 )
...
(found by Debian's lintian on a package that uses imgui.)
(found by codespell.)
2020-04-28 16:10:15 +02:00
omar
5ac5d3674f
Removed unncessary ID (first arg) of ImFontAtlas::AddCustomRectRegular() function.
2020-04-23 19:27:04 +02:00
omar
e8c986b34e
Version 1.77 WIP
2020-04-14 14:55:50 +02:00
omar
5503c0a12e
Version 1.76
...
+ fixed PVS warning, update demo binaries, update readme image
2020-04-12 20:18:47 +02:00
omar
cc0d4e346a
Misc: Added an explicit compile-time test for non-scoped IM_ASSERT() macros to redirect users to a solution + fixed our stb wrappers.
...
+ Nav: Use nav layer enum, comments.
2020-04-03 12:41:33 +02:00
omar
bdd31ec4db
Internal: Refactor: Moved RenderColorRectWithAlphaCheckerboard() to imgui_draw.cpp, tweaked signature.
2020-03-18 22:48:23 +01:00
omar
0bbbbe0f68
Internal: Refactor: Moved RenderArrow, RenderBullet, RenderCheckMark to imgui_draw.cpp, changed RenderCheckMark to avoid using ImGui context
2020-03-18 22:48:22 +01:00
ocornut
339ffd25a9
Internals: Renamed ImBoolVector to ImBitVector, added low-level loose function to replicate the behavior include a help SetBitRange() function.
2020-03-13 18:50:02 +01:00
ocornut
0850b46c88
ImDrawList: Internals: Added IM_DRAWLIST_ARCFAST_TESSELLATION_MULTIPLIER setting.
2020-03-03 19:26:27 +01:00
omar
0283a6e566
ImFont: Demo, Store Used4kPagesMap[] map in ImFont to facilitate iteration on all codepoints with a large value of IM_UNICODE_CODEPOINT_MAX. ( #2815 )
...
Demo uses IsGlyphRangeUnused()
2020-03-03 18:53:29 +01:00
Sam Hocevar
c8ea0a017d
Unicode: UTF32 support improvements ( #2541 , #2538 , #2815 )
...
- Make ImWchar32 unsigned.
- Fix Win32 version of ImFileOpen by including windows.h sooner.
- Make ImGuiIO::AddInputCharacterUTF16() more robust by disallowing illegal
surrogate pairs.
- Allow pushing higher plane codepoints through ImGuiIO::AddInputCharacter().
- Minor cleaning up in the high-plane Unicode support.
- Fix Clang -Wunreachable-code warning
2020-03-03 18:53:29 +01:00
Cloud Wu
6d59653e82
Unicode: full Unicode Support (6 squashed commits) ( #2541 , #2538 )
...
fix build for WideCharToMultiByte
[3181ff1e] Full Unicode Support
[6c9e73ac] Fix ImTextCountUtf8BytesFromChar and ImTextCharToUtf8, these APIs assume the input is an unicode code point, not UTF-16
[ba85665b] Add AddInputCharacterUTF16 for windows backend to handle WM_CHAR
[fafdcaf0] Use Windows API to convert UTF-16 for ImFileOpen
[dc7d5925] Use windows API to convert UTF-16 for clipboard
2020-03-03 18:53:29 +01:00
Omar
09329ea4e6
Fix Clang 9.0 zealous warnings
2020-02-17 15:29:59 +01:00
omar
d284a6cffc
InputText: Fixed password fields displaying ASCII spaces as blanks. Fixed non-ASCII space occasionally creating unnecessary empty polygons. ( #2149 , #515 )
2020-02-11 19:28:11 +01:00
omar
ccaec1a270
Version 1.76 WIP
2020-02-11 16:56:56 +01:00
omar
d16c87a5b1
Internals: Minor renaming
2020-02-10 16:46:51 +01:00
omar
58b3e02b95
Version 1.75
...
Comments
2020-02-10 14:02:41 +01:00
omar
d37d25470a
Added IMGUI_DISABLE compile-time definition to make all headers and sources empty.
2020-02-09 17:08:33 +01:00
Rokas Kupstys
9cff4d6e5e
Columns: ImDrawList::Channels* functions now work inside columns.
...
Use a private splitter in columns, paving way for removal of obsolete ImDrawList::Channels* functions.
2020-01-31 12:02:56 +01:00
omar
5363af7f47
AddCircle, AddCircleFilled: Add auto-calculation of circle segment counts (amends)
...
Tweak default max error value, Changelog, comments, path-fast for 12 segments circles, made LUT store ImU8
2020-01-23 14:55:05 +01:00
Ben Carter
051ce0765e
AddCircle, AddCircleFilled: Add auto-calculation of circle segment counts
2020-01-23 14:52:48 +01:00
omar
d581939387
Removed trailing spaces.
2020-01-06 15:24:16 +01:00
omar
f70204f2f4
Minor bits, placeholder aimed at facilitating merging of Tables branch into Docking
2019-12-19 16:53:44 +01:00
omar
a610f1da52
Bezier Tweaks, fixed parameter order of 3831d50
2019-12-17 16:43:05 +01:00
Rokas Kupstys
3831d50ab9
Add ImBezierClosestPoint() function which returns a point on bezier curve which is closed to a specified point.
2019-12-17 16:22:02 +01:00
Ben Carter
0e74103659
ImDrawList: Add AddNgon(), AddNgonFilled() API.
2019-12-09 11:23:06 +01:00
Ben Carter
697f15e339
Added PrimUnreserve() API. Obsoleted calling ImDrawList::PrimReserve() with a negative count.
2019-12-08 16:06:32 +01:00
omar
8342e5b91a
Amend previous commits (added ImGuiMouseCursor_NotAllowed enum + new cursors in GLFW 3.4)
...
Amend b5cad20d79
, 945a509773
+ unrelated minor typos
2019-12-05 15:45:30 +01:00
omar
abaf0256b8
Version 1.75 WIP
...
Added message to font file loading assert.
2019-11-28 20:58:16 +01:00
omar
bdce833636
Version 1.74
2019-11-25 18:38:53 +01:00
omar
51e2e9b239
ImVector: Added shrink() helper. ImFont::RenderText minor optimisation for debug build. Misc: Metrics shows tab names because we now have them.
2019-11-22 14:06:51 +01:00
omar
51a02b319c
Added IM_UNICODE_CODEPOINT_MAX. Changed specs of ImFontAtlas::AddCustomRectRegular() (breaking change).
2019-11-21 14:13:17 +01:00
stfx
6bf5aed325
Declaration and assignment can be joined, Member function may be 'const'. ( #2875 )
2019-10-29 17:11:49 +01:00
Rokas Kupstys
c863c1f6a1
Clean up number rounding. Now it is more obvious what code is doing. ( #2862 )
...
Add IM_ROUND() macro
Replace IM_FLOOR(n + 0.5f) and ImFloor(n + 0.5f) with IM_ROUND(n)
2019-10-29 17:05:25 +01:00
Rokas Kupstys
714fe29d1a
Replace manual flooring with IM_FLOOR() macro. ( #2850 )
...
Macro is used to ensure that flooring operation is always inlined even in debug builds. __forceinline does not force inlining in /Od builds with MSVC.
(cherry picked from commit bc165df6fd
)
2019-10-18 16:18:38 +02:00
omar
c262276988
Version 1.74 WIP
2019-09-30 14:27:56 +02:00
omar
d5efe16157
Version 1.73
2019-09-24 17:02:26 +02:00
omar
52deb415e0
Internal: Refactored internal RenderMouseCursor so colors can be specified. ( #2614 )
2019-09-23 14:53:49 +02:00
omar
098591fe4c
ImDrawListSplitter: fixed an issue merging channels if the last submitted draw command used a different texture. ( #2506 )
2019-09-17 20:27:15 +02:00
omar
3b014d0c31
Merge branch 'features/ellipsis_rendering'
...
# Conflicts:
# imgui.cpp
2019-09-17 12:07:30 +02:00
omar
7d5a17e5e4
Remove trailing spaces (grep for ' \r?$' in visual studio)
2019-09-17 11:33:18 +02:00
omar
57623c15dd
Font: Narrow ellipsis: various minor stylistic tweaks ( #2775 )
2019-09-17 11:13:34 +02:00
Rokas Kupstys
45405f0dc9
Font: implement a way to draw narrow ellipsis without relying on hardcoded 1 pixel dots. ( #2775 )
...
This changeset implements several pieces of the puzzle that add up to a narrow ellipsis rendering.
## EllipsisCodePoint
`ImFontConfig` and `ImFont` received `ImWchar EllipsisCodePoint = -1;` field. User may configure `ImFontConfig::EllipsisCodePoint` a unicode codepoint that will be used for rendering narrow ellipsis. Not setting this field will automatically detect a suitable character or fall back to rendering 3 dots with minimal spacing between them. Autodetection prefers codepoint 0x2026 (narrow ellipsis) and falls back to 0x0085 (NEXT LINE) when missing. Wikipedia indicates that codepoint 0x0085 was used as ellipsis in some older windows fonts. So does default Dear ImGui font. When user is merging fonts - first configured and present ellipsis codepoint will be used, ellipsis characters from subsequently merged fonts will be ignored.
## Narrow ellipsis
Rendering a narrow ellipsis is surprisingly not straightforward task. There are cases when ellipsis is bigger than the last visible character therefore `RenderTextEllipsis()` has to hide last two characters. In a subset of those cases ellipsis is as big as last visible character + space before it. `RenderTextEllipsis()` tries to work around this case by taking free space between glyph edges into account. Code responsible for this functionality is within `if (text_end_ellipsis != text_end_full) { ... }`.
## Fallback (manually rendered dots)
There are cases when font does not have ellipsis character defined. In this case RenderTextEllipsis() falls back to rendering ellipsis as 3 dots, but with reduced spacing between them. 1 pixel space is used in all cases. This results in a somewhat wider ellipsis, but avoids issues where spaces between dots are uneven (visible in larger/monospace fonts) or squish dots way too much (visible in default font where dot is essentially a pixel). This fallback method obsoleted `RenderPixelEllipsis()` and this function was removed. Note that fallback ellipsis will always be somewhat wider than it could be, however it will fit in visually into every font used unlike what `RenderPixelEllipsis()` produced.
2019-09-17 11:13:07 +02:00
omar
c4ff1b3578
ImDrawList: clarified the name of many parameters so reading the code is a little easier. ( #2740 )
2019-08-22 17:43:57 +02:00
omar
f624455d7b
Version 1.73 WIP
2019-08-01 10:57:13 -07:00
omar
6a0d0dab5a
Version 1.72b (patch for nav)
2019-07-31 14:31:06 -07:00
omar
9183e7c426
Version 1.73 WIP
2019-07-29 15:54:32 -07:00
omar
ecb9b1e2eb
Version 1.72
2019-07-27 18:15:07 -07:00
omar
51853292cc
ImDrawList: Using ImDrawCornerFlags instead of int in various apis.
...
Demo: Using ImGuiColorEditrFlags instead of int.
2019-07-23 10:41:48 -07:00
omar
d52c6316c8
Renamed ImFontAtlas::CustomRect to ImFontAtlasCustomRect. Keep redirection typedef (will obsolete).
2019-07-12 11:58:46 +02:00
omar
82711251b6
Internals: ImGuiListClipper using absolute coordinate (instead of relative one). Minor no-op tweaks + ImDrawListSplitter assert
2019-06-29 20:10:55 +02:00
omar
1dd322c6fb
Style: Attenuated default opacity of ImGuiCol_Separator in Classic and Light styles.
2019-06-27 12:20:29 +02:00
omar
dd41df3e98
Word-wrapping: Fixed overzealous word-wrapping when glyph edge lands exactly on the limit. Because of this, auto-fitting exactly unwrapped text would make it wrap. (fixes initial 1.15 commit, 78645a7d
).
2019-06-18 12:50:34 +02:00
omar
e9b92d1cef
Disable -Wpragmas warning in GCC to avoid relying on version checks, as unusual/forks/mods don't appear to always have same warning<>version. ( #2618 )
...
+ Fix version number in imgui.h
2019-06-17 11:32:00 +02:00
omar
b82e99c032
ImDrawList: Fixed CloneOutput() helper crashing. Also removed unnecessary risk from ImDrawList::Clear(), draw lists are being clear before use each frame anyway. ( #1860 )
2019-06-17 11:06:36 +02:00
omar
2645a2516f
ImDrawList::ChannelsSplit(), ImDrawListSlitter: Fixed an issue with merging draw commands between channels 0 and 1. ( #2624 ) Introduced by cef88f6aae
.
2019-06-14 12:07:43 +02:00
omar
5286ecb8a7
Version 1.72 WIP
2019-06-14 11:58:58 +02:00
omar
2da1c66d15
Version 1.71 + comments
2019-06-12 18:30:06 +02:00
omar
4597632662
Readme, comments, dear imgui prefixes
2019-06-11 16:11:36 +02:00
omar
a9b5c834b6
ImDrawListSplitter: Don't merge draw commands when crossing a VtxOffset boundary + Renamed fields ImDrawChannels to consistently suggest those are internal structures.
2019-06-11 11:49:31 +02:00
omar
d8435c7710
ImDrawListSplitter: Fix idx offset when merging ( cef88f6
) ( #2591 )
2019-06-10 15:02:44 +02:00
omar
afa3978ff6
Internals: Added drawlist and color arg to RenderArrow(), RenderBullet(). Reordered args for RenderPixelEllipsis.
2019-06-07 17:32:51 +02:00
omar
cef88f6aae
ImDrawListSplitter: Support merging consecutive draw commands straddling two channels. Support zero-init.
2019-05-31 12:06:35 +02:00
omar
f1f4b42d91
ImDrawListSplitter: extracted out of ImDrawList. Down the line we may obsolete the ImDrawList functions and encourage users to store the splitter aside, in the meanwhile ImDrawList holds a splitter.
...
(This will allow columns/table to recurse.)
2019-05-31 12:03:10 +02:00
omar
8abf1313aa
ImDrawList: Fix broken channel splitting (another issue when the first channel is empty) ( #2591 ) + fixed warnings with newer VS
2019-05-31 11:47:00 +02:00
Sebastian Krzyszkowiak
bff7202ff2
Include <alloca.h> also when __SWITCH__ is defined ( #2595 )
...
Fixes compilation with devkitPro for Nintendo Switch
2019-05-31 01:52:22 +02:00
omar
42c98c5eea
ImDrawList: Fix broken channel splitting (broken by d1e8b69
) ( #2591 )
2019-05-30 18:47:46 +02:00
omar
d1e8b698d0
ImDrawList: Added ImDrawCmd::VtxOffset value to support large meshes (64k+ vertices) using 16-bits indices. To enable the feature, the renderer back-end needs to set 'io.BackendFlags |= ImGuiBackendFlags_HasVtxOffset' and honor the ImDrawCmd::VtxOffset field. Otherwise the value will always be zero. This has the advantage of preserving smaller index buffers and allowing to execute on hardware that do not support 32-bits indices.
...
ImDrawList: Added ImDrawCmd::IdxOffset value, equivalent to summing element count for each draw command. This is provided for convenience and consistency with VtxOffset. (#2591 )
2019-05-29 16:13:38 +02:00
omar
40b9e5e0b4
ImDrawList: Store initial flags for the frame in ImDrawListSharedData, reducing code duplication in setting up the flags.
2019-05-29 14:26:03 +02:00
omar
34b881eb12
ImFontGlyphRangesBuilder: Fixed unnecessarily over-sized buffer, which incidentally was also not fully cleared. Fixed edge case overflow when adding character 0xFFFF. ( #2568 )
2019-05-21 12:45:27 +02:00
omar
f242cd4d8a
Fixed GCC mem-access warnings ( #2565 )
...
+ using "if defined" more consistently for Clang.
2019-05-19 17:15:14 +02:00
Lionel Landwerlin
679cf7434e
Fix undefined behavior ( #2561 )
2019-05-18 10:43:30 +02:00
omar
42fc563fed
Version 1.71 WIP + fixed minor typo
2019-05-07 16:36:08 +02:00
omar
d1d5075b66
Version 1.70
2019-05-06 14:17:39 +02:00
omar
0f2852806c
Amend 48a09a7
with changelog, breaking changes, tweak demo code for spacing. ( #2518 )
2019-04-29 12:44:17 +02:00
Richard Mitton
4c0f34fd5d
Improved algorithm for mitre joints on thick lines
2019-04-29 12:07:03 +02:00
omar
c8fd4afd75
Misc: Added IM_MALLOC/IM_FREE macros mimicking IM_NEW/IM_DELETE so user doesn't need to revert to using the ImGui::MemAlloc()/MemFree() calls directly.
2019-04-05 20:20:24 +02:00
omar
8dab7ac021
InputText: Made Shift+Tab consistently do nothing regardless of whether the back-end emits both char and keys or just keys. ( #2467 , #1336 )
2019-04-03 11:14:34 +02:00
Nicolas Noble
d9568c717d
Silencing -Wstack-protector ( #2459 )
2019-03-31 01:35:03 -07:00
omar
221bf93a55
Comments, todo list, remove trailing spaces.
2019-03-17 00:56:21 +01:00
omar
cf2c52282d
Version 1.70 WIP
2019-03-15 13:07:30 +01:00
omar
55c02099c5
Version 1.69, comments, typos
2019-03-13 15:29:43 +01:00
omar
a92c587c75
Added GetGlyphRangesVietnamese() helper. ( #2403 )
2019-03-11 22:02:59 +01:00
Bruce Mitchener
b5d57a6615
Fix typos. ( #2413 )
2019-03-09 10:10:17 +01:00
Elias Daler
c3ea1748dc
Fix -Wconversion warning ( #2379 )
...
The warning was caused by implicit conversion from pointer type which
NULL has to non-pointer type, e.g. if ImTextureID is long int
2019-02-24 18:35:52 +01:00
omar
677e64e71e
Internal: InputText: Comments. Renamed internal member. Renamed ImGuiStb->ImStb.
2019-02-20 21:34:08 +01:00
omar
257f5d204e
Version 1.69 WIP
2019-02-20 00:11:36 +01:00
omar
3c15dffc94
Version 1.68
2019-02-19 12:50:46 +01:00
omar
f5bf6e38d2
Font: Fixed assert when specifying duplicate/overlapping ranges within a same font. ( #2353 , #2233 )
2019-02-18 12:11:46 +01:00
omar
93d1179805
Examples: Extracted gamepad code into ImGui_ImplGlfw_UpdateGamepads(). Renamed matching Win32 function for consistency.
...
Added more link to nothing's oversample document. Spacing bits.
2019-02-14 19:29:09 +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
4b41d3b280
ImFont: Rearranged members toward an optimal CalcTextSize() loop. Removed comments from destructor. Made constructor more explicit.
2019-02-09 15:54:47 +01:00
omar
d38f4dc143
Tabs: Non-docking tab bars are storing names to allow tab list button + whole style scaling. Added ImGuiTabBarFlags_TabListPopupButton flag to show a popup button on manual tab bars. Locking FramePadding for the scope of a tab-bar to avoid sheering/clipping of tab item. Made scaling of tab ellipsis less awkward. ( #261 , #351 )
2019-02-05 13:23:44 +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
4e8e177cac
Persistently fixing some PVS-Studio static analyzer false positive warnings.
2019-01-27 16:35:48 +01:00
omar
c3c2cd1e82
Fix various XCode and PVS-Studio static analyzer warnings ( #2309 )
2019-01-27 16:18:23 +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
bebb07f12d
ImFontAtlas: Added 0x2000-0x206F general punctuation range to default ChineseFull/ChineseSimplifiedCommon ranges. ( #2093 )
2019-01-17 16:48:11 +01:00
omar
8cbb91261e
ImDrawList: Fixed AddCircle(), AddCircleFilled() angle step being off, which was visible when drawing a "circle" with a small number of segments (e.g. an hexagon). ( #2287 ) [@baktery]
...
+ Demo tweaks
2019-01-16 17:47:49 +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
95ee99e6aa
Version 1.68 WIP
2019-01-15 20:19:05 +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
651130002f
ImFontAtlas: Fixed allocating for last bit (would only affect is that last codepoint is a multiple of 32). ( #2270 )
2019-01-11 15:25:43 +01:00
omar
9a9712807e
ImFontAtlas: Rewrote stb_truetype based builder.
...
- Atlas width is now properly based on total surface rather than glyph count (unless overridden with TexDesiredWidth).
- Fixed atlas builder so missing glyphs won't influence the atlas texture width. (#2233 )
- Fixed atlas builder so duplicate glyphs (when merging fonts) won't be included in the rasterized atlas.
2019-01-10 22:23:05 +01:00
omar
9ad341902d
ImDrawList: Optimized some of the functions for performance of debug builds where non-inline function call cost are non-negligible.
2019-01-08 17:37:22 +01:00
omar
acfa4050ec
Tweak changelog + tweak internal render helper functions.
2019-01-07 16:43:55 +01:00
omar
5cb7ce2085
Renamed ImFont::GlyphRangesBuilder to ImFontGlyphRangesBuilder. Keep redirection typedef (will obsolete).
2019-01-06 16:59:51 +01:00
omar
8399fb5071
Changed ImGuiCol_ChildBg to (0,0,0,0) in Dark style instead of (1,1,1,0), to match other styles. Shouldn't have any effect for the end-user.
2018-12-19 15:20:18 +01:00
omar
54a60aaa40
Added BETA api for Tab Bar/Tabs widgets. ( #261 , #351 ) (merged this feature from the from Docking branch so it can be used earlier as as standalone feature)
...
- Added BeginTabBar(), EndTabBar(), BeginTabItem(), EndTabItem(), SetTabItemClosed() API.
- Added ImGuiTabBarFlags flags for BeginTabBar().
- Added ImGuiTabItemFlags flags for BeginTabItem().
- Style: Added ImGuiCol_Tab, ImGuiCol_TabHovered, ImGuiCol_TabActive, ImGuiCol_TabUnfocused, ImGuiCol_TabUnfocusedActive colors.
- Demo: Added Layout->Tabs demo code.
- Demo: Added "Documents" example app showcasing possible use for tabs.
2018-12-11 12:36:47 +01:00
omar
10e13dd6bb
Version 1.67 WIP (again, this time IMGUI_VERSION_NUM has leeway for another hot-fix).
2018-12-03 12:19:23 +01:00
omar
801645d350
Version 1.66b (will revisit how to change IMGUI_VERSION_NUM across versions, this commit reduces the numerical IMGUI_VERSION_NUM compared to the commit on Nov 22).
2018-12-03 10:17:17 +01:00
omar
84238240d6
Fixed a text rendering/clipping bug introduced in 1.66 (on 2018-10-12, commit ede3a3b9
) that affect single ImDrawList::AddText() calls with single strings larger than 10k. Text/TextUnformatted() calls were not affected, but e.g. InputText() was.
2018-11-30 23:47:23 +01:00
Sebastian Krzyszkowiak
3335e6688f
Include <alloca.h> also on macOS (and osxcross) ( #2218 )
2018-11-30 16:57:09 +01:00
omar
d27ffefbd4
Version 1.67 WIP
2018-11-22 18:59:57 +01:00
omar
da3c4330c1
Version 1.66
2018-11-22 15:11:52 +01:00
Elias Daler
8606d9fa11
Fix Clang/GCC's null-conversion warning: ( #2081 )
...
The warning is "implicit conversion of NULL constant to 'unsigned int' [-Wnull-conversion]". Happens when ImTextureID is not a void*, but unsigned int, for example.
2018-10-15 17:07:06 +02:00
omar
ede3a3b92d
Fixes crash introduced in previous commit 9cf94d5
.
2018-10-12 13:29:13 +02:00
omar
9cf94d5dd6
RenderText(), InputTextMultiline(): Optimization for large text by using memchr, wmemchr, wcschr when appropriate.
2018-10-12 12:34:47 +02:00
omar
5719b23e01
ImDrawList: Fixed AddConvexPolyFilled() undefined behavior when passing points_count smaller than 3, in particular, points_count==0 could lead to a memory stomp if the draw list was previously empty.
2018-09-21 10:00:26 +02:00
ice1000
201fcfd2e5
Internals: Replace unsigned short with ImWchar when dealing with character storage. ( #2078 )
2018-09-11 22:00:57 +02:00
omar
eb7033e75b
Version 1.66 WIP
2018-09-06 21:44:59 +02:00
omar
e0cab5664a
Version 1.65
2018-09-06 15:58:58 +02:00
omar
5a679a45cc
Renamed stb_truetype.h to imstb_truetype.h, stb_textedit.h to imstb_textedit.h, and stb_rect_pack.h to imstb_rectpack.h. ( #1718 , #2036 )
...
If you were conveniently using the imgui copy of those STB headers in your project, you will have to update your include paths.
The reason for this change is to avoid conflicts for projects that may also be importing their own copy of the STB libraries. Note that imgui's copy of stb_textedit.h is modified.
2018-09-06 15:58:25 +02:00