#![doc = include_str!("../readme.md")]
use crate::_private::NonExhaustive;
use ratatui_core::layout::Rect;
use ratatui_core::style::Style;
mod derive;
pub mod edit;
pub mod selection;
mod table;
mod util;
mod vec;
pub use rat_ftable::TableSelection;
pub use rat_ftable::TableStyle;
pub use table::{Table, TableState};
pub use vec::{TableVec, TableVecState};
#[derive(Debug, Default)]
pub enum LayoutWidth {
Length(u16),
Columns,
#[default]
Area,
}
#[derive(Debug)]
pub struct TableContext<'a> {
pub row: usize,
pub focus: bool,
pub selected_cell: bool,
pub selected_row: bool,
pub selected_column: bool,
pub style: Style,
pub select_style: Option<Style>,
pub column_layout: &'a [Rect],
pub space_area: Rect,
pub row_area: Rect,
pub non_exhaustive: NonExhaustive,
}
pub mod event {
pub use rat_event::*;
pub use rat_ftable::event::{DoubleClickOutcome, TableOutcome};
}
mod _private {
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct NonExhaustive;
}