Class: Table::Row::Data

Inherits:
Object
  • Object
show all
Includes:
HTML::Mixin::AttributeHandler, HTML::Mixin::HtmlHandler
Defined in:
lib/html/data.rb

Overview

This class represents HTML table data, <td>. Despite the name it is not a subclass of Table::Row or Table.

Class Method Summary collapse

Instance Method Summary collapse

Methods included from HTML::Mixin::HtmlHandler

#html

Methods included from HTML::Mixin::AttributeHandler

#abbr, #abbr=, #align, #align=, #axis, #axis=, #background, #background=, #bgcolor, #bgcolor=, #border, #border=, #bordercolor, #bordercolor=, #bordercolordark, #bordercolordark=, #bordercolorlight, #bordercolorlight=, #cellpadding, #cellpadding=, #cellspacing, #cellspacing=, #char, #char=, #charoff, #charoff=, #class_, #class_=, #col, #col=, #colspan, #colspan=, #configure, #content, #frame, #frame=, #height, #height=, #hspace, #hspace=, #nowrap, #nowrap=, #rowspan, #rowspan=, #rules, #rules=, #span, #span=, #style, #style=, #summary, #summary=, #valign, #valign=, #vspace, #vspace=, #width, #width=

Constructor Details

#initialize(arg = nil, &block) ⇒ Data

Creates and returns a Data object. Optionally takes a block. If an argument is provided, it is treated as content.



18
19
20
21
22
23
24
# File 'lib/html/data.rb', line 18

def initialize(arg = nil, &block)
  @html_begin = '<td'
  @html_body  = ''
  @html_end   = '</td>'
  instance_eval(&block) if block_given?
  self.content = arg if arg
end

Class Method Details

.end_tags=(bool) ⇒ Object

Sets whether or not end tags are included for each Data object in the final HTML output. The default is true. Only true or false are valid arguments.



61
62
63
64
# File 'lib/html/data.rb', line 61

def self.end_tags=(bool)
  expect(bool, [TrueClass, FalseClass])
  @end_tags = bool
end

.end_tags?Boolean

Returns a boolean indicating whether or not end tags, </td>, are included for each Data object in the final HTML output. The default is true.

Returns:

  • (Boolean)


53
54
55
# File 'lib/html/data.rb', line 53

def self.end_tags?
  @end_tags
end

.indent_levelObject

Returns the indentation level for the tags of this class. The default is 6.



36
37
38
# File 'lib/html/data.rb', line 36

def self.indent_level
  @indent_level
end

.indent_level=(num) ⇒ Object

Sets the indentation level for the tags of this class. The default is 6.

Raises:

  • (ArgumentError)


43
44
45
46
47
# File 'lib/html/data.rb', line 43

def self.indent_level=(num)
  expect(num, Integer)
  raise ArgumentError,"indent_level must be >= 0" if num < 0
  @indent_level = num
end

Instance Method Details

#content=(arg) ⇒ Object

Adds content to the Table::Row::Data object.



28
29
30
31
# File 'lib/html/data.rb', line 28

def content=(arg)
  arg = arg.is_a?(Array) ? arg.join : arg.to_s
  @html_body = Table::Content.new(arg)
end