pub trait TextScreen<'a> {
    fn set_client(&self, client: Option<&'a dyn TextScreenClient>);
    fn get_size(&self) -> (usize, usize);
    fn print(
        &self,
        buffer: &'static mut [u8],
        len: usize
    ) -> Result<(), (ErrorCode, &'static mut [u8])>; fn set_cursor(
        &self,
        x_position: usize,
        y_position: usize
    ) -> Result<(), ErrorCode>; fn hide_cursor(&self) -> Result<(), ErrorCode>; fn show_cursor(&self) -> Result<(), ErrorCode>; fn blink_cursor_on(&self) -> Result<(), ErrorCode>; fn blink_cursor_off(&self) -> Result<(), ErrorCode>; fn display_on(&self) -> Result<(), ErrorCode>; fn display_off(&self) -> Result<(), ErrorCode>; fn clear(&self) -> Result<(), ErrorCode>; }

Required Methods

Returns a tuple (width, height) with the resolution of the screen that is being used. This function is synchronous as the resolution is known by the driver at any moment.

The resolution is constant.

Sends a write command to the driver, and the buffer to write from and the len are sent as arguments. When the write operation is finished, the driver will call the write_complete() callback.

Return values:

  • Ok(()): The write command is valid and will be sent to the driver.
  • BUSY: The driver is busy with another command.

Sends to the driver a command to set the cursor at a given position (x_position, y_position). When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to hide the cursor. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to show the cursor. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to turn on the blinking cursor. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to turn off the blinking cursor. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to turn on the display of the screen. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to turn off the display of the screen. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Sends to the driver a command to clear the display of the screen. When finished, the driver will call the command_complete() callback.

Return values:

  • Ok(()): The command is valid and will be sent to the driver.
  • BUSY: Another command is in progress.

Implementors