From 5474c50e774622bf025bfa3bdc84fc13303074ca Mon Sep 17 00:00:00 2001 From: Doloro1978 Date: Wed, 18 Mar 2026 12:55:07 +0000 Subject: [PATCH] meow --- src/main.rs | 2 +- src/tui/data_graph.rs | 19 +++++++++++++++++++ src/tui/main.rs | 30 ++++++++++++++++++++++++------ 3 files changed, 44 insertions(+), 7 deletions(-) create mode 100644 src/tui/data_graph.rs diff --git a/src/main.rs b/src/main.rs index acb6574..970242d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -12,7 +12,7 @@ use rkyv::{Deserialize, api::low::deserialize, rancor}; use crate::data::{ArchivedData, Data, DataChunk}; mod battery; -mod data; +pub mod data; fn main() -> Result<(), Box> { let mut battery = diff --git a/src/tui/data_graph.rs b/src/tui/data_graph.rs new file mode 100644 index 0000000..a11b6a4 --- /dev/null +++ b/src/tui/data_graph.rs @@ -0,0 +1,19 @@ +use ratatui::widgets::Dataset; + +use crate::data_graph::data::DataChunk; +#[path = "../data.rs"] +mod data; + +trait Graphable { + fn as_dataset(&self) -> Dataset<'_>; +} + +impl Graphable for SplitData { + fn as_dataset(&self) -> Dataset<'_> { + unimplemented!(""); + } +} + +struct SplitData { + chunks: DataChunk, +} diff --git a/src/tui/main.rs b/src/tui/main.rs index 9e42016..36c5eab 100644 --- a/src/tui/main.rs +++ b/src/tui/main.rs @@ -1,17 +1,35 @@ -use std::time::Duration; +use std::{process::exit, time::Duration}; -use ratatui::layout::{self, Constraint, Layout}; +use ratatui::{ + layout::{self, Constraint, Layout}, + prelude::Stylize, + widgets::{Block, Borders}, +}; +mod data_graph; fn main() -> Result<(), Box> { ratatui::run(|terminal| { loop { terminal.draw(|frame| { - let layout = frame.area().layout_vec(&Layout::horizontal([ - Constraint::Percentage(50), - Constraint::Percentage(50), + let layout = frame.area().layout_vec(&Layout::vertical([ + Constraint::Percentage(33), + Constraint::Percentage(33), + Constraint::Percentage(33), ])); - frame.render_widget("Hello World!", layout[1]) + let middle = layout[1].layout_vec(&Layout::horizontal([ + Constraint::Percentage(33), + Constraint::Percentage(33), + Constraint::Percentage(33), + ])); + let widget = Block::new() + .border_type(ratatui::widgets::BorderType::Rounded) + .borders(Borders::ALL) + .title("Mroew"); + frame.render_widget(widget, middle[1]); })?; + if crossterm::event::read().unwrap().is_key_press() { + break Ok(()); + }; } }) }