public void Align(Region parent) { border.Region.Position = alignment.GetTargetRegion(parent, border.Region, Padding.Zero).Position; filling.Region.Position = new Vector2(border.Region.Position.X, border.Region.Position.Y); slider.Region.Position = new Vector2(GetPositionByPercentage(previousPercentage), border.Region.Position.Y + (border.Region.Size.Y / 2) - slider.Region.Size.Y / 2); }
internal void AlignAsPortrait(Region viewPort) { Region offSetRegion = Region.Empty; foreach (var child in controls) { var parentRegion = new Region(this.Region.Position, new Vector2(this.Region.Size.X, child.Region.Size.Y)) + offSetRegion; var targetRegion = ControlAlignment.GetTargetRegion(parentRegion, child.Region, Padding.Zero); targetRegion += new Region(0, child.Padding.Top, 0, 0); this.activeAlignments.Add(child.AddTransformation( ControlAlignment.Transition.CreateTransition(child.Region, targetRegion))); offSetRegion = new Region(0, (targetRegion.Position.Y - this.Region.Position.Y) + child.Region.Size.Y + child.Padding.Bottom, 0, 0); } VirtualSize = new Vector2(Region.Size.X, offSetRegion.Position.Y); }