Files
Vocaluxe/Vocaluxe.UI/Screens/ScreenMain/CControllerScreenMain.cs

56 lines
2.6 KiB
C#

using System;
using Vocaluxe.UI.AbstractElements;
using Vocaluxe.UI.BasicElements.Button;
namespace Vocaluxe.UI.Screens.ScreenMain
{
public class CControllerScreenMain: CController
{
private CControllerElementButton _BtnSingController;
private CControllerElementButton _BtnPartyController;
private CControllerElementButton _BtnOptionsController;
private CControllerElementButton _BtnProfilesController;
private CControllerElementButton _BtnExitController;
public override void RegisterChild(CController child, string id)
{
Enum.TryParse(id, true, out EScreenMainComponents parsedId);
switch (parsedId)
{
case EScreenMainComponents.BtnSing:
_BtnSingController = child as CControllerElementButton ?? throw new ArgumentException("BtnSing must be a button element");
_BtnSingController.Clicked += BtnSingClicked;
break;
case EScreenMainComponents.BtnParty:
_BtnPartyController = child as CControllerElementButton ?? throw new ArgumentException("BtnParty must be a button element");
_BtnPartyController.Clicked += BtnPartyClicked;
break;
case EScreenMainComponents.BtnOptions:
_BtnOptionsController = child as CControllerElementButton ?? throw new ArgumentException("BtnOptions must be a button element");
_BtnOptionsController.Clicked += BtnOptionsClicked;
break;
case EScreenMainComponents.BtnProfiles:
_BtnProfilesController = child as CControllerElementButton ?? throw new ArgumentException("BtnProfiles must be a button element");
_BtnProfilesController.Clicked += BtnProfilesClicked;
break;
case EScreenMainComponents.BtnExit:
_BtnExitController = child as CControllerElementButton ?? throw new ArgumentException("BtnExit must be a button element");
_BtnExitController.Clicked += BtnExitClicked;
break;
case EScreenMainComponents.Unknown:
break;
default:
throw new ArgumentOutOfRangeException();
}
}
public event EventHandler BtnSingClicked;
public event EventHandler BtnPartyClicked;
public event EventHandler BtnOptionsClicked;
public event EventHandler BtnProfilesClicked;
public event EventHandler BtnExitClicked;
}
}