Esempio n. 1
0
        public static IToplistBrowse WaitForCompletion(this IToplistBrowse browse)
        {
            var reset = new ManualResetEvent(browse.IsComplete);
            EventHandler <UserDataEventArgs> handler = (s, e) => reset.Set();

            browse.Completed += handler;
            reset.WaitOne();
            browse.Completed -= handler;
            return(browse);
        }
Esempio n. 2
0
        protected void ToplistsMenu()
        {
            ConsoleEx.WriteLine("=== Toplist ===", ConsoleColor.Cyan);
            IToplistBrowse toplistBrowse = Session
                                           .Browse(ToplistType.Tracks)
                                           .WaitForCompletion();

            for (int i = 0; i < toplistBrowse.Tracks.Count; i++)
            {
                ITrack track = toplistBrowse.Tracks[i];

                ConsoleEx.Write("{0:00} : {1,-20}", ConsoleColor.White, (i + 1), ConsoleEx.Truncate(track.Name, 20));
                ConsoleEx.Write(" {0,-16}", ConsoleColor.Gray, ConsoleEx.Truncate(track.Album.Artist.Name, 15));
                ConsoleEx.WriteLine(" {0,-16}", ConsoleColor.DarkGray, ConsoleEx.Truncate(track.Album.Name, 15));
            }
        }