Beispiel #1
0
 protected BaseCalculatorState(decimal AccumulatorValue, string ScreenText, CalculatorOperator calculatorOperator, int maxDigitsOnScreen)
 {
     this.AccumulatorValue   = AccumulatorValue;
     this.ScreenText         = ScreenText;
     this.calculatorOperator = calculatorOperator;
     this.maxDigitsOnScreen  = maxDigitsOnScreen;
 }
 public override ICalculator operatorButtonPressed(CalculatorOperator newCalculatorOperator)
 {
     log.Debug("Wcisnieto przycisk operatora " + calculatorOperator);
     try
     {
         if (calculatorOperator == CalculatorOperator.DIVIDE && ScreenValue == 0)
         {
             return(new ErrorCalculatorState(Constants.defaultErrorString, maxDigitsOnScreen));
         }
         AccumulatorValue = calculatorOperator.executeAction(ScreenValue, AccumulatorValue);
         return(new ScreenViewCalculatorState(AccumulatorValue, "0", newCalculatorOperator, maxDigitsOnScreen));
     } catch (OverflowException e)
     {
         log.Warn("Overflow exception ", e);
         return(new ErrorCalculatorState(Constants.OVERFLOW, maxDigitsOnScreen));
     }
 }
 public override ICalculator operatorButtonPressed(CalculatorOperator calculatorOperator)
 {
     log.Debug("Wcisnieto przycisk operatora " + calculatorOperator);
     return(new ScreenViewCalculatorState(AccumulatorValue, "0", calculatorOperator, maxDigitsOnScreen));
 }
 public AccumulatorViewCalculatorState(decimal accumulatorValue, string screenValue, CalculatorOperator calculatorOperator, int maxDigitsOnScreen)
     : base(accumulatorValue, screenValue, calculatorOperator, maxDigitsOnScreen)
 {
     log.Debug("Nowy stan kalkulatora:AccumulatorViewCalculatorState: Wartosc w akumulatorze:" + accumulatorValue + " Wartosc na ekranie:" + screenValue + " operator:" + calculatorOperator);
 }
 public ICalculator operatorButtonPressed(CalculatorOperator calculatorOperator)
 {
     log.Error("Nie powinno to sie stac: Wcisnieto przycisk operatora " + calculatorOperator);
     return(this);
 }
Beispiel #6
0
 public void operatorButtonPressed(CalculatorOperator calculatorOperator)
 {
     currentCalculator = currentCalculator.operatorButtonPressed(calculatorOperator);
 }
Beispiel #7
0
 public abstract ICalculator operatorButtonPressed(CalculatorOperator calculatorOperator);