|
|
|
@ -9558,6 +9558,8 @@ ImGuiWindowSettings* ImGui::CreateNewWindowSettings(const char* name) |
|
|
|
|
ImGuiContext& g = *GImGui; |
|
|
|
|
g.SettingsWindows.push_back(ImGuiWindowSettings()); |
|
|
|
|
ImGuiWindowSettings* settings = &g.SettingsWindows.back(); |
|
|
|
|
if (const char* p = strstr(name, "###")) // Skip to the "###" marker if any. We don't skip past to match the behavior of GetID()
|
|
|
|
|
name = p; |
|
|
|
|
settings->Name = ImStrdup(name); |
|
|
|
|
settings->ID = ImHashStr(name); |
|
|
|
|
return settings; |
|
|
|
@ -9743,10 +9745,7 @@ static void SettingsHandlerWindow_WriteAll(ImGuiContext* ctx, ImGuiSettingsHandl |
|
|
|
|
const ImGuiWindowSettings* settings = &g.SettingsWindows[i]; |
|
|
|
|
if (settings->Pos.x == FLT_MAX) |
|
|
|
|
continue; |
|
|
|
|
const char* name = settings->Name; |
|
|
|
|
if (const char* p = strstr(name, "###")) // Skip to the "###" marker if any. We don't skip past to match the behavior of GetID()
|
|
|
|
|
name = p; |
|
|
|
|
buf->appendf("[%s][%s]\n", handler->TypeName, name); |
|
|
|
|
buf->appendf("[%s][%s]\n", handler->TypeName, settings->Name); |
|
|
|
|
buf->appendf("Pos=%d,%d\n", (int)settings->Pos.x, (int)settings->Pos.y); |
|
|
|
|
buf->appendf("Size=%d,%d\n", (int)settings->Size.x, (int)settings->Size.y); |
|
|
|
|
buf->appendf("Collapsed=%d\n", settings->Collapsed); |
|
|
|
|