1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
//! [![Build Status](https://api.travis-ci.com/ivanceras/titik.svg?branch=master)](https://travis-ci.com/github/ivanceras/titik)
//! [![Latest Version](https://img.shields.io/crates/v/titik.svg)](https://crates.io/crates/titik)

//!
//! Titik is a crossplatform TUI widget library with the goal of being able to interact
//! intuitively on these widgets.
//!
//! ![Screenshot](https://ivanceras.github.io/screenshots/sauron-titik.gif)
//!
//! It uses [`crossterm`](https://crates.io/crates/crossterm) as the underlying backend.
//!
//! To run the demo use the following command:
//! ```sh
//! cargo run --example demo 2>/dev/null
//! ```
//! Note: `2>/dev/null` is sending the debugging log from `eprintln` into the `/dev/null` device
//!
//! Without doing so, will result a flicker in your screen caused by debugging info and tui mixed
//! in one terminal output.
//!
//! Alternatively, you can pipe the debugging log from `eprintln` into a file say `/tmp/debug.log`
//! by doing so:
//! ```sh
//! cargo run --example demo 2>/tmp/debug.log
//! ```
//!
//! You can then open a new terminal and tail the `/tmp/debug.log` file
//! ```sh
//! tail -f /tmp/debug.log
//! ```
//!
//!
//#![deny(warnings)]
//#![deny(
//    missing_docs,
//    missing_copy_implementations,
//    trivial_casts,
//    trivial_numeric_casts,
//    unstable_features,
//    unused_import_braces
//)]
pub use buffer::{Buffer, Cell};
pub use cmd::Cmd;
pub use crossterm;
pub use event::Event;
pub use expanse;
pub use find_node::{
    find_widget, find_widget_by_id, find_widget_by_id_mut, find_widget_mut,
    remove_widget,
};
pub use input_buffer::InputBuffer;
pub use mt_dom::{self, Callback};
pub use renderer::{Dispatch, Renderer};
pub use value::Value;
pub use widget::*;

mod area_buffer;
mod buffer;
mod callback;
mod cmd;
pub mod command;
pub mod event;
mod find_node;
mod input_buffer;
pub(crate) mod layout;
pub mod renderer;
#[allow(unused)]
mod symbol;
mod value;
mod widget;