//Copyright (c) 2007-2016 ppy Pty Ltd . //Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE using System; using System.Collections.Generic; using System.Linq; using osu.Framework.Graphics; using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Sprites; using osu.Framework.Graphics.Transformations; using osu.Framework.Input; using osu.Game.Graphics; using OpenTK; using OpenTK.Graphics; using OpenTK.Input; using osu.Framework; namespace osu.Game.GameModes.Menu { public partial class ButtonSystem : Container, IStateful { public Action OnEdit; public Action OnExit; public Action OnDirect; public Action OnSolo; public Action OnSettings; public Action OnMulti; public Action OnChart; public Action OnTest; private FlowContainerWithOrigin buttonFlow; //todo: make these non-internal somehow. internal const float button_area_height = 100; internal const float button_width = 140f; internal const float wedge_width = 20; public const int EXIT_DELAY = 3000; private OsuLogo osuLogo; private Drawable iconFacade; private Container buttonArea; private Box buttonAreaBackground; private Button backButton; private Button settingsButton; List