Exemple #1
0
        private void Removed(CpDeviceRecogniserList aList, CpDeviceRecognised aDevice)
        {
            lock (iLock)
            {
                RemoveDevice(aDevice);

                aDevice.Changed -= Changed;
                iDeviceListRecognised.Remove(aDevice);
            }
        }
Exemple #2
0
        public MainPage(IInvoker aInvoker, NetworkAdapter aAdapter, Preferences aPreferences, IUpdateListener aUpdateListener, CpDeviceReprogramListRepeater aRepeater, string aId, string aViewId)
            : base(aId, aViewId)
        {
            iInvoker = aInvoker;

            iPreferences = aPreferences;

            iLock = new object();
            iDeviceListRecognised = new List <CpDeviceRecognised>();

            List <IRecogniser> recognisers = new List <IRecogniser>();

            recognisers.Add(new RecogniserLinn());
            recognisers.Add(new RecogniserSonos());
            recognisers.Add(new RecogniserMediaServer());
            iRecogniserList = new CpDeviceRecogniserList(recognisers, Added, Removed);
        }
Exemple #3
0
        private void Added(CpDeviceRecogniserList aList, CpDeviceRecognised aDevice)
        {
            lock (iLock)
            {
                iDeviceListRecognised.Add(aDevice);
                iDeviceListRecognised.Sort();
                int index = iDeviceListRecognised.IndexOf(aDevice);

                AddDevice(aDevice, index);
                aDevice.Changed += Changed;

                string udn = iPreferences.SelectedProductUdn;
                if ((aDevice.Udn == udn) || (string.IsNullOrEmpty(udn) && aDevice is CpDeviceRecognisedLinn))
                {
                    Send("SelectProductUdn", udn);
                }
            }
        }