Sha256: 123d4c37857ef4247c451ae32e674f137e2e32d1090065f68cfb6e3e04843df0

Contents?: true

Size: 572 Bytes

Versions: 119

Compression:

Stored size: 572 Bytes

Contents

require_relative 'command'

class Calculator
  module Model
    class Presenter
      FORMATTER = {
        nil   => '0',
        'NaN' => 'Not a number'
      }
    
      attr_accessor :result
      
      def initialize
        self.result = '0'
      end
      
      def press(button)
        command = Command.for(button)
        if command
          new_result = command.result
          self.result = FORMATTER[new_result] || new_result
        end
      end
      
      def purge_command_history
        Command.purge_command_history
      end
    end
  end
end

Version data entries

119 entries across 119 versions & 1 rubygems

Version Path
glimmer-dsl-swt-4.30.1.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.30.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.29.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.28.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.27.0.1 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.27.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.26.0.1 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.26.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.25.0.2 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.25.0.1 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.25.0.0 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.8 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.7 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.6 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.5 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.4 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.3 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.2 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.1 samples/elaborate/calculator/model/presenter.rb
glimmer-dsl-swt-4.24.4.0 samples/elaborate/calculator/model/presenter.rb