use crate::RatioMode;
use clap::{Parser, Subcommand};
use std::path::PathBuf;
#[derive(Subcommand, Debug)]
pub enum Commands {
Resize {
#[clap(short = 'r', long, value_enum, default_value_t = RatioMode::Crop)]
ratio_mode: RatioMode,
#[clap(long, default_value_t = 800)]
width: u32,
#[clap(long, default_value_t = 480)]
height: u32,
},
Palette {
#[clap(short, long, value_parser = clap::value_parser!(PathBuf))]
palette: PathBuf,
},
Test {},
}
#[derive(Parser, Debug)]
#[clap(version, about, long_about = None)]
pub struct Cli {
#[clap(short, long, value_parser = clap::value_parser!(PathBuf))]
pub input: PathBuf,
#[clap(short, long, default_value = "output.bmp", value_parser = clap::value_parser!(PathBuf))]
pub output: PathBuf,
#[clap(subcommand)]
pub command: Commands,
}