1#[derive(Debug, Clone, PartialEq)]
2pub enum CursorStyle {
3 Auto,
5 Default,
6 None,
7
8 ContextMenu,
10 Help,
11 Pointer,
12 Progress,
13 Wait,
14
15 Cell,
17 Crosshair,
18 Text,
19 VerticalText,
20
21 Alias,
23 Copy,
24 Move,
25 NoDrop,
26 NotAllowed,
27
28 AllScroll,
30 ColResize,
31 RowResize,
32 NResize,
33 EResize,
34 SResize,
35 WResize,
36 NeResize,
37 NwResize,
38 SeResize,
39 SwResize,
40 EwResize,
41 NsResize,
42 NeswResize,
43 NwseResize,
44
45 ZoomIn,
47 ZoomOut,
48
49 Grab,
51 Grabbing,
52
53 Url(String, i32, i32),
55}
56
57impl std::fmt::Display for CursorStyle {
58 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
59 match self {
61 CursorStyle::Auto => write!(f, "auto"),
62 CursorStyle::Default => write!(f, "default"),
63 CursorStyle::None => write!(f, "none"),
64 CursorStyle::ContextMenu => write!(f, "context-menu"),
65 CursorStyle::Help => write!(f, "help"),
66 CursorStyle::Pointer => write!(f, "pointer"),
67 CursorStyle::Progress => write!(f, "progress"),
68 CursorStyle::Wait => write!(f, "wait"),
69 CursorStyle::Cell => write!(f, "cell"),
70 CursorStyle::Crosshair => write!(f, "crosshair"),
71 CursorStyle::Text => write!(f, "text"),
72 CursorStyle::VerticalText => write!(f, "vertical-text"),
73 CursorStyle::Alias => write!(f, "alias"),
74 CursorStyle::Copy => write!(f, "copy"),
75 CursorStyle::Move => write!(f, "move"),
76 CursorStyle::NoDrop => write!(f, "no-drop"),
77 CursorStyle::NotAllowed => write!(f, "not-allowed"),
78 CursorStyle::AllScroll => write!(f, "all-scroll"),
79 CursorStyle::ColResize => write!(f, "col-resize"),
80 CursorStyle::RowResize => write!(f, "row-resize"),
81 CursorStyle::NResize => write!(f, "n-resize"),
82 CursorStyle::EResize => write!(f, "e-resize"),
83 CursorStyle::SResize => write!(f, "s-resize"),
84 CursorStyle::WResize => write!(f, "w-resize"),
85 CursorStyle::NeResize => write!(f, "ne-resize"),
86 CursorStyle::NwResize => write!(f, "nw-resize"),
87 CursorStyle::SeResize => write!(f, "se-resize"),
88 CursorStyle::SwResize => write!(f, "sw-resize"),
89 CursorStyle::EwResize => write!(f, "ew-resize"),
90 CursorStyle::NsResize => write!(f, "ns-resize"),
91 CursorStyle::NeswResize => write!(f, "nesw-resize"),
92 CursorStyle::NwseResize => write!(f, "nwse-resize"),
93 CursorStyle::ZoomIn => write!(f, "zoom-in"),
94 CursorStyle::ZoomOut => write!(f, "zoom-out"),
95 CursorStyle::Grab => write!(f, "grab"),
96 CursorStyle::Grabbing => write!(f, "grabbing"),
97 CursorStyle::Url(url, x, y) => write!(f, "url(\"{}\") {} {}, auto", url, x, y),
98 }
99 }
100}