private RadDiagramShape CreatePlayerLabel(ReplayerPlayerViewModel p) { var label = new RadDiagramShape() { DataContext = p, Tag = p, Height = PLAYER_HEIGHT, Width = PLAYER_WIDTH, StrokeThickness = 0, BorderThickness = new Thickness(0), IsEnabled = false, IsHitTestVisible = false, FontSize = 13 }; BindingOperations.ClearBinding(label, Control.BackgroundProperty); Binding myBinding = new Binding(nameof(ReplayerPlayerViewModel.IsFinished)) { Source = p, Mode = BindingMode.TwoWay, Converter = new ReplayerBrushPlayerConverter() }; label.SetBinding(Control.BackgroundProperty, myBinding); return(label); }
private void LoadPlayerHudStats(ReplayerPlayerViewModel replayerPlayer, ReplayerViewModel replayerViewModel, IList <StatInfo> statInfoCollection) { replayerPlayer.StatInfoCollection.Clear(); HudLightIndicators hudIndicators; if (storageModel.PlayerSelectedItem.Name == replayerPlayer.Name && (short?)storageModel.PlayerSelectedItem.PokerSite == replayerViewModel.CurrentHand.PokersiteId) { hudIndicators = new HudLightIndicators(storageModel.GetStatisticCollection()); } else { hudIndicators = new HudLightIndicators(); playerStatisticRepository .GetPlayerStatistic(replayerPlayer.Name, replayerViewModel.CurrentHand.PokersiteId) .ForEach(stat => hudIndicators.AddStatistic(stat)); } if (hudIndicators != null) { var statList = new List <StatInfo>(); var counter = 0; foreach (var selectedStatInfo in statInfoCollection) { if (selectedStatInfo is StatInfoBreak) { continue; } var statInfo = selectedStatInfo.Clone(); var propertyName = StatsProvider.GetStatProperyName(statInfo.Stat); if (!string.IsNullOrWhiteSpace(propertyName)) { statInfo.AssignStatInfoValues(hudIndicators, propertyName); } replayerPlayer.StatInfoCollection.Add(statInfo); if ((counter + 1) % 4 == 0) { replayerPlayer.StatInfoCollection.Add(new StatInfoBreak()); } counter++; } } }
private RadDiagramShape CreateDealerLabel(RadDiagram diagram, ReplayerPlayerViewModel player) { var button = new RadDiagramShape() { Background = new ImageBrush(new BitmapImage(new Uri(BaseUriHelper.GetBaseUri(diagram), DealerImage))), Height = BUTTON_HEIGHT, Width = BUTTON_WIDTH, StrokeThickness = 0, IsEnabled = false, }; Binding myBinding = new Binding(nameof(ReplayerPlayerViewModel.IsDealer)) { Source = player, Mode = BindingMode.TwoWay, Converter = new BoolToVisibilityConverter() }; button.SetBinding(UIElement.VisibilityProperty, myBinding); return(button); }
private void AddPotPlayerLabel(RadDiagram diagram, ReplayerPlayerViewModel player, double x, double y) { try { System.Windows.Controls.Label lbl = new System.Windows.Controls.Label(); Binding myBinding = new Binding(ReflectionHelper.GetPath <ReplayerPlayerViewModel>(o => o.ActiveAmount)) { Source = player, Mode = BindingMode.TwoWay, Converter = new DecimalToPotConverter(), ConverterParameter = "{0:C2}" }; lbl.SetBinding(ContentControl.ContentProperty, myBinding); lbl.Foreground = Brushes.White; lbl.Margin = new Thickness(x - 15, y + 20, 100, 100); diagram.AddShape(lbl); } catch (Exception e) { LogProvider.Log.Error(this, e); } }
private RadContextMenu CreateContextMenu(short pokerSiteId, string playerName, ReplayerPlayerViewModel datacontext) { RadContextMenu radMenu = new RadContextMenu(); var item = new RadMenuItem(); var binding = new Binding(nameof(ReplayerPlayerViewModel.NoteMenuItemText)) { Source = datacontext, Mode = BindingMode.OneWay }; item.SetBinding(HeaderedItemsControl.HeaderProperty, binding); item.Click += (s, e) => { PlayerNoteViewModel viewModel = new PlayerNoteViewModel(pokerSiteId, playerName); var frm = new PlayerNoteView(viewModel) { Owner = System.Windows.Application.Current.MainWindow }; frm.ShowDialog(); var clickedItem = s as FrameworkElement; if (clickedItem == null || !(clickedItem.DataContext is ReplayerPlayerViewModel)) { return; } var hudElement = clickedItem.DataContext as ReplayerPlayerViewModel; hudElement.NoteToolTip = viewModel.HasNotes ? viewModel.Note : string.Empty; }; radMenu.Items.Add(item); return(radMenu); }