Sha256: 8e45ec21fa1fd781a2bcd47c7e75603bbc15d87ea3f959b5e3510d2afa1b8800

Contents?: true

Size: 669 Bytes

Versions: 6

Compression:

Stored size: 669 Bytes

Contents

module Glimmer
  module SWT
    # Adapts Glimmer UI classes to SWT JavaBean property owner classes (which are now adapted to Opal)
    module PropertyOwner
      def get_attribute(attribute_name)
        send(attribute_getter(attribute_name))
      end
    
      def set_attribute(attribute_name, *args)
        send(attribute_setter(attribute_name), *args) unless args.size == 1 && send(attribute_getter(attribute_name)) == args.first
      end
      
      def attribute_setter(attribute_name)
        "#{attribute_name.to_s.underscore}="
      end
      
      def attribute_getter(attribute_name)
        attribute_name.to_s.underscore
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
glimmer-dsl-opal-0.7.5 lib/glimmer/swt/property_owner.rb
glimmer-dsl-opal-0.7.4 lib/glimmer/swt/property_owner.rb
glimmer-dsl-opal-0.7.3 lib/glimmer/swt/property_owner.rb
glimmer-dsl-opal-0.7.2 lib/glimmer/swt/property_owner.rb
glimmer-dsl-opal-0.7.1 lib/glimmer/swt/property_owner.rb
glimmer-dsl-opal-0.7.0 lib/glimmer/swt/property_owner.rb