aboutsummaryrefslogtreecommitdiffstats
path: root/src/parser.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.rs')
-rw-r--r--src/parser.rs26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/parser.rs b/src/parser.rs
index 07ee7c9..613e18e 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -26,17 +26,31 @@ impl Parser {
}
}
+ /// Resizes the terminal.
+ pub fn set_size(&mut self, rows: u16, cols: u16) {
+ self.screen.set_size(rows, cols);
+ }
+
+ /// Scrolls to the given position in the scrollback.
+ ///
+ /// This position indicates the offset from the top of the screen, and
+ /// should be `0` to put the normal screen in view.
+ ///
+ /// This affects the return values of methods called on `parser.screen()`:
+ /// for instance, `parser.screen().cell(0, 0)` will return the top left
+ /// corner of the screen after taking the scrollback offset into account.
+ /// It does not affect `parser.process()` at all.
+ ///
+ /// The value given will be clamped to the actual size of the scrollback.
+ pub fn set_scrollback(&mut self, rows: usize) {
+ self.screen.set_scrollback(rows);
+ }
+
/// Returns a reference to a `Screen` object containing the terminal
/// state.
pub fn screen(&self) -> &crate::screen::Screen {
&self.screen
}
-
- /// Returns a mutable reference to a `Screen` object containing the
- /// terminal state.
- pub fn screen_mut(&mut self) -> &mut crate::screen::Screen {
- &mut self.screen
- }
}
impl Default for Parser {