MCPcopy Create free account
hub / github.com/Aegel5/SimpleSwitcher / DockBuilderCopyWindowSettings

Method DockBuilderCopyWindowSettings

imgui_tiny_app/imgui/imgui.cpp:20964–20995  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

20962}
20963
20964void ImGui::DockBuilderCopyWindowSettings(const char* src_name, const char* dst_name)
20965{
20966 ImGuiWindow* src_window = FindWindowByName(src_name);
20967 if (src_window == NULL)
20968 return;
20969 if (ImGuiWindow* dst_window = FindWindowByName(dst_name))
20970 {
20971 dst_window->Pos = src_window->Pos;
20972 dst_window->Size = src_window->Size;
20973 dst_window->SizeFull = src_window->SizeFull;
20974 dst_window->Collapsed = src_window->Collapsed;
20975 }
20976 else
20977 {
20978 ImGuiWindowSettings* dst_settings = FindWindowSettingsByID(ImHashStr(dst_name));
20979 if (!dst_settings)
20980 dst_settings = CreateNewWindowSettings(dst_name);
20981 ImVec2ih window_pos_2ih = ImVec2ih(src_window->Pos);
20982 if (src_window->ViewportId != 0 && src_window->ViewportId != IMGUI_VIEWPORT_DEFAULT_ID)
20983 {
20984 dst_settings->ViewportPos = window_pos_2ih;
20985 dst_settings->ViewportId = src_window->ViewportId;
20986 dst_settings->Pos = ImVec2ih(0, 0);
20987 }
20988 else
20989 {
20990 dst_settings->Pos = window_pos_2ih;
20991 }
20992 dst_settings->Size = ImVec2ih(src_window->SizeFull);
20993 dst_settings->Collapsed = src_window->Collapsed;
20994 }
20995}
20996
20997// FIXME: Will probably want to change this signature, in particular how the window remapping pairs are passed.
20998void ImGui::DockBuilderCopyDockSpace(ImGuiID src_dockspace_id, ImGuiID dst_dockspace_id, ImVector<const char*>* in_window_remap_pairs)

Callers

nothing calls this directly

Calls 2

ImHashStrFunction · 0.85
ImVec2ihClass · 0.85

Tested by

no test coverage detected