Sha256: 0dd6d2f6215957b2078a818a384cc94ed89da0919770b1dfef26bfcaff1b9ff9

Contents?: true

Size: 497 Bytes

Versions: 7

Compression:

Stored size: 497 Bytes

Contents

module Hue
  module EditableState
    def on?
      @state['on']
    end

    def on!
      self.on = true
    end

    def off!
      self.on = false
    end

    %w{on hue saturation brightness color_temperature alert effect}.each do |key|
      define_method "#{key}=".to_sym do |value|
        set_state({key.to_sym => value})
        instance_variable_set("@#{key}".to_sym, value)
      end
    end

    def set_xy(x, y)
      set_state({:xy => [x, y]})
      @x, @y = x, y
    end
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
hue-0.3.0 lib/hue/editable_state.rb
huebot-0.4.0 lib/hue/editable_state.rb
huebot-0.3.0 lib/hue/editable_state.rb
huebot-0.2.0 lib/hue/editable_state.rb
hue-0.2.0 lib/hue/editable_state.rb
hue-0.1.5 lib/hue/editable_state.rb
hue-0.1.4 lib/hue/editable_state.rb