diff --git a/src/core.rs b/src/core.rs index ad0aff06..3d3e0ea0 100644 --- a/src/core.rs +++ b/src/core.rs @@ -13,7 +13,6 @@ pub(crate) use std::sync::{ // Non-stdlib dependencies: pub(crate) use microxdg::XdgApp; -pub(crate) use ratatui::prelude::*; pub(crate) use midly::{MidiMessage, live::LiveEvent, num::u7}; pub(crate) use crossterm::{ExecutableCommand}; pub(crate) use crossterm::event::{Event, KeyEvent, KeyCode, KeyModifiers}; diff --git a/src/core/render.rs b/src/core/render.rs index afb7a6db..759ae7f3 100644 --- a/src/core/render.rs +++ b/src/core/render.rs @@ -1,4 +1,6 @@ use crate::core::*; +pub(crate) use ratatui::prelude::*; +use ratatui::buffer::Cell; use ratatui::widgets::WidgetRef; pub trait Blit { @@ -80,3 +82,92 @@ impl WidgetRef for dyn Render { Render::render(self, buf, area).expect("Failed to render device."); } } + +pub struct LineBuffer { + width: usize, + cells: Vec, + style: Option