Esempio n. 1
0
        public void RemoveSong(QueuedTrack t)
        {
            if (t == null)
            {
                return;
            }

            int i = Playlist.IndexOf(t);

            Playlist.Remove(t);
            playingListLoaded = false;

            if (playerState != PlayerStates.Stopped && CurrentTrackNumber == i)
            {
                StopPlayer();

                if (i >= Playlist.Count)
                {
                    CurrentTrackNumber = 0;
                }

                if (isLooping && playerState != PlayerStates.Stopped)
                {
                    PlayCurrentSongAsync();
                }
            }
        }
Esempio n. 2
0
        static public QueuedTrack FindQueuedTrack(View v)
        {
            Grid        g = (Grid)v.Parent;
            QueuedTrack t = (QueuedTrack)g.BindingContext;

            return(t);
        }
Esempio n. 3
0
        public SongNotes(TransportViewModel tvm, QueuedTrack qt)
        {
            InitializeComponent();

            this.qt  = qt;
            this.tvm = tvm;

            snd = (SongNotesData)this.BindingContext;

            SetSongInfo();
        }
Esempio n. 4
0
 static public string LoadNotes(QueuedTrack qt)
 {
     if (Application.Current.Properties.ContainsKey(qt.FullPath))
     {
         return((string)Application.Current.Properties[qt.FullPath]);
     }
     else
     {
         return(null);
     }
 }
Esempio n. 5
0
        public void MoveSongUp(QueuedTrack t)
        {
            int i = Playlist.IndexOf(t);

            if (i > 0)
            {
                Playlist.Move(i, i - 1);
            }
            else
            {
                Playlist.Move(i, Playlist.Count - 1);
            }
        }
Esempio n. 6
0
        private void RightSongPressed(object sender, EventArgs e)
        {
            PersistentData.SaveNotes(qt, snd.Notes);

            int i = tvm.Playlist.IndexOf(qt) + 1;

            if (i >= tvm.Playlist.Count)
            {
                i = 0;
            }

            qt = tvm.Playlist[i];

            SetSongInfo();
        }
Esempio n. 7
0
#pragma warning restore AvoidAsyncVoid

        private void Notes_Clicked(object sender, EventArgs e)
        {
            PersistentData.Save();
            Navigation.PushAsync(new SongNotes(TransportVMInstance, QueuedTrack.FindQueuedTrack((View)sender)));
        }
Esempio n. 8
0
        private void DownPosition_Clicked(object sender, EventArgs e)
        {
            QueuedTrack t = QueuedTrack.FindQueuedTrack((View)sender);

            TransportVMInstance.MoveSongUp(t);
        }
Esempio n. 9
0
 private void DeleteSong_Clicked(object sender, EventArgs e)
 {
     TransportVMInstance.RemoveSong(QueuedTrack.FindQueuedTrack((View)sender));
 }
Esempio n. 10
0
 static public void SaveNotes(QueuedTrack qt, string notes)
 {
     Application.Current.Properties[qt.FullPath] = notes;
 }
Esempio n. 11
0
        private void SongDownPosition_Clicked(object sender, EventArgs e)
        {
            QueuedTrack t = QueuedTrack.FindQueuedTrack((View)sender);

            tvm.MoveSongUp(t);
        }
Esempio n. 12
0
        private void DeleteSong_Clicked(object sender, EventArgs e)
        {
            QueuedTrack t = QueuedTrack.FindQueuedTrack((View)sender);

            tvm.RemoveSong(t);
        }