class SlideHero::Presentation

Attributes

slide_defaults[R]
title[R]

Public Class Methods

new(title, &block) click to toggle source
# File lib/slide_hero/presentation.rb, line 6
def initialize(title, &block)
  @title = title
  @slide_defaults = {}
  instance_eval(&block)
end

Public Instance Methods

collected_slides() click to toggle source
# File lib/slide_hero/presentation.rb, line 60
def collected_slides
  slides.join
end
compile() click to toggle source
# File lib/slide_hero/presentation.rb, line 31
def compile
  set_plugins if plugins.empty?
  Tilt::ERBTemplate.new(File.join(SlideHero.template_path,
                                  'lib/slide_hero/views/layout.html.erb')).
                                  render(self) do
                                    collected_slides
                                  end
end
defaults(args) click to toggle source
# File lib/slide_hero/presentation.rb, line 40
def defaults(args)
  @slide_defaults = args
end
grouped_slides(&block) click to toggle source
# File lib/slide_hero/presentation.rb, line 56
def grouped_slides(&block)
  slides << GroupedSlides.new(slide_defaults, &block).compile
end
plugins() click to toggle source
# File lib/slide_hero/presentation.rb, line 27
def plugins
  @plugins ||= ""
end
set_plugins(*plugin_list) click to toggle source
# File lib/slide_hero/presentation.rb, line 12
def set_plugins(*plugin_list)
  if plugin_list.empty?
    defaults = %i{class_list highlight notes}
    plugin_list = defaults
  end

  plugin_list.each do |plugin|
    if Plugins.reveal_list.include? plugin
      plugins <<  "#{Plugins.reveal[plugin]},"
    end
  end

  plugins.chop
end
set_theme(theme) click to toggle source
# File lib/slide_hero/presentation.rb, line 48
def set_theme(theme)
  @theme = theme
end
slide(title, **kwargs, &slide_block) click to toggle source
# File lib/slide_hero/presentation.rb, line 52
def slide(title, **kwargs, &slide_block)
  slides << Slide.new(title, slide_defaults.merge(**kwargs), &slide_block).compile
end
slides() click to toggle source
# File lib/slide_hero/presentation.rb, line 64
def slides
  @slides ||= []
end
theme() click to toggle source
# File lib/slide_hero/presentation.rb, line 44
def theme
  @theme ||= 'solarized'
end