package wayland

  1. Overview
  2. Docs
Pure OCaml Wayland protocol library

Install

dune-project
 Dependency

Authors

Maintainers

Sources

wayland-2.2.tbz
sha256=0f882060a4cfe9424ed397676b8e2aaa931d84610beb29cb2ec9c355d1819625
sha512=847781a3d274da7463ad1a2e46bada3663b8dee08fa576ad787e7ba35cb0f39a3e1a0e6e9729db2f643885a35ae32ece0358c5897d31b68907cad44f1b26af31

doc/src/wayland.protocols/cursor_shape_v1_proto.ml.html

Source file cursor_shape_v1_proto.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
(* This file was generated automatically by wayland-scanner-ocaml *)

open struct
  module Proxy = Wayland.Proxy
  module Iface_reg = Wayland.Iface_reg
  module Metadata = Wayland.Metadata
end

module Wp_cursor_shape_manager_v1 = struct
  type t = [`Wp_cursor_shape_manager_v1]
  type _ Metadata.ty += T : [`Wp_cursor_shape_manager_v1] Metadata.ty
  type versions = [`V1 | `V2]
  let interface = "wp_cursor_shape_manager_v1"
  let version = 2l
  
  let requests = function
    | 0 -> "destroy", []
    | 1 -> "get_pointer", ["cursor_shape_device", `New_ID (Some "wp_cursor_shape_device_v1");
                           "pointer", `Object (Some "wl_pointer")]
    | 2 -> "get_tablet_tool_v2", ["cursor_shape_device", `New_ID (Some "wp_cursor_shape_device_v1");
                                  "tablet_tool", `Object (Some "zwp_tablet_tool_v2")]
    | i -> Proxy.unknown_request i, []
  
  let events = function
    | i -> Proxy.unknown_event i, []
  
end
let () = Iface_reg.register (module Wp_cursor_shape_manager_v1)

module Wp_cursor_shape_device_v1 = struct
  type t = [`Wp_cursor_shape_device_v1]
  type _ Metadata.ty += T : [`Wp_cursor_shape_device_v1] Metadata.ty
  type versions = [`V1 | `V2]
  let interface = "wp_cursor_shape_device_v1"
  let version = 2l
  
  (** Cursor shapes.
      
      This enum describes cursor shapes.
      
      The names are taken from the CSS W3C specification:
      https://w3c.github.io/csswg-drafts/css-ui/#cursor
      with a few additions.
      
      Note that there are some groups of cursor shapes that are related:
      The first group is drag-and-drop cursors which are used to indicate
      the selected action during dnd operations. The second group is resize
      cursors which are used to indicate resizing and moving possibilities
      on window borders. It is recommended that the shapes in these groups
      should use visually compatible images and metaphors. *)
  module Shape = struct
    type t =
      | Default : t
      | Context_menu : t
      | Help : t
      | Pointer : t
      | Progress : t
      | Wait : t
      | Cell : t
      | Crosshair : t
      | Text : t
      | Vertical_text : t
      | Alias : t
      | Copy : t
      | Move : t
      | No_drop : t
      | Not_allowed : t
      | Grab : t
      | Grabbing : t
      | E_resize : t
      | N_resize : t
      | Ne_resize : t
      | Nw_resize : t
      | S_resize : t
      | Se_resize : t
      | Sw_resize : t
      | W_resize : t
      | Ew_resize : t
      | Ns_resize : t
      | Nesw_resize : t
      | Nwse_resize : t
      | Col_resize : t
      | Row_resize : t
      | All_scroll : t
      | Zoom_in : t
      | Zoom_out : t
      | Dnd_ask : t
      | All_resize : t
    
    let to_int32 = function
      | Default -> 1l
      | Context_menu -> 2l
      | Help -> 3l
      | Pointer -> 4l
      | Progress -> 5l
      | Wait -> 6l
      | Cell -> 7l
      | Crosshair -> 8l
      | Text -> 9l
      | Vertical_text -> 10l
      | Alias -> 11l
      | Copy -> 12l
      | Move -> 13l
      | No_drop -> 14l
      | Not_allowed -> 15l
      | Grab -> 16l
      | Grabbing -> 17l
      | E_resize -> 18l
      | N_resize -> 19l
      | Ne_resize -> 20l
      | Nw_resize -> 21l
      | S_resize -> 22l
      | Se_resize -> 23l
      | Sw_resize -> 24l
      | W_resize -> 25l
      | Ew_resize -> 26l
      | Ns_resize -> 27l
      | Nesw_resize -> 28l
      | Nwse_resize -> 29l
      | Col_resize -> 30l
      | Row_resize -> 31l
      | All_scroll -> 32l
      | Zoom_in -> 33l
      | Zoom_out -> 34l
      | Dnd_ask -> 35l
      | All_resize -> 36l
    
    let of_int32 = function
      | 1l -> Default
      | 2l -> Context_menu
      | 3l -> Help
      | 4l -> Pointer
      | 5l -> Progress
      | 6l -> Wait
      | 7l -> Cell
      | 8l -> Crosshair
      | 9l -> Text
      | 10l -> Vertical_text
      | 11l -> Alias
      | 12l -> Copy
      | 13l -> Move
      | 14l -> No_drop
      | 15l -> Not_allowed
      | 16l -> Grab
      | 17l -> Grabbing
      | 18l -> E_resize
      | 19l -> N_resize
      | 20l -> Ne_resize
      | 21l -> Nw_resize
      | 22l -> S_resize
      | 23l -> Se_resize
      | 24l -> Sw_resize
      | 25l -> W_resize
      | 26l -> Ew_resize
      | 27l -> Ns_resize
      | 28l -> Nesw_resize
      | 29l -> Nwse_resize
      | 30l -> Col_resize
      | 31l -> Row_resize
      | 32l -> All_scroll
      | 33l -> Zoom_in
      | 34l -> Zoom_out
      | 35l -> Dnd_ask
      | 36l -> All_resize
      | x -> Fmt.failwith "Invalid shape enum value %ld" x
  end
  
  
  module Error = struct
    type t =
      | Invalid_shape : t
    
    let to_int32 = function
      | Invalid_shape -> 1l
    
    let of_int32 = function
      | 1l -> Invalid_shape
      | x -> Fmt.failwith "Invalid error enum value %ld" x
  end
  
  let requests = function
    | 0 -> "destroy", []
    | 1 -> "set_shape", ["serial", `Uint; "shape", `Uint]
    | i -> Proxy.unknown_request i, []
  
  let events = function
    | i -> Proxy.unknown_event i, []
  
end
let () = Iface_reg.register (module Wp_cursor_shape_device_v1)
OCaml

Innovation. Community. Security.