public PlayListControl(IAimpPlaylist playList, IAimpPlayer player) { InitializeComponent(); listView1.Columns.Add("trackId", "#"); listView1.Columns.Add("trackName", "Name"); listView1.Columns.Add("Duration", "Duration"); listView1.MultiSelect = false; listView1.HeaderStyle = ColumnHeaderStyle.Nonclickable; listView1.View = View.Details; listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); _playList = playList; _player = player; LoadTracks(); playList.Changed += (sender, type) => { if (type.HasFlag(PlaylistNotifyType.AIMP_PLAYLIST_NOTIFY_STATISTICS)) { RefreshTracks(); } }; }
private void PlayListOnChanged(IAimpPlaylist sender, PlaylistNotifyType notifType) { Logger.Instance.AddInfoMessage($"[Event] IAimpPlaylist.Changed: {sender.Id} {sender.Name}"); if (notifType.HasFlag(PlaylistNotifyType.AIMP_PLAYLIST_NOTIFY_STATISTICS)) { } }
public void GetPlayablePlaylist_ShouldReturnPlaylist() { IAimpPlaylist playlist = null; ExecuteInMainThread(() => { var playlistResult = Player.ServicePlaylistManager.CreatePlaylistFromFile(PlaylistPath, true); this.AreEqual(ActionResultType.OK, playlistResult.ResultType); playlist = playlistResult.Result; }); ExecuteInThread(() => { Thread.Sleep(10000); }); ExecuteInMainThread(() => { var result = Player.ServicePlaylistManager.GetPlayablePlaylist(); this.AreEqual(ActionResultType.OK, result.ResultType); this.NotNull(result.Result); playlist.Close(PlaylistCloseFlag.ForceRemove); }); }
public AimpActionResult OnPlaylistAdded(IAimpPlaylist playlist) { listView1.Items.Add(new ListViewItem { Text = playlist.Name, Tag = playlist.Id }); return(new AimpActionResult(ActionResultType.OK)); }
public AimpActionResult OnPlaylistRemoved(IAimpPlaylist playlist) { var item = listView1.Items.Cast <ListViewItem>().FirstOrDefault(c => c.Tag == playlist.Id); if (item != null) { listView1.Items.Remove(item); } return(new AimpActionResult(ActionResultType.OK)); }
public override void SetUp() { base.SetUp(); ExecuteInMainThread(() => { var playlistResult = Player.ServicePlaylistManager.CreatePlaylistFromFile(PlaylistPath, true); this.AreEqual(ActionResultType.OK, playlistResult.ResultType, "playlistResult.ResultType"); this.NotNull(playlistResult.Result, "playlistResult.Result"); _playlist = playlistResult.Result; }); }
private void AddPlayListTab(string id, string name, IAimpPlaylist playList) { var tab = new TabPage(id) { Text = name, Tag = playList }; var pl = new PlayListControl(playList, _aimpPlayer); tab.Controls.Add(pl); tabPlayLists.TabPages.Add(tab); playList.Activated += sender => { tabPlayLists.SelectedTab = tab; }; }
public override void SetUp() { base.SetUp(); ExecuteInMainThread(() => { var playlistResult = Player.ServicePlaylistManager.CreatePlaylistFromFile(PlaylistPath, true); if (playlistResult.ResultType == ActionResultType.OK) { _playlist = playlistResult.Result; } else { TestContext.WriteLine($"Cannot create a playlist: {PlaylistPath}"); } }); }
public override void SetUp() { base.SetUp(); ExecuteInMainThread(() => { var playlistPath = Path.Combine(RootPath, "resources", "issue_19.aimppl4"); var playlistResult = Player.ServicePlaylistManager.CreatePlaylistFromFile(playlistPath, true); if (playlistResult.ResultType == ActionResultType.OK) { _playlist = playlistResult.Result; } else { TestContext.WriteLine($"Cannot create a playlist: {playlistPath}"); } }); }
public void CheckHook_IAimpExtensionPlayerHook_OK() { IAimpPlaylist playList = null; ExecuteInMainThread(() => { var executed = false; var extension = new AimpExtensionPlayerHook(s => { executed = true; this.AreEqual(TrackUrl1, s, "fileUrl", "Source file url and hooked url do not match"); return(true); }); var result = Player.Core.RegisterExtension(extension); AssertOKResult(result.ResultType, "Unable to register a AimpExtensionPlayerHook"); var createPlaylistResult = Player.ServicePlaylistManager.CreatePlaylist("AimpExtensionPlayerHook", true); AssertOKResult(createPlaylistResult.ResultType, "Cannot create a playlist from file"); createPlaylistResult.Result.Add(TrackUrl1, PlaylistFlags.NoCheckFormat, PlaylistFilePosition.CurrentPosition); if (createPlaylistResult.ResultType == ActionResultType.OK) { playList = createPlaylistResult.Result; var r = Player.Play(createPlaylistResult.Result); } }); ExecuteAndWait(() => { Thread.Sleep(25000); }); ExecuteInMainThread(() => { playList?.Close(PlaylistCloseFlag.ForceRemove); }); }
/// <summary> /// Initializes a new instance of the <see cref="AimpPlaylistEventArgs" /> class. /// </summary> /// <param name="playlist">The playlist.</param> public AimpPlaylistEventArgs(IAimpPlaylist playlist) { Playlist = playlist; }
private IAimpPlaylistPreimage GetPlaylistPreimage(IAimpPlaylist pl) { return(pl.PreImage); }
private void SetPlaylistPreimage(IAimpPlaylist pl, IAimpPlaylistPreimage preimage) { pl.PreImage = preimage; }
private void PlAdded(IAimpPlaylist pl) { _playlists.Add($"{pl.Id};{pl.Name}"); }
public AimpActionResult OnPlaylistRemoved(IAimpPlaylist playlist) { return(AimpActionResult.Ok); }
public AimpActionResult OnPlaylistRemoved(IAimpPlaylist playlist) { return(new AimpActionResult(ActionResultType.OK)); }
private void PlRemoved(IAimpPlaylist pl) { _playlists.Remove($"{pl.Id};{pl.Name}"); }