#![doc = include_str!("../README.md")]
use felis_protocol::{ImageId, messages::ImageFormat};
pub mod appearance;
pub mod atlas;
#[cfg(feature = "glyphs")]
pub mod box_drawing;
pub mod display_list;
#[cfg(feature = "glyphs")]
pub mod glyphs;
pub mod overlay;
#[cfg(feature = "glyphs")]
pub mod painter;
pub mod palette;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct SelectionRange {
pub start: (u16, u16),
pub end: (u16, u16),
pub rectangle: bool,
}
#[derive(Debug, Clone, Copy)]
pub struct ImageData<'a> {
pub width: u32,
pub height: u32,
pub format: ImageFormat,
pub pixels: &'a [u8],
}
pub trait ImageSource {
fn image_data(&self, id: ImageId) -> Option<ImageData<'_>>;
}