示例#1
0
        } // menuItemChannelRefreshList_Click_Implementation

        private void menuItemChannelVerify_Click_Implementation(object sender, EventArgs e)
        {
            int timeout;

            MulticastScannerOptionsDialog.ScanWhatList list;
            IEnumerable <UiBroadcastService>           whatList;

            if ((MulticastScanner != null) && (!MulticastScanner.IsDisposed))
            {
                MulticastScanner.Activate();
                return;
            } // if

            using (var dialog = new MulticastScannerOptionsDialog())
            {
                var result = dialog.ShowDialog(this);
                BasicGoogleTelemetry.SendScreenHit(this);
                if (result != DialogResult.OK)
                {
                    return;
                }
                timeout = dialog.Timeout;
                list    = dialog.ScanList;
            } // using

            // filter whole list, if asked for
            switch (list)
            {
            case MulticastScannerOptionsDialog.ScanWhatList.ActiveServices:
                whatList = from service in BroadcastDiscovery.Services
                           where service.IsInactive == false
                           select service;
                break;

            case MulticastScannerOptionsDialog.ScanWhatList.DeadServices:
                whatList = from service in BroadcastDiscovery.Services
                           where service.IsInactive == true
                           select service;
                break;

            default:
                whatList = BroadcastDiscovery.Services;
                break;
            } // switch

            MulticastScanner = new MulticastScannerDialog()
            {
                Timeout           = timeout,
                BroadcastServices = whatList,
            };
            MulticastScanner.ChannelScanResult += MulticastScanner_ChannelScanResult;
            MulticastScanner.Disposed          += MulticastScanner_Disposed;
            MulticastScanner.ScanCompleted     += MulticastScanner_ScanCompleted;
            MulticastScanner.Show(this);
        }  // menuItemChannelVerify_Click_Implementation
示例#2
0
        }  // menuItemChannelVerify_Click_Implementation

        private void MulticastScanner_Disposed(object sender, EventArgs e)
        {
            MulticastScanner = null;
        } // MulticastScanner_Disposed