|
|
@ -2,7 +2,7 @@ use std::default::Default; |
|
|
|
|
|
|
|
|
|
|
|
use ctru_sys::{consoleClear, consoleInit, consoleSelect, consoleSetWindow, PrintConsole}; |
|
|
|
use ctru_sys::{consoleClear, consoleInit, consoleSelect, consoleSetWindow, PrintConsole}; |
|
|
|
|
|
|
|
|
|
|
|
use crate::gfx::Screen; |
|
|
|
use crate::gfx::{Gfx, Screen}; |
|
|
|
|
|
|
|
|
|
|
|
pub struct Console { |
|
|
|
pub struct Console { |
|
|
|
context: Box<PrintConsole>, |
|
|
|
context: Box<PrintConsole>, |
|
|
@ -12,7 +12,7 @@ impl Console { |
|
|
|
/// Initialize a console on the chosen screen, overwriting whatever was on the screen
|
|
|
|
/// Initialize a console on the chosen screen, overwriting whatever was on the screen
|
|
|
|
/// previously (including other consoles). The new console is automatically selected for
|
|
|
|
/// previously (including other consoles). The new console is automatically selected for
|
|
|
|
/// printing.
|
|
|
|
/// printing.
|
|
|
|
pub fn init(screen: Screen) -> Self { |
|
|
|
pub fn init(_gfx: &Gfx, screen: Screen) -> Self { |
|
|
|
let mut context = Box::new(PrintConsole::default()); |
|
|
|
let mut context = Box::new(PrintConsole::default()); |
|
|
|
|
|
|
|
|
|
|
|
unsafe { consoleInit(screen.into(), context.as_mut()) }; |
|
|
|
unsafe { consoleInit(screen.into(), context.as_mut()) }; |
|
|
@ -45,12 +45,6 @@ impl Console { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
impl Default for Console { |
|
|
|
|
|
|
|
fn default() -> Self { |
|
|
|
|
|
|
|
Console::init(Screen::Top) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
impl Drop for Console { |
|
|
|
impl Drop for Console { |
|
|
|
fn drop(&mut self) { |
|
|
|
fn drop(&mut self) { |
|
|
|
static mut EMPTY_CONSOLE: PrintConsole = unsafe { const_zero::const_zero!(PrintConsole) }; |
|
|
|
static mut EMPTY_CONSOLE: PrintConsole = unsafe { const_zero::const_zero!(PrintConsole) }; |
|
|
|