Sha256: 24da83bc9db17fde020baead5aeac01191a64854d99c1bf64d0815146abd1177
Contents?: true
Size: 766 Bytes
Versions: 4
Compression:
Stored size: 766 Bytes
Contents
require 'rhet-butler/slide-traverser' module RhetButler class SlideArranger < SlideTraverser attr_reader :slides, :current_slide attr_accessor :root_arrangement def setup @slides = [] on_group(@root_arrangement) end def null_slide @null_slide ||= Slide.new end def previous_slide case @previous_slide when Slide @previous_slide when nil null_slide else @previous_slide.previous_slide end end def on_slide(slide) @current_slide = slide.dup target_stack.last.arrange(self) @slides.push @current_slide @previous_slide = @current_slide end def ascend @previous_slide = target_stack.last super end end end
Version data entries
4 entries across 4 versions & 1 rubygems