xtd.console - Reference Guide  0.0.1
Modern c++17 library to manage terminal on Windows, macOS and Linux.
xtd Namespace Reference

The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more. More...

Classes

class  background_color
 Represent background color output manipulator class. More...
 
class  basic_console
 Represents the standard input, output, and error streams for console applications. More...
 
class  beep
 Represent beep output manipulator class. More...
 
class  console_cancel_event_args
 Provides data for the console::cancel_key_press event. This class cannot be inherited. More...
 
class  console_key_info
 Specifies the standard keys on a console. More...
 
class  foreground_color
 Represent foreground color output manipulator class. More...
 
class  reset_color
 Represent reset color output manipulator class. More...
 

Typedefs

using console = basic_console< char >
 Represents the standard character input, output, and error streams for console applications. More...
 
using console_cancel_event_handler = xtd::delegate< void(console_cancel_event_args &)>
 Represents the method that will handle the cancel_key_press event of a xtd::console. More...
 
using wconsole = basic_console< wchar_t >
 Represents the standard wide character input, output, and error streams for console applications. More...
 

Enumerations

enum  console_color {
  console_color::black, console_color::dark_blue, console_color::dark_green, console_color::dark_cyan,
  console_color::dark_red, console_color::dark_magenta, console_color::dark_yellow, console_color::gray,
  console_color::dark_gray, console_color::blue, console_color::green, console_color::cyan,
  console_color::red, console_color::magenta, console_color::yellow, console_color::white
}
 Specifies constants that define foreground and background colors for the console. More...
 
enum  console_key {
  console_key::backspace = 8, console_key::tab = 9, console_key::clear = 12, console_key::enter = 13,
  console_key::pause = 19, console_key::caps_lock = 20, console_key::escape = 27, console_key::spacebar = 32,
  console_key::page_up = 33, console_key::page_down = 34, console_key::end = 35, console_key::home = 36,
  console_key::left_arrow = 37, console_key::up_arrow = 38, console_key::right_arrow = 39, console_key::down_arrow = 40,
  console_key::select = 41, console_key::print = 42, console_key::execute = 43, console_key::print_screen = 44,
  console_key::insert = 45, console_key::del = 46, console_key::help = 47, console_key::d0 = 48,
  console_key::d1 = 49, console_key::d2 = 50, console_key::d3 = 51, console_key::d4 = 52,
  console_key::d5 = 53, console_key::d6 = 54, console_key::d7 = 55, console_key::d8 = 56,
  console_key::d9 = 57, console_key::a = 65, console_key::b = 66, console_key::c = 67,
  console_key::d = 68, console_key::e = 69, console_key::f = 70, console_key::g = 71,
  console_key::h = 72, console_key::i = 73, console_key::j = 74, console_key::k = 75,
  console_key::l = 76, console_key::m = 77, console_key::n = 78, console_key::o = 79,
  console_key::p = 80, console_key::q = 81, console_key::r = 82, console_key::s = 83,
  console_key::t = 84, console_key::u = 85, console_key::v = 86, console_key::w = 87,
  console_key::x = 88, console_key::y = 89, console_key::z = 90, console_key::left_windows = 91,
  console_key::right_windows = 92, console_key::applications = 93, console_key::sleep = 95, console_key::num_pad_0 = 96,
  console_key::num_pad_1 = 97, console_key::num_pad_2 = 98, console_key::num_pad_3 = 99, console_key::num_pad_4 = 100,
  console_key::num_pad_5 = 101, console_key::num_pad_6 = 102, console_key::num_pad_7 = 103, console_key::num_pad_8 = 104,
  console_key::num_pad_9 = 105, console_key::multiply = 106, console_key::add = 107, console_key::separator = 108,
  console_key::subtract = 109, console_key::decimal = 110, console_key::divide = 111, console_key::f1 = 112,
  console_key::f2 = 113, console_key::f3 = 114, console_key::f4 = 115, console_key::f5 = 116,
  console_key::f6 = 117, console_key::f7 = 118, console_key::f8 = 119, console_key::f9 = 120,
  console_key::f10 = 121, console_key::f11 = 122, console_key::f12 = 123, console_key::f13 = 124,
  console_key::f14 = 125, console_key::f15 = 126, console_key::f16 = 127, console_key::f17 = 128,
  console_key::f18 = 129, console_key::f19 = 130, console_key::f20 = 131, console_key::f21 = 132,
  console_key::f22 = 133, console_key::f23 = 134, console_key::f24 = 135, console_key::browser_back = 166,
  console_key::browser_forward = 167, console_key::browser_refresh = 168, console_key::browser_stop = 169, console_key::browser_search = 170,
  console_key::browser_favorites = 171, console_key::browser_home = 172, console_key::volume_mute = 173, console_key::volume_down = 174,
  console_key::volume_up = 175, console_key::media_next = 176, console_key::media_previous = 177, console_key::media_stop = 178,
  console_key::media_play = 179, console_key::launch_mail = 180, console_key::launch_media_select = 181, console_key::launch_app1 = 182,
  console_key::launch_app2 = 183, console_key::oem1 = 186, console_key::oem_plus = 187, console_key::oem_comma = 188,
  console_key::oem_minus = 189, console_key::oem_period = 190, console_key::oem2 = 191, console_key::oem3 = 192,
  console_key::oem4 = 219, console_key::oem5 = 220, console_key::oem6 = 221, console_key::oem7 = 222,
  console_key::oem8 = 223, console_key::oem102 = 226, console_key::process = 229, console_key::packet = 231,
  console_key::attention = 246, console_key::cr_sel = 247, console_key::ex_sel = 248, console_key::erase_end_of_file = 249,
  console_key::play = 250, console_key::zoom = 251, console_key::no_name = 252, console_key::pa1 = 253,
  console_key::oem_clear = 254
}
 Specifies the standard keys on a console. More...
 
enum  console_modifiers { console_modifiers::alt = 0b1, console_modifiers::shift = 0b10, console_modifiers::control = 0b100 }
 Represents the SHIFT, ALT, and CTRL modifier keys on a keyboard. More...
 
enum  console_special_key { console_special_key::control_break, console_special_key::control_c, console_special_key::control_backslash, console_special_key::control_z }
 Specifies combinations of modifier and console keys that can interrupt the current process. More...
 

Detailed Description

The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.