Iros
 
Loading...
Searching...
No Matches
terminal_input.h
Go to the documentation of this file.
1#pragma once
2
7#include "ttx/focus_event.h"
8#include "ttx/key_event.h"
9#include "ttx/mouse_event.h"
10#include "ttx/paste_event.h"
11
12namespace ttx {
14
16public:
18
19private:
20 void handle(PrintableCharacter const& printable_character);
21 void handle(DCS const& dcs);
22 void handle(CSI const& csi);
23 void handle(Escape const& escape);
24 void handle(ControlCharacter const& control_character);
25
26 EscapeSequenceParser m_parser;
27 di::Vector<Event> m_events;
28 bool m_in_bracketed_paste { false };
29 di::String m_paste_buffer;
30};
31}
Definition vector_forward_declaration.h:8
Definition variant_forward_declaration.h:6
Definition escape_sequence_parser.h:73
Definition terminal_input.h:15
auto parse(di::StringView input) -> di::Vector< Event >
Definition terminal_input.cpp:15
string::StringViewImpl< string::Utf8Encoding > StringView
Definition string_view.h:12
string::StringImpl< string::Utf8Encoding > String
Definition string.h:11
Definition escape_sequence_parser.cpp:18
di::Variant< KeyEvent, MouseEvent, FocusEvent, PasteEvent > Event
Definition terminal_input.h:13
Definition escape_sequence_parser.h:34
Definition escape_sequence_parser.h:59
Definition escape_sequence_parser.h:21
Definition escape_sequence_parser.h:47
Definition escape_sequence_parser.h:11