| 5990 | } |
| 5991 | |
| 5992 | static void AddWindowToSortBuffer(ImVector<ImGuiWindow*>* out_sorted_windows, ImGuiWindow* window) |
| 5993 | { |
| 5994 | out_sorted_windows->push_back(window); |
| 5995 | if (window->Active) |
| 5996 | { |
| 5997 | int count = window->DC.ChildWindows.Size; |
| 5998 | ImQsort(window->DC.ChildWindows.Data, (size_t)count, sizeof(ImGuiWindow*), ChildWindowComparer); |
| 5999 | for (int i = 0; i < count; i++) |
| 6000 | { |
| 6001 | ImGuiWindow* child = window->DC.ChildWindows[i]; |
| 6002 | if (child->Active) |
| 6003 | AddWindowToSortBuffer(out_sorted_windows, child); |
| 6004 | } |
| 6005 | } |
| 6006 | } |
| 6007 | |
| 6008 | static void AddWindowToDrawData(ImGuiWindow* window, int layer) |
| 6009 | { |