FTXUI
5.0.0
C++ functional terminal UI.
mouse.hpp
Go to the documentation of this file.
1
// Copyright 2020 Arthur Sonzogni. All rights reserved.
2
// Use of this source code is governed by the MIT license that can be found in
3
// the LICENSE file.
4
#ifndef FTXUI_COMPONENT_MOUSE_HPP
5
#define FTXUI_COMPONENT_MOUSE_HPP
6
namespace
ftxui
{
7
8
/// @brief A mouse event. It contains the coordinate of the mouse, the button
9
/// pressed and the modifier (shift, ctrl, meta).
10
/// @ingroup component
11
struct
Mouse
{
12
enum
Button
{
13
Left
= 0,
14
Middle
= 1,
15
Right
= 2,
16
None
= 3,
17
WheelUp
= 4,
18
WheelDown
= 5,
19
WheelLeft
= 6,
/// Supported terminal only.
20
WheelRight
= 7,
/// Supported terminal only.
21
};
22
23
enum
Motion
{
24
Released
= 0,
25
Pressed
= 1,
26
Moved
= 2,
27
};
28
29
// Button
30
Button
button
= Button::None;
31
32
// Motion
33
Motion
motion
= Motion::Pressed;
34
35
// Modifiers:
36
bool
shift
=
false
;
37
bool
meta
=
false
;
38
bool
control
=
false
;
39
40
// Coordinates:
41
int
x
= 0;
42
int
y
= 0;
43
};
44
45
}
// namespace ftxui
46
47
#endif
/* end of include guard: FTXUI_COMPONENT_MOUSE_HPP */
ftxui
Definition:
animation.hpp:10
ftxui::Mouse
A mouse event. It contains the coordinate of the mouse, the button pressed and the modifier (shift,...
Definition:
mouse.hpp:11
ftxui::Mouse::Button
Button
Definition:
mouse.hpp:12
ftxui::Mouse::WheelLeft
@ WheelLeft
Definition:
mouse.hpp:19
ftxui::Mouse::Middle
@ Middle
Definition:
mouse.hpp:14
ftxui::Mouse::Left
@ Left
Definition:
mouse.hpp:13
ftxui::Mouse::WheelUp
@ WheelUp
Definition:
mouse.hpp:17
ftxui::Mouse::None
@ None
Definition:
mouse.hpp:16
ftxui::Mouse::Right
@ Right
Definition:
mouse.hpp:15
ftxui::Mouse::WheelRight
@ WheelRight
Supported terminal only.
Definition:
mouse.hpp:20
ftxui::Mouse::WheelDown
@ WheelDown
Definition:
mouse.hpp:18
ftxui::Mouse::Motion
Motion
Definition:
mouse.hpp:23
ftxui::Mouse::Pressed
@ Pressed
Definition:
mouse.hpp:25
ftxui::Mouse::Moved
@ Moved
Definition:
mouse.hpp:26
ftxui::Mouse::Released
@ Released
Definition:
mouse.hpp:24
ftxui::Mouse::y
int y
Definition:
mouse.hpp:42
ftxui::Mouse::meta
bool meta
Definition:
mouse.hpp:37
ftxui::Mouse::x
int x
Definition:
mouse.hpp:41
ftxui::Mouse::button
Button button
Definition:
mouse.hpp:30
ftxui::Mouse::shift
bool shift
Definition:
mouse.hpp:36
ftxui::Mouse::control
bool control
Definition:
mouse.hpp:38
ftxui::Mouse::motion
Motion motion
Definition:
mouse.hpp:33