Survivalcraft API 1.8.2.3 v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
FixedSizePanelWidget.cs
浏览该文件的文档.
1using Engine;
2
3namespace Game {
5 public override void MeasureOverride(Vector2 parentAvailableSize) {
6 Vector2 zero = Vector2.Zero;
7 foreach (Widget child in Children) {
8 if (child.IsVisible) {
9 child.Measure(Vector2.Max(parentAvailableSize - child.MarginHorizontalSumAndVerticalSum, Vector2.Zero));
10 if (child.ParentDesiredSize.X != float.PositiveInfinity) {
11 zero.X = MathUtils.Max(zero.X, child.ParentDesiredSize.X + child.MarginHorizontalSum);
12 }
13 if (child.ParentDesiredSize.Y != float.PositiveInfinity) {
14 zero.Y = MathUtils.Max(zero.Y, child.ParentDesiredSize.Y + child.MarginVerticalSum);
15 }
16 }
17 }
18 DesiredSize = zero;
19 }
20
21 public override void ArrangeOverride() {
22 foreach (Widget child in Children) {
24 }
25 }
26 }
27}
static int Max(int x1, int x2)
readonly WidgetsList Children
static void ArrangeChildWidgetInCell(Vector2 c1, Vector2 c2, Widget widget)
override void MeasureOverride(Vector2 parentAvailableSize)
virtual float MarginVerticalSum
Vector2 ParentDesiredSize
virtual bool IsVisible
virtual float MarginHorizontalSum
Vector2 DesiredSize
virtual Vector2 MarginHorizontalSumAndVerticalSum
Vector2 ActualSize
virtual void Measure(Vector2 parentAvailableSize)
static readonly Vector2 Zero
static Vector2 Max(Vector2 v, float f)