summaryrefslogtreecommitdiffstats
path: root/src/tuine/widget.rs
diff options
context:
space:
mode:
authorClement Tsang <34804052+ClementTsang@users.noreply.github.com>2024-01-02 01:13:02 -0500
committerClement Tsang <34804052+ClementTsang@users.noreply.github.com>2024-01-02 01:13:02 -0500
commitc730048c7a0a5ab2eb657fee2649d7b22e73652d (patch)
treee75b7e0e03f64e797bcc5a85195a2ffe8728cdb7 /src/tuine/widget.rs
parentdbadbb996cb8d55d842b9632126c031f39596453 (diff)
Diffstat (limited to 'src/tuine/widget.rs')
-rw-r--r--src/tuine/widget.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/tuine/widget.rs b/src/tuine/widget.rs
new file mode 100644
index 00000000..ebe06dc6
--- /dev/null
+++ b/src/tuine/widget.rs
@@ -0,0 +1,7 @@
+use tui::{layout::Rect, Frame};
+
+/// A [`Widget`] converts raw data into something that a user can see and interact with.
+pub trait Widget<Data> {
+ /// How to actually draw the widget to the terminal.
+ fn draw(&self, f: &mut Frame<'_>, draw_location: Rect, widget_id: u64);
+}