public override void Initialise() { _jewelModelSCDVM = new SelectionControlDVM <JewelModel, JewelModelDataViewModel>( () => DataObject().JewelModelId, val => { DataObject().JewelModelId = DomainClassBase <JewelModel> .IdOrNullId(val); OnPropertyChanged(nameof(JewelModelSelected)); }); _weaponModelSCDVM = new SelectionControlDVM <WeaponModel, WeaponModelDataViewModel>( () => DataObject().WeaponModelId, val => { DataObject().WeaponModelId = DomainClassBase <WeaponModel> .IdOrNullId(val); OnPropertyChanged(nameof(WeaponModelSelected)); }); _factorSliderDVM = new SliderDataViewModel <double>( new Scaler <double>(WeaponJewelMatch.LegalMatchFactors, (a, b) => a < b), WeaponJewelMatch.LegalMatchFactors.Count - 1, () => DataObject().Factor, val => { DataObject().Factor = val; OnPropertyChanged(nameof(FactorIndex)); OnPropertyChanged(nameof(Factor)); }); }
public override void Initialise() { _weaponModelSCDVM = new SelectionControlDVM <WeaponModel, WeaponModelDataViewModel>( () => DataObject().WeaponModelId, val => { DataObject().WeaponModelId = DomainClassBase <WeaponModel> .IdOrNullId(val); OnPropertyChanged(nameof(WeaponModelSelected)); }); // Selection-control DVM for at kunne se/rette brugte Jewels _socketedJewelSCDVM = new SelectionControlDVM <Jewel, JewelDataViewModel>( () => SocketedJewelSelectedId, val => SocketedJewelSelectedId = val, j => j.WeaponId == DataObject().Id); // Selection-control DVM for at kunne se/rette frie Jewels _freeJewelSCDVM = new SelectionControlDVM <Jewel, JewelDataViewModel>( () => FreeJewelSelectedId, val => FreeJewelSelectedId = val, j => j.WeaponId == null); // Command-objekter til hhv. at droppe eller tilføje en Jewel _dropJewelCommand = new ReferenceChangeCommand <Jewel>(j => j.WeaponId = null); _addJewelCommand = new AddJewelToWeaponCommand(j => j.WeaponId = DataObject().Id, DataObject(), this); SocketedJewelSelectedId = null; FreeJewelSelectedId = null; // Da drop/tilføj vil medføre ændringer i Jewel-Cataloget, som udføres // fra Command-objekter, vil vi gerne notificeres om dette. DomainModel.GetCatalog <Jewel>().CatalogChanged += JewelCatalogChanged; }
public override void Initialise() { _characterSCDVM = new SelectionControlDVM <Character, CharacterDataViewModel>( () => DataObject().CharacterId, val => { DataObject().CharacterId = DomainClassBase <Character> .IdOrNullId(val); OnPropertyChanged(nameof(CharacterSelected)); }); _leftWeaponSCDVM = new SelectionControlDVM <Weapon, WeaponDataViewModel>( () => DataObject().WeaponIdLeft, val => { DataObject().WeaponIdLeft = val; OnPropertyChanged(nameof(LeftWeaponSelected)); }, w => w.CharacterId == DataObject().CharacterId); _rightWeaponSCDVM = new SelectionControlDVM <Weapon, WeaponDataViewModel>( () => DataObject().WeaponIdRight, val => { DataObject().WeaponIdRight = val; OnPropertyChanged(nameof(RightWeaponSelected)); }, w => w.CharacterId == DataObject().CharacterId); _dropLeftWeaponCommand = new DequipWeaponCommand(_leftWeaponSCDVM); _dropRightWeaponCommand = new DequipWeaponCommand(_rightWeaponSCDVM); }
public override void Initialise() { _minDamageSliderDVM = new SliderDataViewModel <int>( new Scaler <int>(WeaponModel.LegalDamageValues, (a, b) => a < b), WeaponModel.LegalDamageValues.Count - 1, () => DataObject().MinDamage, val => { DataObject().MinDamage = val; OnPropertyChanged(nameof(MinDamageIndex)); OnPropertyChanged(nameof(MinDamage)); }, CheckRulesMinDamage); _maxDamageSliderDVM = new SliderDataViewModel <int>( new Scaler <int>(WeaponModel.LegalDamageValues, (a, b) => a < b), WeaponModel.LegalDamageValues.Count - 1, () => DataObject().MaxDamage, val => { DataObject().MaxDamage = val; OnPropertyChanged(nameof(MaxDamageIndex)); OnPropertyChanged(nameof(MaxDamage)); }, CheckRulesMaxDamage); _jewelSocketsSliderDVM = new IntSliderDataViewModel( WeaponModel.MaxNoOfJewelSockets, () => DataObject().JewelSockets, val => { DataObject().JewelSockets = val; OnPropertyChanged(nameof(JewelSocketsIndex)); OnPropertyChanged(nameof(JewelSockets)); }); _rarityTierSCDVM = new SelectionControlDVM <RarityTier, RarityTierDataViewModel>( () => DataObject().RarityTierId, val => { DataObject().RarityTierId = DomainClassBase <RarityTier> .IdOrNullId(val); OnPropertyChanged(nameof(RaritySelected)); }); _weaponTypeSCDVM = new SelectionControlDVM <WeaponType, WeaponTypeDataViewModel>( () => DataObject().WeaponTypeId, val => { DataObject().WeaponTypeId = DomainClassBase <WeaponType> .IdOrNullId(val); OnPropertyChanged(nameof(WeaponTypeSelected)); }); }
public override void Initialise() { _rarityTierSCDVM = new SelectionControlDVM <RarityTier, RarityTierDataViewModel>( () => DataObject().RarityTierId, val => { DataObject().RarityTierId = DomainClassBase <RarityTier> .IdOrNullId(val); OnPropertyChanged(nameof(RaritySelected)); }); _baseDamageSliderDVM = new IntSliderDataViewModel( JewelModel.MaxBaseDamage, BaseDamageScaleFactor, () => DataObject().BaseDamage, val => { DataObject().BaseDamage = val; OnPropertyChanged(nameof(BaseDamageIndex)); OnPropertyChanged(nameof(BaseDamage)); }); }
public override void Initialise() { _jewelModelSCDVM = new SelectionControlDVM <JewelModel, JewelModelDataViewModel>( () => DataObject().JewelModelId, val => { DataObject().JewelModelId = DomainClassBase <Jewel> .IdOrNullId(val); DataObject().JewelModel = DomainModel.GetCatalog <JewelModel>().Read(DataObject().JewelModelId); OnPropertyChanged(nameof(JewelModelSelected)); OnPropertyChanged(nameof(DamageDesc)); }); _jewelCutQualitySCDVM = new SelectionControlDVM <JewelCutQuality, JewelCutQualityDataViewModel>( () => DataObject().CutQualityId, val => { DataObject().CutQualityId = DomainClassBase <Jewel> .IdOrNullId(val); DataObject().CutQuality = DomainModel.GetCatalog <JewelCutQuality>().Read(DataObject().CutQualityId); OnPropertyChanged(nameof(JewelCQSelected)); OnPropertyChanged(nameof(DamageDesc)); }); }