Class: Table::Row::Header

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

Overview

This class represents an HTML table header (<th>). Despite the name it is not a subclass of Table or Table::Row.

Class Method Summary collapse

Instance Method Summary collapse

Methods included from HtmlHandler

#html

Methods included from 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) ⇒ Header

Creates and returns a new Header 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/header.rb', line 18

def initialize(arg = nil, &block)
  @html_begin = '<th'
  @html_body  = ''
  @html_end   = '</th>'
  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 Header object in the final HTML output. The default is true. Only true or false are valid arguments.



60
61
62
63
# File 'lib/html/header.rb', line 60

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 are included for each Header object in the final HTML output. The default is true.

Returns:

  • (Boolean)


52
53
54
# File 'lib/html/header.rb', line 52

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/header.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/header.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::Header object.



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

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