private void UpdateSearchHistoryDropDown() { string txt = cmbSearch.Text; try { cmbSearch.TextChanged -= new EventHandler(OnSearchTextChanged); MediaBrowserPage selectedPage = GetSelectedPage(); if (selectedPage != null) { cmbSearch.Items.Clear(); List <string> history = selectedPage.SearchHistory; if (history != null && history.Count > 0) { history.ForEach((s) => { // Don't add "LookupMyPlaylists" in the drop down history // even when it comes from the persistence service if (string.Compare(s, "LookupMyPlaylists", true) != 0) { cmbSearch.Items.Add(s); } }); } cmbSearch.SelectedIndex = -1; } } finally { cmbSearch.Text = txt; cmbSearch.TextChanged += new EventHandler(OnSearchTextChanged); } }
private MediaBrowserPage GetSelectedPage() { MediaBrowserPage selectedPage = null; if (tabContentBrowser.SelectedTab != null && tabContentBrowser.SelectedTab.Controls != null && tabContentBrowser.SelectedTab.Controls.Count > 0) { selectedPage = tabContentBrowser.SelectedTab.Controls[0] as MediaBrowserPage; } return(selectedPage); }
void OnSearchTextChanged(object sender, EventArgs e) { bool validText = false; MediaBrowserPage selectedPage = GetSelectedPage(); if (selectedPage != null) { _tt.SetSimpleToolTip(cmbSearch, selectedPage.GetSearchBoxTip()); validText = selectedPage.PreValidateSearch(cmbSearch.Text); } btnSearch.Enabled = validText; cmbSearch.BackColor = validText ? ThemeManager.WndValidColor : ThemeManager.ColorValidationFailed; }
private void btnSearch_Click(object sender, EventArgs e) { MediaBrowserPage selectedPage = GetSelectedPage(); if (selectedPage != null) { string search = cmbSearch.Text; if (selectedPage.PreValidateSearch(search)) { selectedPage.SearchCompleted -= SelectedPage_SearchCompleted; selectedPage.SearchCompleted += SelectedPage_SearchCompleted; _searchCancelled.Reset(); selectedPage.StartCancellableSearch(cmbSearch.Text, _searchCancelled); ShowWaitDialog("Please wait for the search task to finish. You can press ESC to cancel the search."); } } }
private void SelectedPage_SearchCompleted(object sender, EventArgs e) { MediaBrowserPage senderPage = sender as MediaBrowserPage; MediaBrowserPage selectedPage = GetSelectedPage(); if (senderPage != null && senderPage == selectedPage) { senderPage.DisplaySearchResults(); string s = cmbSearch.Text; // Don't add "LookupMyPlaylists" in the search history if (string.Compare(s, "LookupMyPlaylists", true) != 0) { if (senderPage.UpdateSearchHistory(s)) { UpdateSearchHistoryDropDown(); } } } CloseWaitDialog(); }