osu/osu.Game/Graphics/Processing/RatioAdjust.cs

30 lines
792 B
C#
Raw Normal View History

2016-08-26 03:28:23 +00:00
//Copyright (c) 2007-2016 ppy Pty Ltd <contact@ppy.sh>.
2016-08-26 08:27:49 +00:00
//Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
2016-08-26 03:28:23 +00:00
using System;
2016-08-26 03:28:23 +00:00
using osu.Framework.Graphics.Containers;
using OpenTK;
using osu.Framework.Graphics;
2016-08-26 03:28:23 +00:00
namespace osu.Game.Graphics.Processing
{
class RatioAdjust : Container
2016-08-26 03:28:23 +00:00
{
public override bool Contains(Vector2 screenSpacePos) => true;
public RatioAdjust()
{
RelativeSizeAxes = Axes.Both;
}
2016-08-26 03:28:23 +00:00
protected override void Update()
{
base.Update();
Vector2 parent = Parent.DrawSize;
Scale = new Vector2(Math.Min(parent.Y / 768f, parent.X / 1024f));
2016-09-10 17:23:26 +00:00
Size = new Vector2(1 / Scale.X);
2016-08-26 03:28:23 +00:00
}
}
}