appcui 0.4.8

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
14
15
16
17
18
use crate::prelude::*;

#[CustomControl(internal = true)]
pub(super) struct AccordionPanel {}
impl AccordionPanel {
    pub(super) fn new(visible: bool) -> Self {
        Self {
            base: ControlBase::with_status_flags(
                LayoutBuilder::new().x(0).y(0).width(1.0f32).height(1.0f32).build(),
                if visible {
                    StatusFlags::Visible | StatusFlags::Enabled | StatusFlags::AcceptInput
                } else {
                    StatusFlags::Enabled | StatusFlags::AcceptInput
                },
            ),
        }
    }
}