Skip to content

Commit

Permalink
more gui fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
malytomas committed Sep 18, 2023
1 parent 7fa55cb commit e32c7b3
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 10 deletions.
8 changes: 2 additions & 6 deletions sources/libengine/gui/layouts/alignment.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,10 @@ namespace cage
void findFinalPosition(const FinalPosition &update) override
{
FinalPosition u(update);
u.renderSize = min(hierarchy->requestedSize, u.renderSize);
for (uint32 a = 0; a < 2; a++)
{
if (data.alignment[a].valid())
{
u.renderPos[a] += (update.renderSize[a] - hierarchy->requestedSize[a]) * data.alignment[a];
u.renderSize[a] = hierarchy->requestedSize[a];
}
}
u.renderPos[a] += (update.renderSize[a] - u.renderSize[a]) * data.alignment[a];
hierarchy->children[0]->findFinalPosition(u);
}
};
Expand Down
8 changes: 4 additions & 4 deletions sources/libengine/gui/layouts/line.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -68,17 +68,17 @@ namespace cage
p.firstOffset = (update.renderSize[data.vertical] - hierarchy->requestedSize[data.vertical]) / 2;
else if (data.first == LineEdgeModeEnum::Flexible && data.last == LineEdgeModeEnum::Flexible)
{
const Real f = (update.renderSize[data.vertical] - er[1]) / (er[0] + er[2]);
const Real f = (update.renderSize[data.vertical] - er[1]) / max(er[0] + er[2], 1);
p.sizeFactors = Vec3(f, 1, f);
p.firstOffset = min(0, update.renderSize[data.vertical] - hierarchy->requestedSize[data.vertical]) / 2;
}
else if (data.first == LineEdgeModeEnum::Flexible || (data.last == LineEdgeModeEnum::Flexible && hierarchy->children.size() == 1))
{
p.sizeFactors[0] = (update.renderSize[data.vertical] - er[1] - er[2]) / er[0];
p.sizeFactors[0] = (update.renderSize[data.vertical] - er[1] - er[2]) / max(er[0], 1);
p.firstOffset = min(0, update.renderSize[data.vertical] - hierarchy->requestedSize[data.vertical]);
}
else if (data.last == LineEdgeModeEnum::Flexible)
p.sizeFactors[2] = (update.renderSize[data.vertical] - er[0] - er[1]) / er[2];
p.sizeFactors[2] = (update.renderSize[data.vertical] - er[0] - er[1]) / max(er[2], 1);
else if (data.first == LineEdgeModeEnum::Empty)
p.firstOffset = update.renderSize[data.vertical] - hierarchy->requestedSize[data.vertical];
p.sizeFactors = max(0, p.sizeFactors);
Expand All @@ -89,7 +89,7 @@ namespace cage
sum += c->requestedSize[data.vertical] * p.sizeFactors[edgeIndex(c)];
if (sum > update.renderSize[data.vertical])
p.sizeFactors *= update.renderSize[data.vertical] / sum;
CAGE_ASSERT(valid(p.sizeFactors));
CAGE_ASSERT(valid(p.sizeFactors) && p.sizeFactors[0].finite() && p.sizeFactors[1].finite() && p.sizeFactors[2].finite());
return p;
}

Expand Down

0 comments on commit e32c7b3

Please sign in to comment.