56 lines
2.6 KiB
C#
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;
|
|
|
|
}
|
|
}
|