| 4909 | } |
| 4910 | |
| 4911 | static void AddWindowToSortBuffer(ImVector<ImGuiWindow*>* out_sorted_windows, ImGuiWindow* window) |
| 4912 | { |
| 4913 | out_sorted_windows->push_back(window); |
| 4914 | if (window->Active) |
| 4915 | { |
| 4916 | int count = window->DC.ChildWindows.Size; |
| 4917 | ImQsort(window->DC.ChildWindows.Data, (size_t)count, sizeof(ImGuiWindow*), ChildWindowComparer); |
| 4918 | for (int i = 0; i < count; i++) |
| 4919 | { |
| 4920 | ImGuiWindow* child = window->DC.ChildWindows[i]; |
| 4921 | if (child->Active) |
| 4922 | AddWindowToSortBuffer(out_sorted_windows, child); |
| 4923 | } |
| 4924 | } |
| 4925 | } |
| 4926 | |
| 4927 | static void AddDrawListToDrawData(ImVector<ImDrawList*>* out_list, ImDrawList* draw_list) |
| 4928 | { |