75 lines
1.9 KiB
C#
75 lines
1.9 KiB
C#
using System.Collections.ObjectModel;
|
|
using Aurora.Proto.Party;
|
|
using Aurora.Models.Media;
|
|
using Aurora.Services.Settings;
|
|
|
|
namespace Aurora.Design.Views.Party
|
|
{
|
|
public enum PartyStateV2
|
|
{
|
|
SelectingHost,
|
|
InParty,
|
|
Hosting,
|
|
Connecting,
|
|
}
|
|
|
|
public class BasePartyViewModel : BasePlayerViewModel
|
|
{
|
|
protected string _hostname;
|
|
private PartyStateV2 _state;
|
|
private ObservableCollection<Member> _members;
|
|
private ObservableCollection<BaseMedia> _queue;
|
|
private BaseMedia _selectedMedia;
|
|
private ISettingsService _settingsService;
|
|
private int _selectedTabIndex;
|
|
|
|
public BasePartyViewModel(
|
|
ISettingsService settingsService
|
|
)
|
|
{
|
|
_members = new ObservableCollection<Member>();
|
|
_queue = new ObservableCollection<BaseMedia>();
|
|
|
|
this._settingsService = settingsService;
|
|
|
|
}
|
|
|
|
public int SelectedTabIndex
|
|
{
|
|
get { return _selectedTabIndex; }
|
|
set { SetProperty(ref _selectedTabIndex, value); }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Publc property for the members list
|
|
/// </summary>
|
|
/// <value></value>
|
|
public ObservableCollection<Member> Members
|
|
{
|
|
get
|
|
{
|
|
return _members;
|
|
}
|
|
set
|
|
{
|
|
SetProperty(ref _members, value);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Public property for the currently selected song.
|
|
/// </summary>
|
|
/// <value></value>
|
|
public BaseMedia SelectedSong
|
|
{
|
|
get { return _selectedMedia; }
|
|
set { SetProperty(ref _selectedMedia, value); }
|
|
}
|
|
|
|
public PartyStateV2 State
|
|
{
|
|
get { return _state; }
|
|
set { _state = value;}
|
|
}
|
|
}
|
|
} |