summaryrefslogtreecommitdiffstats
path: root/src/tuice/element.rs
blob: f3e55dcad5ba0626d9ca66269fb5d89cb5fe44ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use enum_dispatch::enum_dispatch;
use tui::{layout::Rect, Frame};

use super::{
    Block, Bounds, Carousel, Column, Container, DrawContext, Event, LayoutNode, Row, Shortcut,
    Size, Status, TextTable, TmpComponent,
};

/// An [`Element`] is an instantiated [`Component`].
#[enum_dispatch(TmpComponent<Message>)]
pub enum Element<'a, Message> {
    Block,
    Carousel,
    Column,
    Container(Container<'a, Message>),
    Row(Row<'a, Message>),
    Shortcut,
    TextTable(TextTable<'a, Message>),
}