private void InternalUpdateCardReview(CardNameLocation location, HashSet <CardGuess> cardGuesses) { currentCardGuessesByLocation[location] = cardGuesses; var name = GetBestGuessLabelName(location); var myTextBox = FindName(name) as Button; if (myTextBox == null) { return; } myTextBox.Visibility = Visibility.Visible; if (cardGuesses != null) { float rating = CardReviewForUiUtils.GetRatingForColor(cardGuesses.Last()); myTextBox.Background = backgroundBrush; myTextBox.Foreground = new SolidColorBrush(Utils.GetMediaColorFromDrawingColor(Utils.GetColorForRating((decimal)rating))); myTextBox.Content = CardReviewForUiUtils.GetRatingLabel(cardGuesses); } else { myTextBox.Background = backgroundBrush; myTextBox.Foreground = new SolidColorBrush(Colors.Red); myTextBox.Content = (currentScreen.IsForge() ? "N/A or " : "") + "FAILED RECOGNITION"; } Utils.UpdateFontSizeToFit(myTextBox); if (currentScreen.GetCardNameLocationsAvailable(draftPickNumber).Last().Equals(location)) { latestStoryboardRefreshButton.Stop(this); } }
private void SearchCardByName(string searchedCardName, bool showBestCard) { if (string.IsNullOrEmpty(searchedCardName)) { SearchResults.Children.RemoveRange(0, SearchResults.Children.Count); return; } var bestMatches = RecognitionUtils.FindBestCardReviewMatches(searchedCardName); if (bestMatches.Count > 1 || !showBestCard) { SearchResults.Children.RemoveRange(0, SearchResults.Children.Count); foreach (var match in bestMatches) { TextBlock searchResult = new TextBlock { Text = match.ReviewByTeam[Team.TDC].Name, Foreground = Brushes.White, }; searchResult.PreviewMouseDown += (e, args) => { SearchCardByName(searchResult.Text, true); }; SearchResults.Children.Add(searchResult); } return; } var newGuess = bestMatches.Last(); StackPanel searchedCommentsPanel = FindName("ManualSearchControl") as StackPanel; if (searchedCommentsPanel == null) { searchedCommentsPanel = new StackPanel { Name = "ManualSearchControl", Orientation = Orientation.Vertical, Background = backgroundBrush, Width = 210, }; Canvas.SetLeft(searchedCommentsPanel, 1275); Canvas.SetTop(searchedCommentsPanel, 420); MainCanvas.Children.Add(searchedCommentsPanel); MainCanvas.RegisterName(searchedCommentsPanel.Name, searchedCommentsPanel); ScrollViewer scrollViewerComments = new ScrollViewer { Width = 210, Height = 300, VerticalScrollBarVisibility = ScrollBarVisibility.Hidden, BorderThickness = new Thickness(0) }; StackPanel titleCommentsPanel = new StackPanel { Background = Brushes.DarkCyan, Orientation = Orientation.Horizontal, Height = 30, }; searchedCommentsPanel.Children.Add(titleCommentsPanel); TextBox cardTitle = new TextBox { VerticalAlignment = VerticalAlignment.Center, Background = Brushes.DarkCyan, BorderThickness = new Thickness(0), Foreground = new SolidColorBrush(Colors.White), Name = "cardTitle_ManualSearchControl", Text = CardReviewForUiUtils.GetRatingLabel(new HashSet <CardGuess>() { newGuess }), FontWeight = FontWeights.Bold, Padding = new Thickness(5, 5, 5, 5), Width = 175, }; Utils.MakePanelDraggable(searchedCommentsPanel, HolderCanvas, this, null); Utils.UpdateFontSizeToFit(cardTitle); titleCommentsPanel.Children.Add(cardTitle); searchedCommentsPanel.RegisterName(cardTitle.Name, cardTitle); Button closeBtn = new Button() { Content = "X", Height = 20, Width = 20, Background = Brushes.DarkCyan, HorizontalAlignment = HorizontalAlignment.Right, Margin = new Thickness(10, 0, 10, 0), Foreground = new SolidColorBrush(Colors.White), Padding = new Thickness(5, 0, 5, 0), }; titleCommentsPanel.Children.Add(closeBtn); closeBtn.Click += (e, args) => { searchedCommentsPanel.Visibility = Visibility.Hidden; }; TextBox comments = new TextBox { Width = 210, Height = 300, HorizontalAlignment = HorizontalAlignment.Left, Padding = new Thickness(0, 20, 0, 0), TextWrapping = TextWrapping.Wrap, CaretBrush = new SolidColorBrush(Colors.Transparent), Background = backgroundBrush, Foreground = new SolidColorBrush(Colors.White), BorderThickness = new Thickness(0), Name = "textbox_ManualSearchControl", Text = CardReviewForUiUtils.GetCommentsText(newGuess), }; scrollViewerComments.Content = comments; searchedCommentsPanel.Children.Add(scrollViewerComments); searchedCommentsPanel.RegisterName(comments.Name, comments); } else { searchedCommentsPanel.Visibility = Visibility.Visible; (FindName("textbox_ManualSearchControl") as TextBox).Text = CardReviewForUiUtils.GetCommentsText(newGuess); (FindName("cardTitle_ManualSearchControl") as TextBox).Text = CardReviewForUiUtils.GetRatingLabel(new HashSet <CardGuess>() { newGuess }); } }