/// <summary> /// Constructor /// </summary> /// <param name="items"> /// The item dictionary. /// </param> /// <param name="prizes"> /// The prize dictionary. /// </param> public CrystalRequirement(IItemDictionary items, IPrizeDictionary prizes) { _gtCrystal = (ICrystalRequirementItem)items[ItemType.TowerCrystals]; _crystal = prizes[PrizeType.Crystal]; _redCrystal = prizes[PrizeType.RedCrystal]; _gtCrystal.PropertyChanged += OnItemChanged; _crystal.PropertyChanged += OnItemChanged; _redCrystal.PropertyChanged += OnItemChanged; UpdateValue(); }
/// <summary> /// Constructor /// </summary> /// <param name="prizes"> /// The prizes dictionary. /// </param> /// <param name="undoRedoManager"> /// The undo/redo manager. /// </param> /// <param name="undoableFactory"> /// A factory for creating undoable actions. /// </param> /// <param name="section"> /// The prize section to be represented. /// </param> public PrizeSmallItemVM( IPrizeDictionary prizes, IUndoRedoManager undoRedoManager, IUndoableFactory undoableFactory, IPrizeSection section) { _prizes = prizes; _undoRedoManager = undoRedoManager; _undoableFactory = undoableFactory; _section = section; HandleClick = ReactiveCommand.Create <PointerReleasedEventArgs>(HandleClickImpl); _section.PropertyChanged += OnSectionChanged; _section.PrizePlacement.PropertyChanged += OnPrizeChanged; }
/// <summary> /// Constructor /// </summary> /// <param name="factory"> /// A factory that creates prize placements. /// </param> public PrizePlacementFactory(IPrizeDictionary prizes, IPrizePlacement.Factory factory) { _prizes = prizes; _factory = factory; }