/// <summary> /// Toggle seeding list and seeder information window /// </summary> /// <param name="_main"></param> public void ToggleSeedinginformation() { if (_displaySeederInformationWindow) { Remove(SeederListWindow); Add(_seederInformationWindow); _displaySeederInformationWindow = false; List <TorrentContext> seeders = new List <TorrentContext>(); foreach (var torrent in TorrentHandler.TorrentList) { if (torrent.Status == TorrentStatus.Seeding) { seeders.Add(torrent); } } if (seeders.Count > 0) { _selectedSeederTorrent = TorrentHandler.TorrentList.ToArray()[SeederListWindow.SeederListView.SelectedItem]; _seederInformationWindow.SetTracker(_selectedSeederTorrent.MainTracker.TrackerURL); UpdateSeederInformation(TorrentHandler); _selectedSeederTorrent.MainTracker.SetSeedingInterval(2 * 1000); _selectedSeederTorrent.MainTracker.CallBack = UpdateSeederInformation; _selectedSeederTorrent.MainTracker.CallBackData = TorrentHandler; _seederInformationWindow.SetFocus(); } } else { if (_selectedSeederTorrent != null) { _seederInformationWindow.ClearData(); _selectedSeederTorrent.MainTracker.SetSeedingInterval(60000 * 30); _selectedSeederTorrent.MainTracker.CallBack = null; _selectedSeederTorrent.MainTracker.CallBack = null; Remove(_seederInformationWindow); _selectedSeederTorrent = null; } Add(SeederListWindow); _displaySeederInformationWindow = true; SeederListWindow.SetFocus(); } }
/// <summary> /// Toggle seeding list and torrent information window /// </summary> public void ToggleSeedingList() { if (DisplayInformationWindow) { Remove(InfoWindow); Add(SeederListWindow); DisplayInformationWindow = false; SeederListWindow.SetFocus(); } else { if (!_displaySeederInformationWindow) { ToggleSeedinginformation(); } Remove(SeederListWindow); Add(InfoWindow); DisplayInformationWindow = true; TorrentFileText.SetFocus(); } }