Class: Grapple::Components::BaseComponent

Inherits:
Object
  • Object
show all
Defined in:
lib/grapple/components/base_component.rb

Overview

Base class for components

Direct Known Subclasses

HtmlComponent

Constant Summary collapse

@@default_settings =
{}

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(columns, records, template, params, builder, settings = {}) ⇒ BaseComponent

Returns a new instance of BaseComponent.



22
23
24
25
26
27
28
29
30
31
# File 'lib/grapple/components/base_component.rb', line 22

def initialize(columns, records, template, params, builder, settings = {})
	@template = template
	@columns = columns
	@records = records
	@params = params
	@builder = builder
	merge_settings(settings).each do |name, value|
		self.send(:"#{name}=", value)
	end
end

Instance Attribute Details

#builderObject (readonly)

Returns the value of attribute builder.



20
21
22
# File 'lib/grapple/components/base_component.rb', line 20

def builder
  @builder
end

#columnsObject (readonly)

Returns the value of attribute columns.



16
17
18
# File 'lib/grapple/components/base_component.rb', line 16

def columns
  @columns
end

#paramsObject (readonly)

Returns the value of attribute params.



19
20
21
# File 'lib/grapple/components/base_component.rb', line 19

def params
  @params
end

#recordsObject (readonly)

Returns the value of attribute records.



17
18
19
# File 'lib/grapple/components/base_component.rb', line 17

def records
  @records
end

#templateObject (readonly)

Returns the value of attribute template.



18
19
20
# File 'lib/grapple/components/base_component.rb', line 18

def template
  @template
end

Class Method Details

.setting(name, default = nil) ⇒ Object



10
11
12
13
14
# File 'lib/grapple/components/base_component.rb', line 10

def self.setting(name, default = nil)
	attr_accessor(name)
	@@default_settings[self.name] = {} unless @@default_settings.has_key?(self.name)
	@@default_settings[self.name][name] = default
end

Instance Method Details

#render(*options, &block) ⇒ Object

Raises:

  • (StandardError)


33
34
35
# File 'lib/grapple/components/base_component.rb', line 33

def render(*options, &block)
	raise StandardError.new("Component must override render method")
end