These documents catalog EVERY public feature, method, function, enum variant, and constructor in the Ratatui Rust library with precise file/line references. This has the unfinished items; the other has the finished items.
| Feature Name |
File/Line |
Status |
| try_init |
ratatui/src/init.rs:330 |
β |
| try_init_with_options |
ratatui/src/init.rs:425 |
β |
| try_restore |
ratatui/src/init.rs:487 |
β |
| Viewport::Fixed(Rect) |
ratatui-core/src/terminal/viewport.rs:30 |
β |
| Terminal struct |
ratatui-core/src/terminal/terminal.rs:76 |
β οΈ |
| Terminal::hide_cursor |
ratatui-core/src/terminal/terminal.rs:495 |
β |
| Terminal::show_cursor |
ratatui-core/src/terminal/terminal.rs:502 |
β |
| Terminal::get_cursor |
ratatui-core/src/terminal/terminal.rs:513 |
β |
| Terminal::set_cursor |
ratatui-core/src/terminal/terminal.rs:520 |
β |
| Terminal::get_cursor_position |
ratatui-core/src/terminal/terminal.rs:527 |
β οΈ |
| Terminal::set_cursor_position |
ratatui-core/src/terminal/terminal.rs:532 |
β οΈ |
| Terminal::clear |
ratatui-core/src/terminal/terminal.rs:540 |
β |
| Terminal::swap_buffers |
ratatui-core/src/terminal/terminal.rs:562 |
β |
| CompletedFrame struct |
ratatui-core/src/terminal/frame.rs:40 |
β |
Notes: - Terminal struct: No direct Terminal object; abstracted behind RatatuiRuby module methods - Terminal::get_cursor_position/set_cursor_position: Only available via Frame during draw, not on Terminal
| Feature Name |
File/Line |
Status |
| Spacing enum |
ratatui-core/src/layout/layout.rs:80 |
β |
| Offset struct |
ratatui-core/src/layout/offset.rs:10 |
β |
| Margin struct |
ratatui-core/src/layout/margin.rs:38 |
β |
| Feature Name |
File/Line |
Status |
| Styled trait |
ratatui-core/src/style/stylize.rs:15 |
β |
| Stylize trait |
ratatui-core/src/style/stylize.rs:* |
β |
| Feature Name |
File/Line |
Status |
| Masked struct |
ratatui-core/src/text/masked.rs:26 |
β |
| ToText trait |
ratatui-core/src/text/text.rs:721 |
β |
| ToSpan trait |
ratatui-core/src/text/span.rs:481 |
β |
| StyledGrapheme struct |
ratatui-core/src/text/grapheme.rs:12 |
β |
| ToLine trait |
ratatui-core/src/text/line.rs:810 |
β |
| Feature Name |
File/Line |
Status |
| BorderType::LightDoubleDashed |
ratatui-widgets/src/borders.rs:89 |
β |
| BorderType::HeavyDoubleDashed |
ratatui-widgets/src/borders.rs:97 |
β |
| BorderType::LightTripleDashed |
ratatui-widgets/src/borders.rs:105 |
β |
| BorderType::HeavyTripleDashed |
ratatui-widgets/src/borders.rs:113 |
β |
| BorderType::LightQuadrupleDashed |
ratatui-widgets/src/borders.rs:121 |
β |
| BorderType::HeavyQuadrupleDashed |
ratatui-widgets/src/borders.rs:129 |
β |
| Feature Name |
File/Line |
Status |
| TableState struct |
ratatui-widgets/src/table/state.rs:55 |
β οΈ |
| TableState::new |
ratatui-widgets/src/table/state.rs:62 |
β οΈ |
| TableState::with_offset |
ratatui-widgets/src/table/state.rs:79 |
β |
| TableState::with_selected |
ratatui-widgets/src/table/state.rs:96 |
β |
| TableState::with_selected_column |
ratatui-widgets/src/table/state.rs:116 |
β |
| TableState::with_selected_cell |
ratatui-widgets/src/table/state.rs:135 |
β |
| TableState::offset |
ratatui-widgets/src/table/state.rs:161 |
β οΈ |
| TableState::offset_mut |
ratatui-widgets/src/table/state.rs:175 |
β |
| TableState::selected |
ratatui-widgets/src/table/state.rs:189 |
β οΈ |
| TableState::selected_column |
ratatui-widgets/src/table/state.rs:205 |
β οΈ |
| TableState::selected_cell |
ratatui-widgets/src/table/state.rs:220 |
β |
| TableState::selected_mut |
ratatui-widgets/src/table/state.rs:238 |
β |
| TableState::select |
ratatui-widgets/src/table/state.rs:269 |
β οΈ |
| TableState::select_next |
ratatui-widgets/src/table/state.rs:336 |
β |
| TableState::select_previous |
ratatui-widgets/src/table/state.rs:371 |
β |
| TableState::select_next_column |
ratatui-widgets/src/table/state.rs:353 |
β |
| TableState::select_previous_column |
ratatui-widgets/src/table/state.rs:388 |
β |
| TableState::scroll_down_by |
ratatui-widgets/src/table/state.rs:475 |
β |
| TableState::scroll_up_by |
ratatui-widgets/src/table/state.rs:494 |
β |
Notes: - TableState: Implemented as Data.define attributes on Table widget itself (selected_row, selected_column, offset) instead of separate state object
| Feature Name |
File/Line |
Status |
| ListState struct |
ratatui-widgets/src/list/state.rs:45 |
β οΈ |
| ListState::with_offset |
ratatui-widgets/src/list/state.rs:51 |
β |
| ListState::with_selected |
ratatui-widgets/src/list/state.rs:68 |
β |
| ListState::offset |
ratatui-widgets/src/list/state.rs:85 |
β οΈ |
| ListState::offset_mut |
ratatui-widgets/src/list/state.rs:99 |
β |
| ListState::selected |
ratatui-widgets/src/list/state.rs:113 |
β οΈ |
| ListState::selected_mut |
ratatui-widgets/src/list/state.rs:129 |
β |
| ListState::select |
ratatui-widgets/src/list/state.rs:145 |
β οΈ |
| ListState::select_next |
ratatui-widgets/src/list/state.rs:177 |
β |
| ListState::select_previous |
ratatui-widgets/src/list/state.rs:195 |
β |
| ListState::select_first |
ratatui-widgets/src/list/state.rs:200 |
β |
| ListState::select_last |
ratatui-widgets/src/list/state.rs:217 |
β |
Notes: - ListState: Implemented as Data.define attributes on List widget itself (selected_index, offset) instead of separate state object | ListState::scroll_down_by | ratatui-widgets/src/list/state.rs:248 | β | | ListState::scroll_up_by | ratatui-widgets/src/list/state.rs:267 | β |
| Feature Name |
File/Line |
Status |
| SparklineBar struct |
ratatui-widgets/src/sparkline.rs:253 |
β |
| Feature Name |
File/Line |
Status |
| ScrollbarState struct |
ratatui-widgets/src/scrollbar.rs:149 |
β οΈ |
| ScrollDirection::Forward |
ratatui-widgets/src/scrollbar.rs:169 |
β |
| ScrollDirection::Backward |
ratatui-widgets/src/scrollbar.rs:172 |
β |
Notes: - ScrollbarState: Implemented as Data.define attributes on Scrollbar widget itself (content_length, position) instead of separate state object
| Feature Name |
File/Line |
Status |
| CalendarEventStore struct |
ratatui-widgets/src/calendar.rs:258 |
β |
| Feature Name |
File/Line |
Status |
| Context struct |
ratatui-widgets/src/canvas.rs:515 |
β |
| Painter struct |
ratatui-widgets/src/canvas.rs:403 |
β |
| Label struct |
ratatui-widgets/src/canvas.rs:61 |
β |
| Points shape |
ratatui-widgets/src/canvas/points.rs:7 |
β |
| Feature Name |
File/Line |
Status |
| Buffer::empty |
ratatui-core/src/buffer/buffer.rs:77 |
β |
| Buffer::filled |
ratatui-core/src/buffer/buffer.rs:83 |
β |
| Buffer::with_lines |
ratatui-core/src/buffer/buffer.rs:91 |
β |
| Buffer::get_mut |
ratatui-core/src/buffer/buffer.rs:150 |
β |
| Buffer::index_of |
ratatui-core/src/buffer/buffer.rs:248 |
β |
| Buffer::set_string |
ratatui-core/src/buffer/buffer.rs:323 |
β |
| Buffer::set_stringn |
ratatui-core/src/buffer/buffer.rs:335 |
β |
| Buffer::set_line |
ratatui-core/src/buffer/buffer.rs:372 |
β |
| Buffer::set_span |
ratatui-core/src/buffer/buffer.rs:394 |
β |
| Buffer::set_style |
ratatui-core/src/buffer/buffer.rs:404 |
β |
| Buffer::reset |
ratatui-core/src/buffer/buffer.rs:427 |
β |
| Cell::set_style |
ratatui-core/src/buffer/cell.rs:153 |
β |
| Cell::reset |
ratatui-core/src/buffer/cell.rs:193 |
β |
Notes: - Buffer: Read-only access implemented via RatatuiRuby.get_cell_at. Direct mutation methods not exposed in Ruby API
| Feature Name |
File/Line |
Status |
| Widget trait |
ratatui-core/src/widgets/widget.rs:70 |
β οΈ |
| StatefulWidget trait |
ratatui-core/src/widgets/stateful_widget.rs:124 |
β οΈ |
Notes: - Widget/StatefulWidget traits: Not exposed as Ruby traits. Widgets implement CoerceableWidget mixin and rendering handled via FFI
| Feature Name |
File/Line |
Status |
| Backend trait |
ratatui-core/src/backend.rs:148 |
β οΈ |
| ClearType::All |
ratatui-core/src/backend.rs:117 |
β |
| ClearType::AfterCursor |
ratatui-core/src/backend.rs:119 |
β |
| ClearType::BeforeCursor |
ratatui-core/src/backend.rs:121 |
β |
| ClearType::CurrentLine |
ratatui-core/src/backend.rs:123 |
β |
| ClearType::UntilNewLine |
ratatui-core/src/backend.rs:125 |
β |
| WindowSize struct |
ratatui-core/src/backend.rs:130 |
β |
| TermionBackend |
ratatui-termion/src/lib.rs:* |
β |
| TermwizBackend |
ratatui-termwiz/src/lib.rs:* |
β |
Notes: - Backend trait: Abstracted away. Terminal uses Crossterm backend internally, not exposed to Ruby API - ClearType: Not exposed. Clearing handled via Clear widget