Expand description
Scrollable content component
A scrollable text pane with focus support, keyboard navigation, and mouse scrolling. Ideal for displaying log output, help text, or any scrollable content.
§Example
ⓘ
use ratatui_interact::components::{
ScrollableContent, ScrollableContentState, ScrollableContentStyle,
handle_scrollable_content_key, handle_scrollable_content_mouse,
};
use ratatui::prelude::*;
// Create state with content
let mut state = ScrollableContentState::new(vec![
"Line 1".to_string(),
"Line 2".to_string(),
"Line 3".to_string(),
]);
state.set_focused(true);
// In render:
let content = ScrollableContent::new(&state)
.title("My Content")
.style(ScrollableContentStyle::default());
content.render(area, buf);
// Handle events:
handle_scrollable_content_key(&mut state, &key_event, visible_height);
handle_scrollable_content_mouse(&mut state, &mouse_event, content_area);Structs§
- Scrollable
Content - Scrollable content widget
- Scrollable
Content State - State for the ScrollableContent component
- Scrollable
Content Style - Style configuration for ScrollableContent
Enums§
- Scrollable
Content Action - Actions that can result from scrollable content interaction
Functions§
- handle_
scrollable_ content_ key - Handle keyboard input for scrollable content
- handle_
scrollable_ content_ mouse - Handle mouse input for scrollable content