class Glimmer::DataBinding::ElementBinding

Attributes

element[R]
property[R]

Public Class Methods

new(element, property, translator = nil) click to toggle source
# File lib/glimmer/data_binding/element_binding.rb, line 13
      def initialize(element, property, translator = nil)
        @element = element
        @property = property
        @translator = translator || proc {|value| value}

        # TODO see if this is needed in Opal
#         if @element.respond_to?(:dispose)
#           @element.on_widget_disposed do |dispose_event|
#             unregister_all_observables
#           end
#         end
      end

Public Instance Methods

call(value) click to toggle source
# File lib/glimmer/data_binding/element_binding.rb, line 26
def call(value)
  converted_value = translated_value = @translator.call(value)
  @element.set_attribute(@property, converted_value) unless evaluate_property == converted_value
end
evaluate_property() click to toggle source
# File lib/glimmer/data_binding/element_binding.rb, line 31
def evaluate_property
  @element.send(@property)
end