pub trait Console {
Show 24 methods fn clear(&mut self, how: ClearType) -> Result<()>; fn color(&self) -> (Option<u8>, Option<u8>); fn set_color(&mut self, fg: Option<u8>, bg: Option<u8>) -> Result<()>; fn enter_alt(&mut self) -> Result<()>; fn hide_cursor(&mut self) -> Result<()>; fn is_interactive(&self) -> bool; fn leave_alt(&mut self) -> Result<()>; fn locate(&mut self, pos: CharsXY) -> Result<()>; fn move_within_line(&mut self, off: i16) -> Result<()>; fn print(&mut self, text: &str) -> Result<()>; fn poll_key<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Result<Option<Key>>> + 'async_trait>>
    where
        Self: 'async_trait,
        'life0: 'async_trait
; fn read_key<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Result<Key>> + 'async_trait>>
    where
        Self: 'async_trait,
        'life0: 'async_trait
; fn show_cursor(&mut self) -> Result<()>; fn size_chars(&self) -> Result<CharsXY>; fn write(&mut self, text: &str) -> Result<()>; fn sync_now(&mut self) -> Result<()>; fn set_sync(&mut self, _enabled: bool) -> Result<bool>; fn size_pixels(&self) -> Result<SizeInPixels> { ... } fn draw_circle(&mut self, _center: PixelsXY, _radius: u16) -> Result<()> { ... } fn draw_circle_filled(
        &mut self,
        _center: PixelsXY,
        _radius: u16
    ) -> Result<()> { ... } fn draw_line(&mut self, _x1y1: PixelsXY, _x2y2: PixelsXY) -> Result<()> { ... } fn draw_pixel(&mut self, _xy: PixelsXY) -> Result<()> { ... } fn draw_rect(&mut self, _x1y1: PixelsXY, _x2y2: PixelsXY) -> Result<()> { ... } fn draw_rect_filled(&mut self, _x1y1: PixelsXY, _x2y2: PixelsXY) -> Result<()> { ... }
}
Expand description

Hooks to implement the commands that manipulate the console.

Required Methods§

Clears the part of the console given by how.

Gets the console’s current foreground and background colors.

Sets the console’s foreground and background colors to fg and bg.

If any of the colors is None, the color is left unchanged.

Enters the alternate console.

Hides the cursor.

Returns true if the console is attached to an interactive terminal. This controls whether reading a line echoes back user input, for example.

Leaves the alternate console.

Moves the cursor to the given position, which must be within the screen.

Moves the cursor within the line. Positive values move right, negative values move left.

Writes text to the console, followed by a newline or CRLF pair depending on the needs of the console to advance a line.

The input text is not supposed to contain any control characters, such as CR or LF.

Returns the next key press if any is available.

Waits for and returns the next key press.

Shows the cursor.

Queries the size of the text console.

The returned position represents the first row and column that lay outside of the console.

Writes the text into the console at the position of the cursor.

Causes any buffered output to be synced.

This is a no-op when video syncing is enabled because output is never buffered in that case.

Enables or disables video syncing.

When enabled, all graphical operations immediately updated the rendering target, which is useful for interactive behavior because we want to see an immediate response. When disabled, all operations are buffered, which is useful for scripts (as otherwise rendering is too slow).

Flushes any pending updates when enabled.

Returns the previous status of the video syncing flag.

Provided Methods§

Queries the size of the graphical console.

Draws the outline of a circle at _center with _radius using the current drawing color.

Draws a filled circle at _center with _radius using the current drawing color.

Draws a line from _x1y1 to _x2y2 using the current drawing color.

Draws a single pixel at _xy using the current drawing color.

Draws the outline of a rectangle from _x1y1 to _x2y2 using the current drawing color.

Draws a filled rectangle from _x1y1 to _x2y2 using the current drawing color.

Implementors§