#[repr(C)]pub struct text_console_frontend_interface {
pub start: Option<unsafe extern "C" fn(obj: *mut conf_object_t, backend: *mut conf_object_t) -> c_int>,
pub stop: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int)>,
pub set_title: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, short_title: *const c_char, long_title: *const c_char)>,
pub set_size: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, width: c_int, height: c_int)>,
pub set_max_scrollback_size: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, num_lines: c_int)>,
pub set_default_colours: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, default_fg_col: uint32, default_bg_col: uint32)>,
pub set_visible: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, visible: bool)>,
pub set_contents: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, top: c_int, left: c_int, bottom: c_int, right: c_int, text: *const c_char, attrib: *const text_console_attrib_t)>,
pub set_cursor_pos: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, row: c_int, col: c_int)>,
pub append_text: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, num_lines: c_int, text: *const c_char, attrib: *const text_console_attrib_t)>,
pub refresh_screen: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, text: *const c_char, attrib: *const text_console_attrib_t, sb_text: *const c_char, sb_attrib: *const text_console_attrib_t, scrollback_size: c_int)>,
}
Fields§
§start: Option<unsafe extern "C" fn(obj: *mut conf_object_t, backend: *mut conf_object_t) -> c_int>
Called when the console is finalised. ‘backend’ is the calling text console.
stop: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int)>
Called when the console is being destroyed.
set_title: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, short_title: *const c_char, long_title: *const c_char)>
Set the window title. Two title strings are given, where the long title is meant for a window title bar and the short for a window list. The long title string is at least as long as the short.
set_size: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, width: c_int, height: c_int)>
Called when the screen size of the console changes. The width (columns) and height (rows) are given in characters.
set_max_scrollback_size: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, num_lines: c_int)>
Specify the maximum scrollback size (in lines).
set_default_colours: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, default_fg_col: uint32, default_bg_col: uint32)>
Specify new default text colours for the console. These are used for characters whose colours were set to Text_Console_Colour_Default_Background or Text_Console_Colour_Default_Foreground.
set_visible: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, visible: bool)>
Show/hide the console window.
set_contents: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, top: c_int, left: c_int, bottom: c_int, right: c_int, text: *const c_char, attrib: *const text_console_attrib_t)>
Update characters and attributes in a rectangle in the console. (top, left) is the line and column of the upper left corner; (bottom, right) is the line and column of the lower right corner (inclusive). Lines and columns are 0-based. Lines are counted from the top of the visible screen.
‘text’ and ‘attrib’ are the text and attribute arrays, respectively, into which the lines and columns are used as indices. For example, the start of the rectangle in the text array is &text[width * top + left], where width was set by set_size.
set_cursor_pos: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, row: c_int, col: c_int)>
Move the cursor to a new position. row is the new cursor row (0-based), within the visible screen. col is the new cursor column (0-based).
append_text: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, num_lines: c_int, text: *const c_char, attrib: *const text_console_attrib_t)>
Append text at the bottom of the screen of the console, implicitly scrolling the text upwards. num_lines is the number of lines to append_scroll. ‘text’ and ‘attrib’ are the start of the newly scrolled-in data, representing the num_lines bottommost lines of the screen after scrolling.
refresh_screen: Option<unsafe extern "C" fn(obj: *mut conf_object_t, handle: c_int, text: *const c_char, attrib: *const text_console_attrib_t, sb_text: *const c_char, sb_attrib: *const text_console_attrib_t, scrollback_size: c_int)>
Replace the screen and scrollback data with new information. ‘text’ and ‘attrib’ each contain width * height elements, where width and height were set by set_size. ‘sb_text’ and ‘sb_attrib’ each contain width * scrollback_size elements.
Trait Implementations§
source§impl Clone for text_console_frontend_interface
impl Clone for text_console_frontend_interface
source§fn clone(&self) -> text_console_frontend_interface
fn clone(&self) -> text_console_frontend_interface
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Default for text_console_frontend_interface
impl Default for text_console_frontend_interface
source§fn default() -> text_console_frontend_interface
fn default() -> text_console_frontend_interface
source§impl Ord for text_console_frontend_interface
impl Ord for text_console_frontend_interface
source§fn cmp(&self, other: &text_console_frontend_interface) -> Ordering
fn cmp(&self, other: &text_console_frontend_interface) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for text_console_frontend_interface
impl PartialEq for text_console_frontend_interface
source§fn eq(&self, other: &text_console_frontend_interface) -> bool
fn eq(&self, other: &text_console_frontend_interface) -> bool
self
and other
values to be equal, and is used by ==
.source§impl PartialOrd for text_console_frontend_interface
impl PartialOrd for text_console_frontend_interface
impl Copy for text_console_frontend_interface
impl Eq for text_console_frontend_interface
impl StructuralPartialEq for text_console_frontend_interface
Auto Trait Implementations§
impl Freeze for text_console_frontend_interface
impl RefUnwindSafe for text_console_frontend_interface
impl Send for text_console_frontend_interface
impl Sync for text_console_frontend_interface
impl Unpin for text_console_frontend_interface
impl UnwindSafe for text_console_frontend_interface
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)