/// <summary> /// Constructor /// </summary> /// <param name="table">The table upon which the players for this scenario are seated</param> /// <param name="round">The current round of betting</param> /// <param name="policy">Policy information dictating what the player can and can't do</param> public DefaultNodeDataModel(PlayerModel player, HoldemHandRound round, BetTypeModel betType) : base(betType) { Player = player; Round = round; Icon = Utilities.LoadBitmap(Properties.Resources.DefaultNodeIcon); InfoDisplayType = typeof(BetTreeNodeInfo); }
/// <summary> /// Constructor /// </summary> /// <param name="table">The table upon which the players for this scenario are seated</param> /// <param name="round">The current round of betting</param> /// <param name="policy">Policy information dictating what the player can and can't do</param> public RandomBetModel(PlayerModel player, HoldemHandRound round, BetTypeModel betType) : base(betType) { Player = player; Round = round; Random = 100; Icon = Utilities.LoadBitmap(Properties.Resources.RandomBetIcon); InfoDisplayType = typeof(BetTreeNodeInfo); }
/// <summary> /// Constructor /// </summary> /// <param name="table">The table upon which the players for this scenario are seated</param> /// <param name="round">The current round of betting</param> /// <param name="policy">Policy information dictating what the player can and can't do</param> public PreflopBetModel(PlayerModel player, HoldemHandRound round, BetTypeModel betType) : base(betType) { Player = player; Round = round; Icon = Utilities.LoadBitmap(Properties.Resources.PreflopBetIcon); Range = new HandRangeModel(); InfoDisplayType = typeof(BetTreeNodeInfo); }
public void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { if (_model != null) _model.BetTypeEdited -= OnBetTypeChanged; _model = DataContext as BetTypeModel; if (_model == null) return; _model.BetTypeEdited += OnBetTypeChanged; Initialise(); }
public BetTreeNodeDataModel(BetTypeModel betModel) { BetModel = betModel; }
protected BetTreeNodeModel AddShowdownStandard(BetTreeNodeModel parent) { BetTypeModel betModel = new BetTypeModel(parent.Policy); BetTreeNodeStyle style = _roundStyles[parent.Snapshot.Round]; BetTreeNodeModel model = new BetTreeNodeModel(parent.Tree, _nodeStyles[typeof(PreflopBetModel)], style, parent.Snapshot, parent); ObservableCollection<BetTreeDataNodeMeta> metaList = new ObservableCollection<BetTreeDataNodeMeta>(); metaList.Add(new BetTreeDataNodeMeta(SHOWDOWN_NODE_META, new ShowdownModel(parent.Snapshot))); model.AllowedNodeTypes = metaList; model.Meta = SHOWDOWN_NODE_META; betModel.AssociatePolicy(model); return model; }
protected BetTreeNodeModel AddPostflopStandard(BetTreeNodeModel parent, HoldemHandRound round, int player) { BetTypeModel betModel = new BetTypeModel(parent.Policy); BetTreeNodeStyle style = _roundStyles[round]; BetTreeNodeModel model = new BetTreeNodeModel(parent.Tree, _nodeStyles[typeof(PreflopBetModel)], style, parent.Snapshot, parent); betModel.AssociatePolicy(model); ObservableCollection<BetTreeDataNodeMeta> metaList = new ObservableCollection<BetTreeDataNodeMeta>(); metaList.Add(new BetTreeDataNodeMeta(POSTFLOP_NODE_META, new PostFlopBetModel(_players[player], round, betModel))); metaList.Add(new BetTreeDataNodeMeta(RESULT_NODE_META, new ManualResultsModel(model))); metaList.Add(new BetTreeDataNodeMeta(SHOWDOWN_NODE_META, new ShowdownModel(parent.Snapshot))); model.AllowedNodeTypes = metaList; model.Meta = POSTFLOP_NODE_META; return model; }