MCPcopy Create free account
hub / github.com/InteractiveComputerGraphics/SPlisHSPlasH / FlattenIntoSingleLayer

Method FlattenIntoSingleLayer

extern/imgui/imgui.cpp:5245–5261  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5243}
5244
5245void ImDrawDataBuilder::FlattenIntoSingleLayer()
5246{
5247 int n = Layers[0].Size;
5248 int size = n;
5249 for (int i = 1; i < IM_ARRAYSIZE(Layers); i++)
5250 size += Layers[i].Size;
5251 Layers[0].resize(size);
5252 for (int layer_n = 1; layer_n < IM_ARRAYSIZE(Layers); layer_n++)
5253 {
5254 ImVector<ImDrawList*>& layer = Layers[layer_n];
5255 if (layer.empty())
5256 continue;
5257 memcpy(&Layers[0][n], &layer[0], layer.Size * sizeof(ImDrawList*));
5258 n += layer.Size;
5259 layer.resize(0);
5260 }
5261}
5262
5263static void SetupViewportDrawData(ImGuiViewportP* viewport, ImVector<ImDrawList*>* draw_lists)
5264{

Callers 1

RenderMethod · 0.80

Calls 2

resizeMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected