tuxtui_termwiz/
lib.rs

1//! # tuxtui-termwiz
2//!
3//! Termwiz backend implementation for tuxtui.
4//!
5//! This crate provides a backend implementation using the `termwiz` crate.
6
7#![forbid(unsafe_code)]
8#![warn(missing_docs)]
9
10use std::io;
11use tuxtui_core::backend::Backend;
12use tuxtui_core::buffer::Cell;
13use tuxtui_core::geometry::{Position, Rect};
14use tuxtui_core::style::Style;
15
16/// Termwiz backend (stub implementation).
17pub struct TermwizBackend;
18
19impl TermwizBackend {
20    /// Create a new termwiz backend.
21    pub fn new() -> Self {
22        Self
23    }
24}
25
26impl Default for TermwizBackend {
27    fn default() -> Self {
28        Self::new()
29    }
30}
31
32impl Backend for TermwizBackend {
33    type Error = io::Error;
34
35    fn size(&self) -> Result<Rect, Self::Error> {
36        Ok(Rect::new(0, 0, 80, 24))
37    }
38
39    fn clear(&mut self) -> Result<(), Self::Error> {
40        Ok(())
41    }
42
43    fn hide_cursor(&mut self) -> Result<(), Self::Error> {
44        Ok(())
45    }
46
47    fn show_cursor(&mut self) -> Result<(), Self::Error> {
48        Ok(())
49    }
50
51    fn get_cursor(&mut self) -> Result<Position, Self::Error> {
52        Ok(Position::new(0, 0))
53    }
54
55    fn set_cursor(&mut self, _x: u16, _y: u16) -> Result<(), Self::Error> {
56        Ok(())
57    }
58
59    fn draw_cell(&mut self, _x: u16, _y: u16, _cell: &Cell) -> Result<(), Self::Error> {
60        Ok(())
61    }
62
63    fn set_style(&mut self, _style: Style) -> Result<(), Self::Error> {
64        Ok(())
65    }
66
67    fn reset_style(&mut self) -> Result<(), Self::Error> {
68        Ok(())
69    }
70
71    fn flush(&mut self) -> Result<(), Self::Error> {
72        Ok(())
73    }
74
75    fn enable_raw_mode(&mut self) -> Result<(), Self::Error> {
76        Ok(())
77    }
78
79    fn disable_raw_mode(&mut self) -> Result<(), Self::Error> {
80        Ok(())
81    }
82
83    fn enter_alternate_screen(&mut self) -> Result<(), Self::Error> {
84        Ok(())
85    }
86
87    fn leave_alternate_screen(&mut self) -> Result<(), Self::Error> {
88        Ok(())
89    }
90}