Class: Aurita::GUI::Buffered_Element
- Defined in:
- lib/aurita-gui/element.rb,
lib/aurita-gui/element_fixed.rb
Overview
class
Instance Attribute Summary
Attributes inherited from Element
#attrib, #force_closing_tag, #gui_element_id, #parent, #tag
Instance Method Summary collapse
-
#initialize(buffer, *args, &block) ⇒ Buffered_Element
constructor
A new instance of Buffered_Element.
- #method_missing(meth, value = nil, &block) ⇒ Object
Methods inherited from Element
#+, #<<, #[], #[]=, #add_class, #aurita_gui_element, #clear_floating, #css_classes, #find_by_dom_id, #get_content, #has_content?, #id, #id=, #inspect, #js_init_code, #length, #recurse, #remove_class, #set_content, #string, #swap, #to_ary, #touch, #touched?, #type=, #untouch
Methods included from Marshal_Helper_Class_Methods
Methods included from Marshal_Helper
Constructor Details
#initialize(buffer, *args, &block) ⇒ Buffered_Element
Returns a new instance of Buffered_Element.
600 601 602 603 |
# File 'lib/aurita-gui/element.rb', line 600 def initialize(buffer, *args, &block) @output_buffer = buffer super(*args, &block) end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(meth, value = nil, &block) ⇒ Object
605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 |
# File 'lib/aurita-gui/element.rb', line 605 def method_missing(meth, value=nil, &block) if block_given? then @attrib[:class] = meth @attrib.update(value) if value.is_a? Hash c = yield c = [ c ] unless c.is_a?(Array) __setobj__(c) return string() elsif !value.nil? && !meth.to_s.include?('=') then @attrib[:class] = meth case value when Hash then @attrib.update(value) c = value[:content] c = [ c ] if (c && !c.is_a?(Array)) __setobj__(c) if c when String then __setobj__([value]) end return string() else return @attrib[meth] unless value or meth.to_s.include? '=' @attrib[meth.to_s.gsub('=','').intern] = value end end |