Sha256: e8bcd47043a268ad1ec02c6f8b752d9451c6b4522e98ee894a2098433a39e9ec
Contents?: true
Size: 1.46 KB
Versions: 3
Compression:
Stored size: 1.46 KB
Contents
module Browser; module CSS class Declaration include Native include Enumerable def rule Rule.new(`#@native.parentRule`) if defined?(`#@native.parentRule`) end def assign(data) data.each {|name, value| self[name] = value } self end def replace(string) `#@native.cssText = #{string}` end def apply(&block) Paggio::CSS::Definition.new(&block).each {|style| if style.important `#@native.setProperty(#{style.name}, #{style.value}, "important")` else `#@native.setProperty(#{style.name}, #{style.value}, "")` end } end def delete(name) `#@native.removeProperty(#{name})` end def [](name) %x{ var result = #@native.getPropertyValue(#{name}); if (result == null || result === "") { return nil; } return result; } end def []=(name, value) `#@native.setProperty(#{name}, #{value.to_s}, "")` end def important?(name) `#@native.getPropertyPriority(#{name}) == "important"` end def each(&block) return enum_for :each unless block_given? %x{ for (var i = 0, length = #@native.length; i < length; i++) { var name = #@native.item(i); #{yield `name`, self[`name`]} } } self end alias_native :length alias_native :to_s, :cssText def method_missing(name, value = nil) if name.end_with? ?= self[name[0 .. -2]] = value else self[name] end end end end; end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
diamonds-0.1.5 | lib/diamonds/opal/browser/css/declaration.rb |
opal-browser-0.2.0 | opal/browser/css/declaration.rb |
opal-browser-0.2.0.beta1 | opal/browser/css/declaration.rb |