background-picker 0.1.0

Allow user to select a background from a directory hiearchy
Documentation
use clap::Parser;
use background_picker::{Args, BackgroundPickerApp};

const DEFAULT_WINDOW_WIDTH: f32 = 800.0;
const DEFAULT_WINDOW_HEIGHT: f32 = 600.0;

fn main() -> anyhow::Result<()> {
    let args = Args::parse();
    
    let options = eframe::NativeOptions {
        viewport: egui::ViewportBuilder::default()
            .with_inner_size([DEFAULT_WINDOW_WIDTH, DEFAULT_WINDOW_HEIGHT])
            .with_title("Background Picker"),
        ..Default::default()
    };
    
    let result = eframe::run_native(
        "Background Picker",
        options,
        Box::new(|cc| {
            BackgroundPickerApp::new(cc, args)
                .map(|app| Box::new(app) as Box<dyn eframe::App>)
                .map_err(|e| Box::new(e) as Box<dyn std::error::Error + Send + Sync>)
        }),
    );
    
    match result {
        Ok(_) => Ok(()),
        Err(e) => Err(anyhow::anyhow!("Failed to run application: {:?}", e)),
    }
}