Esempio n. 1
0
        /// <summary>
        /// Decrease amount value.
        /// </summary>
        /// <param name="decreaseValue">Value to decrease.</param>
        /// <param name="operation">amount operation type.</param>
        public void Decrease(float decreaseValue, AmountOperation operation)
        {
            var previousValue = value;

            value = ClampValue(GetComputedValue(value - decreaseValue, operation));
            CallEvents(previousValue);
        }
Esempio n. 2
0
        /// <summary>
        /// Gets the computed value using operation type.
        /// </summary>
        /// <param name="valueToCompute">The value to compute.</param>
        /// <param name="operation">The operation to apply.</param>
        /// <returns>The computed value.</returns>
        private float GetComputedValue(float valueToCompute, AmountOperation operation)
        {
            switch (operation)
            {
            case AmountOperation.Default: return(valueToCompute);

            case AmountOperation.MissingPercentage: return(MissingValue * valueToCompute / 100f);

            case AmountOperation.RangePercentage: return(RangeValue * valueToCompute / 100f);

            case AmountOperation.RemainingPercentage: return(RemainingValue * valueToCompute / 100f);

            default: return(0);
            }
        }
Esempio n. 3
0
 /// <summary>
 /// Decrease minimum value.
 /// </summary>
 /// <param name="decreaseMinimumValue">Value to decrease.</param>
 /// <param name="operation">amount operation type.</param>
 public void DecreaseMinimum(float decreaseMinimumValue, AmountOperation operation)
 {
     SetMinimum(GetComputedValue(maximum - decreaseMinimumValue, operation));
 }
Esempio n. 4
0
 /// <summary>
 /// Increase maximum value;
 /// </summary>
 /// <param name="increaseMaximumValue">Value to increase.</param>
 /// <param name="operation">amount operation type.</param>
 public void IncreaseMaximum(float increaseMaximumValue, AmountOperation operation)
 {
     SetMaximum(GetComputedValue(maximum + increaseMaximumValue, operation));
 }