module Rabbit::Element::TextElement

Attributes

text[R]

Public Class Methods

new(text) click to toggle source
Calls superclass method Rabbit::Element::TextRenderer::new
# File lib/rabbit/element/text-element.rb, line 10
def initialize(text)
  super()
  @text = text
end

Public Instance Methods

draw_element(canvas, x, y, w, h, simulation) click to toggle source
# File lib/rabbit/element/text-element.rb, line 43
def draw_element(canvas, x, y, w, h, simulation)
  unless simulation
    draw_layout(canvas, x, y)
  end
  [x + width, y, w - width, h]
end
empty?() click to toggle source
# File lib/rabbit/element/text-element.rb, line 54
def empty?
  @text.nil? or /\A\s*\z/ =~ @text
end
inspect(verbose=false) click to toggle source
Calls superclass method
# File lib/rabbit/element/text-element.rb, line 58
def inspect(verbose=false)
  if verbose
    super()
  else
    "<#{self.class.name} #{@text.inspect}>"
  end
end
substitute_text() { |dup| ... } click to toggle source
# File lib/rabbit/element/text-element.rb, line 22
def substitute_text
  result = yield(@text.dup)
  return false if result == @text
  case result
  when Array
    new_elements = result.collect do |element|
      if element.is_a?(Base)
        element
      else
        new_element = clone
        new_element.text = element
        new_element
      end
    end
    parent.replace_element(self, *new_elements)
  else
    self.text = result
  end
  true
end
text=(new_text) click to toggle source
# File lib/rabbit/element/text-element.rb, line 15
def text=(new_text)
  old_text = @text
  @text = new_text
  dirty! if old_text != @text
  @text
end
to_html(generator) click to toggle source
# File lib/rabbit/element/text-element.rb, line 50
def to_html(generator)
  text_to_html(generator)
end