terminal_emulator/
mode.rs

1use bitflags::bitflags;
2
3bitflags! {
4    pub struct TermMode: u16 {
5        const SHOW_CURSOR         = 0b00_0000_0000_0001;
6        const APP_CURSOR          = 0b00_0000_0000_0010;
7        const APP_KEYPAD          = 0b00_0000_0000_0100;
8        const MOUSE_REPORT_CLICK  = 0b00_0000_0000_1000;
9        const BRACKETED_PASTE     = 0b00_0000_0001_0000;
10        const SGR_MOUSE           = 0b00_0000_0010_0000;
11        const MOUSE_MOTION        = 0b00_0000_0100_0000;
12        const LINE_WRAP           = 0b00_0000_1000_0000;
13        const LINE_FEED_NEW_LINE  = 0b00_0001_0000_0000;
14        const ORIGIN              = 0b00_0010_0000_0000;
15        const INSERT              = 0b00_0100_0000_0000;
16        const FOCUS_IN_OUT        = 0b00_1000_0000_0000;
17        const ALT_SCREEN          = 0b01_0000_0000_0000;
18        const MOUSE_DRAG          = 0b10_0000_0000_0000;
19        const ANY                 = 0b11_1111_1111_1111;
20        const NONE                = 0;
21    }
22}
23
24impl Default for TermMode {
25    fn default() -> TermMode {
26        TermMode::SHOW_CURSOR | TermMode::LINE_WRAP
27    }
28}