use eframe::egui::{Context, Ui};

pub mod s1_title;
pub mod s2_introduction;
pub mod s3_complexity;
pub mod s4_automata;
pub mod s5_fractals;
pub mod s6_computation;
pub mod s7_mosaic;
pub mod s8_conclusion;

/// An interface for all slides.
pub trait Slide {
    /// Returns whether "done."
    /// Repaint automatically requested.
    fn transition(&mut self, _ctx: &Context) -> bool {
        true
    }

    /// Renders slide into UI.
    fn show(&mut self, ui: &mut Ui);
}