public CreateActorWindowViewModel() { _feats = new List <string>(); _specialQualities = new List <string>(); _attackSets = new FullyObservableCollection <Model.AttackSet>(); _speeds = new Model.SpeedSet(); _immunities = new Model.DamageDescriptorSet(); _weapons = new ObservableCollection <Model.Weapon>(); _damageReductions = new ObservableCollection <Model.DamageReduction>(); _energyResistances = new ObservableCollection <Model.EnergyResistance>(); _addSpeed = new Command(ExecuteAddSpeed); _editSpeed = new Command(ExecuteEditSpeed); _removeSpeed = new Command(ExecuteRemoveSpeed); _addAttackSet = new Command(ExecuteAddAttackSet); _editAttackSet = new Command(ExecuteEditAttackSet); _removeAttackSet = new Command(ExecuteRemoveAttackSet); _addWeapon = new Command(ExecuteAddWeapon); _editWeapon = new Command(ExecuteEditWeapon); _removeWeapon = new Command(ExecuteRemoveWeapon); _addDamageReduction = new Command(ExecuteAddDamageReduction); _editDamageReduction = new Command(ExecuteEditDamageReduction); _removeDamageReduction = new Command(ExecuteRemoveDamageReduction); _addEnergyResistance = new Command(ExecuteAddEnergyResistance); _editEnergyResistance = new Command(ExecuteEditEnergyResistance); _removeEnergyResistance = new Command(ExecuteRemoveEnergyResistance); _editImmunities = new Command(ExecuteEditImmunities); _openImportWindow = new Command(ExecuteOpenImportWindow); SelectedCreatureType = CreatureTypes.IndexOf(Methods.GetCreatureTypeString(Types.Creature.Humanoid)); SelectedSize = Sizes.IndexOf(Methods.GetSizeString(Types.Size.Medium)); }
protected override void OnPreviewMouseWheel(MouseWheelEventArgs e) { if ((Keyboard.Modifiers & ModifierKeys.Control) > 0) { var Value = SelectedValue.To <double>(); if (e.Delta > 0) { if (WheelTick == 0) { var i = Sizes.IndexOf(SelectedValue.To <double>()) + 1; if (i <= Sizes.Count - 1) { Value = Sizes[i]; } } else { if (Value + WheelTick <= WheelTickMax) { Value += WheelTick; } } } else { if (WheelTick == 0) { var i = Sizes.IndexOf(SelectedValue.To <double>()) - 1; if (i >= 0) { Value = Sizes[i]; } } else { if (Value - WheelTick >= WheelTickMin) { Value -= WheelTick; } } } SelectedValue = Value; } }