class Stylesheet::CssStyleDeclaration

Attributes

declarations[R]
parent_rule[R]

Public Class Methods

new(options={}) click to toggle source
# File lib/stylesheet/css_style_declaration.rb, line 9
def initialize(options={})
  @declarations = Hash.new("")
  @parent_rule  = options[:parent_rule]
  self.css_text = options[:css_text]
end

Public Instance Methods

css_text() click to toggle source
# File lib/stylesheet/css_style_declaration.rb, line 28
def css_text      
  css_text = @declarations_list.join("; ")
  css_text += ";" if css_text != ""
end
Also aliased as: to_s
css_text=(css_text) click to toggle source
# File lib/stylesheet/css_style_declaration.rb, line 15
def css_text=(css_text)
  @declarations_list = []

  re = /((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+)\s*/
  css_text.to_s.strip.chomp(";").scan(re).flatten.each do |declaration|
    next unless declaration.include?(":")

    property, value = declaration.split(":", 2)
    @declarations_list << declaration.strip
    @declarations[property.strip] = parse_value(value.strip)
  end
end
method_missing(name, *args) click to toggle source
# File lib/stylesheet/css_style_declaration.rb, line 35
def method_missing(name, *args)
  @declarations[Inflector.dasherize(name.to_s)]
end
to_s()
Alias for: css_text

Private Instance Methods

parse_value(value) click to toggle source
# File lib/stylesheet/css_style_declaration.rb, line 41
def parse_value(value)
  value
end