appcui 0.5.1

A feature-rich and cross-platform TUI/CUI framework for Rust, enabling modern terminal-based applications on Windows, Linux, and macOS. Includes built-in UI components like buttons, menus, list views, tree views, checkboxes, and more. Perfect for building fast and interactive CLI tools and text-based interfaces.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
use crate::graphics::CharAttribute;
/// Character attributes for the common visual states of a control.
///
/// Stores the [`CharAttribute`] used when a control is normal, focused, hovered,
/// inactive, or pressed/selected.
#[derive(Default, Clone, Copy)]
pub struct ControlCharAttributesState {
    pub normal: CharAttribute,
    pub focused: CharAttribute,
    pub hovered: CharAttribute,
    pub inactive: CharAttribute,
    pub pressed_or_selected: CharAttribute,
}