All pastes #2047657 Raw Edit

Untitled

public text v1 · immutable
#2047657 ·published 2011-04-18 07:44 UTC
rendered paste body
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MPD;

namespace mpc_win
{
    class Program
    {

        Connection conn;

        public Program()
        {
            // Opret connection objektet
            conn = new Connection("viborg.ip-drankerne.dk", "", 6600);
        }

        static void Main(string[] args)
        {
            Program p = new Program();

            // Opret forbindelse til MPD serveren.
            if (p.conn.Connect())
            {
                Console.WriteLine(p.conn.musicInfo);
            }

            Connection.UpdateDelegate d = new Connection.UpdateDelegate(p.Update);
            p.conn.RegisterUpdateDelegate(d);

        }

        void Update()
        {
            
            // Update Status
            if (conn.prevStatusInfo.Music.SongID != conn.statusInfo.Music.SongID ||
                    conn.prevStatusInfo.PlaylistVersion != conn.statusInfo.PlaylistVersion)
            {
                string np = conn.musicInfo.Filename;
                UpdateStatus(np);
            }

            // Statusbar
            string msg = "";
            switch (conn.statusInfo.State)
            {
                case StateStatus.Play:
                    MusicStatus ms = conn.statusInfo.Music;
                    msg = "Playing, " + ms.BitRate + " kbps, " + ms.SampleRate + " Hz";
                    break;
                case StateStatus.Pause:
                    msg = "Paused";
                    break;
                case StateStatus.Stop:
                    msg = "Stopped";
                    break;
            }
            UpdateStatus(msg);

            // Vis besked om at databasen bliver opdateret
            if (conn.statusInfo.UpdatingDB)
            {
                UpdateStatus("Updating database...");
            }
        }

        void UpdateStatus(string msg)
        {
            Console.WriteLine(msg + "\n");
        }

    }
}