mirror of
https://github.com/ocornut/imgui.git
synced 2026-08-21 06:41:09 +00:00
DrawList: amend PushDrawFlag() to report reaching capacity.
This commit is contained in:
1
imgui.h
1
imgui.h
@@ -3012,6 +3012,7 @@ struct ImSmallStack_
|
||||
inline T& back() { IM_ASSERT(Size > 0); return LocalData[Size - 1]; }
|
||||
inline void push_back(const T& v) { IM_ASSERT(Size < Capacity); memcpy(&LocalData[Size], &v, sizeof(v)); Size++; }
|
||||
inline void pop_back() { IM_ASSERT(Size > 0); Size--; }
|
||||
inline int capacity() const { return Capacity; }
|
||||
};
|
||||
|
||||
// Flags for ImGuiListClipper (currently not fully exposed in function calls: a future refactor will likely add this to ImGuiListClipper::Begin function equivalent)
|
||||
|
||||
@@ -724,6 +724,7 @@ void ImDrawList::PushDrawFlag(ImDrawFlags flags, bool enabled)
|
||||
{
|
||||
IM_ASSERT((flags & ~ImDrawFlags_AllowInPushScope_) == 0);
|
||||
IM_ASSERT((flags & ImDrawFlags_StrokeMask_) == 0 || (flags & ImDrawFlags_StrokeMask_) == ImDrawFlags_StrokeLegacy);
|
||||
IM_ASSERT_USER_ERROR_RET(_DrawFlagsStack.Size < _DrawFlagsStack.capacity(), "PushDrawFlag() has a depth limit. Contact us.");
|
||||
_DrawFlagsStack.push_back(Flags);
|
||||
if (enabled)
|
||||
Flags |= flags;
|
||||
|
||||
Reference in New Issue
Block a user