[][src]Struct tui::terminal::Frame

pub struct Frame<'a, B: 'a> where
    B: Backend
{ /* fields omitted */ }

Represents a consistent terminal interface for rendering.

Implementations

impl<'a, B> Frame<'a, B> where
    B: Backend
[src]

pub fn size(&self) -> Rect[src]

Terminal size, guaranteed not to change when rendering.

pub fn render_widget<W>(&mut self, widget: W, area: Rect) where
    W: Widget
[src]

Render a Widget to the current buffer using Widget::render.

Examples

let block = Block::default();
let area = Rect::new(0, 0, 5, 5);
let mut frame = terminal.get_frame();
frame.render_widget(block, area);

pub fn render_stateful_widget<W>(
    &mut self,
    widget: W,
    area: Rect,
    state: &mut W::State
) where
    W: StatefulWidget
[src]

Render a StatefulWidget to the current buffer using StatefulWidget::render.

The last argument should be an instance of the StatefulWidget::State associated to the given StatefulWidget.

Examples

let mut state = ListState::default();
state.select(Some(1));
let items = vec![
    ListItem::new("Item 1"),
    ListItem::new("Item 2"),
];
let list = List::new(items);
let area = Rect::new(0, 0, 5, 5);
let mut frame = terminal.get_frame();
frame.render_stateful_widget(list, area, &mut state);

pub fn set_cursor(&mut self, x: u16, y: u16)[src]

After drawing this frame, make the cursor visible and put it at the specified (x, y) coordinates. If this method is not called, the cursor will be hidden.

Note that this will interfere with calls to Terminal::hide_cursor(), Terminal::show_cursor(), and Terminal::set_cursor(). Pick one of the APIs and stick with it.

Auto Trait Implementations

impl<'a, B> RefUnwindSafe for Frame<'a, B> where
    B: RefUnwindSafe
[src]

impl<'a, B> Send for Frame<'a, B> where
    B: Send
[src]

impl<'a, B> Sync for Frame<'a, B> where
    B: Sync
[src]

impl<'a, B> Unpin for Frame<'a, B>[src]

impl<'a, B> !UnwindSafe for Frame<'a, B>[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.