class RhetButler::SlideGroup
Attributes
html_classes[R]
metadata[R]
slides[RW]
Public Class Methods
optional_config()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 10 def optional_config %w[type slide_type html_class html_classes html_id] end
required_config()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 14 def required_config %w[slides] end
Public Instance Methods
configure()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 37 def configure value_from_config("html_id") do |value| @html_id = value end value_from_config("html_classes") do |value| @html_classes += [*value] end value_from_config("html_class") do |value| @html_classes << value end @slides = @config_hash.delete('slides') @metadata = @config_hash end
each() { |slide| ... }
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 57 def each if block_given? @slides.each{|slide| yield(slide)} else @slides.each end end
each_slide() { |sl| ... }
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 65 def each_slide if block_given? @slides.each do |slide| if slide.is_a? SlideGroup slide.each_slide{|sl| yield sl} else yield slide end end else enum_for :each_slide end end
id_attr()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 83 def id_attr if @html_id.nil? return "" else "id='#@html_id'" end end
normalize_config(coder)
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 26 def normalize_config(coder) case coder.type when :map coder.map when :scalar raise "A slide group needs to at least be a list of slides" when :seq { 'slides' => coder.seq} end end
setup_defaults()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 19 def setup_defaults @html_id = nil @html_classes = ["group"] @slides = [] @metadata = {} end
template_name()
click to toggle source
# File lib/rhet-butler/slide-group.rb, line 79 def template_name "group.html" end