Class: Terminal::Table::Style
- Inherits:
-
Object
- Object
- Terminal::Table::Style
- Defined in:
- lib/terminal-table/lib/terminal-table/style.rb
Overview
A Style object holds all the formatting information for a Table object
To create a table with a certain style, use either the constructor option :style
, the Table#style object or the Table#style= method
All these examples have the same effect:
# by constructor
@table = Table.new(:style => {:padding_left => 2, :width => 40})
# by object
@table.style.padding_left = 2
@table.style.width = 40
# by method
@table.style = {:padding_left => 2, :width => 40}
To set a default style for all tables created afterwards use Style.defaults=
Terminal::Table::Style.defaults = {:width => 80}
Constant Summary collapse
- @@defaults =
{ :border_x => "-", :border_y => "|", :border_i => "+", :padding_left => 1, :padding_right => 1, :width => nil, :alignment => nil, :wrap => true, :wrap_minimum_width => 4 }
Instance Attribute Summary collapse
-
#alignment ⇒ Object
Returns the value of attribute alignment.
-
#border_i ⇒ Object
Returns the value of attribute border_i.
-
#border_x ⇒ Object
Returns the value of attribute border_x.
-
#border_y ⇒ Object
Returns the value of attribute border_y.
-
#padding_left ⇒ Object
Returns the value of attribute padding_left.
-
#padding_right ⇒ Object
Returns the value of attribute padding_right.
-
#width ⇒ Object
Returns the value of attribute width.
-
#wrap ⇒ Object
Returns the value of attribute wrap.
-
#wrap_minimum_width ⇒ Object
Returns the value of attribute wrap_minimum_width.
Class Method Summary collapse
Instance Method Summary collapse
- #apply(options) ⇒ Object
-
#initialize(options = {}) ⇒ Style
constructor
A new instance of Style.
Constructor Details
#initialize(options = {}) ⇒ Style
Returns a new instance of Style.
46 47 48 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 46 def initialize = {} apply self.class.defaults.merge() end |
Instance Attribute Details
#alignment ⇒ Object
Returns the value of attribute alignment.
41 42 43 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 41 def alignment @alignment end |
#border_i ⇒ Object
Returns the value of attribute border_i.
35 36 37 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 35 def border_i @border_i end |
#border_x ⇒ Object
Returns the value of attribute border_x.
33 34 35 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 33 def border_x @border_x end |
#border_y ⇒ Object
Returns the value of attribute border_y.
34 35 36 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 34 def border_y @border_y end |
#padding_left ⇒ Object
Returns the value of attribute padding_left.
37 38 39 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 37 def padding_left @padding_left end |
#padding_right ⇒ Object
Returns the value of attribute padding_right.
38 39 40 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 38 def padding_right @padding_right end |
#width ⇒ Object
Returns the value of attribute width.
40 41 42 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 40 def width @width end |
#wrap ⇒ Object
Returns the value of attribute wrap.
42 43 44 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 42 def wrap @wrap end |
#wrap_minimum_width ⇒ Object
Returns the value of attribute wrap_minimum_width.
43 44 45 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 43 def wrap_minimum_width @wrap_minimum_width end |
Class Method Details
.defaults ⇒ Object
55 56 57 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 55 def defaults @@defaults end |
.defaults=(options) ⇒ Object
59 60 61 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 59 def defaults= @@defaults = defaults.merge() end |
Instance Method Details
#apply(options) ⇒ Object
50 51 52 |
# File 'lib/terminal-table/lib/terminal-table/style.rb', line 50 def apply .each { |m, v| __send__ "#{m}=", v } end |