MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / CalcResizePosSizeFromAnyCorner

Function CalcResizePosSizeFromAnyCorner

lib/imgui/imgui.cpp:4919–4931  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4917}
4918
4919static void CalcResizePosSizeFromAnyCorner(ImGuiWindow* window, const ImVec2& corner_target, const ImVec2& corner_norm, ImVec2* out_pos, ImVec2* out_size)
4920{
4921 ImVec2 pos_min = ImLerp(corner_target, window->Pos, corner_norm); // Expected window upper-left
4922 ImVec2 pos_max = ImLerp(window->Pos + window->Size, corner_target, corner_norm); // Expected window lower-right
4923 ImVec2 size_expected = pos_max - pos_min;
4924 ImVec2 size_constrained = CalcWindowSizeAfterConstraint(window, size_expected);
4925 *out_pos = pos_min;
4926 if (corner_norm.x == 0.0f)
4927 out_pos->x -= (size_constrained.x - size_expected.x);
4928 if (corner_norm.y == 0.0f)
4929 out_pos->y -= (size_constrained.y - size_expected.y);
4930 *out_size = size_constrained;
4931}
4932
4933struct ImGuiResizeGripDef
4934{

Callers 1

UpdateManualResizeMethod · 0.85

Calls 2

ImLerpFunction · 0.85

Tested by

no test coverage detected