Sha256: 03cd7e6e60ba0907d7b89ace0ad8ca128bede38532a8361c2580c310dcaaeb72

Contents?: true

Size: 530 Bytes

Versions: 1

Compression:

Stored size: 530 Bytes

Contents

module Marksman
  class Presentation
    include Equality
    attr_accessor :filename, :metadata, :slides, :theme

    def initialize(options)
      @filename = options[:filename]
      @slides   = options[:slides] || []
      @metadata = defaults(filename).merge(options[:metadata] || {})
      @theme    = Theme.new @metadata[:theme]
    end

    def title
      @metadata[:title]
    end

    def defaults(filename)
      {
        filename: filename,
        title: filename,
        theme: 'plain'
      }
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
marksman-0.1 lib/marksman/presentation.rb