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