mirror of
https://github.com/LanZhan-Harmony/WindowsMusicPlayer-TheUntamedMusicPlayer.git
synced 2026-05-07 03:25:48 +08:00
63 lines
2.0 KiB
C#
63 lines
2.0 KiB
C#
using UntamedMusicPlayer.Contracts.Models;
|
|
using UntamedMusicPlayer.Models;
|
|
|
|
namespace UntamedMusicPlayer.ViewModels;
|
|
|
|
public sealed class OnlineArtistsViewModel
|
|
{
|
|
public OnlineArtistsViewModel() { }
|
|
|
|
public async void PlayButton_Click(IBriefOnlineArtistInfo info)
|
|
{
|
|
var songList = await IBriefOnlineArtistInfo.GetSongsByArtistAsync(info);
|
|
if (songList.Count == 0)
|
|
{
|
|
return;
|
|
}
|
|
Data.PlayQueueManager.SetNormalPlayQueue($"OnlineSongs:Artist:{info.Name}", songList);
|
|
Data.MusicPlayer.PlaySongByInfo(songList[0]);
|
|
}
|
|
|
|
public async void PlayNextButton_Click(IBriefOnlineArtistInfo info)
|
|
{
|
|
var songList = await IBriefOnlineArtistInfo.GetSongsByArtistAsync(info);
|
|
if (songList.Count == 0)
|
|
{
|
|
return;
|
|
}
|
|
if (Data.PlayQueueManager.CurrentQueue.Count == 0)
|
|
{
|
|
Data.PlayQueueManager.SetNormalPlayQueue($"OnlineSongs:Artist:{info.Name}", songList);
|
|
Data.MusicPlayer.PlaySongByInfo(songList[0]);
|
|
}
|
|
else
|
|
{
|
|
Data.PlayQueueManager.AddSongsToNextPlay(songList);
|
|
}
|
|
}
|
|
|
|
public async void AddToPlayQueueButton_Click(IBriefOnlineArtistInfo info)
|
|
{
|
|
var songList = await IBriefOnlineArtistInfo.GetSongsByArtistAsync(info);
|
|
if (songList.Count == 0)
|
|
{
|
|
return;
|
|
}
|
|
if (Data.PlayQueueManager.CurrentQueue.Count == 0)
|
|
{
|
|
Data.PlayQueueManager.SetNormalPlayQueue($"OnlineSongs:Artist:{info.Name}", songList);
|
|
Data.MusicPlayer.PlaySongByInfo(songList[0]);
|
|
}
|
|
else
|
|
{
|
|
Data.PlayQueueManager.AddSongsToEnd(songList);
|
|
}
|
|
}
|
|
|
|
public async void AddToPlaylistButton_Click(IBriefOnlineArtistInfo info, PlaylistInfo playlist)
|
|
{
|
|
var songList = await IBriefOnlineArtistInfo.GetSongsByArtistAsync(info);
|
|
await Data.PlaylistLibrary.AddToPlaylist(playlist, songList);
|
|
}
|
|
}
|