MCPcopy Create free account
hub / github.com/DISTRHO/Cardinal / FlattenIntoSingleLayer

Method FlattenIntoSingleLayer

plugins/Cardinal/src/DearImGui/imgui.cpp:4394–4410  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4392}
4393
4394void ImDrawDataBuilder::FlattenIntoSingleLayer()
4395{
4396 int n = Layers[0].Size;
4397 int size = n;
4398 for (int i = 1; i < IM_ARRAYSIZE(Layers); i++)
4399 size += Layers[i].Size;
4400 Layers[0].resize(size);
4401 for (int layer_n = 1; layer_n < IM_ARRAYSIZE(Layers); layer_n++)
4402 {
4403 ImVector<ImDrawList*>& layer = Layers[layer_n];
4404 if (layer.empty())
4405 continue;
4406 memcpy(&Layers[0][n], &layer[0], layer.Size * sizeof(ImDrawList*));
4407 n += layer.Size;
4408 layer.resize(0);
4409 }
4410}
4411
4412static void SetupViewportDrawData(ImGuiViewportP* viewport, ImVector<ImDrawList*>* draw_lists)
4413{

Callers 1

RenderMethod · 0.80

Calls 2

resizeMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected