1 module libwasm.bindings.VRDisplayEvent;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.Event;
7 import libwasm.bindings.VRDisplay;
8 
9 @safe:
10 nothrow:
11 
12 struct VRDisplayEvent {
13   nothrow:
14   libwasm.bindings.Event.Event _parent;
15   alias _parent this;
16   this(Handle h) {
17     _parent = .Event(h);
18   }
19   auto display()() {
20     return VRDisplay(Object_Getter__Handle(this._parent, "display"));
21   }
22   Optional!(VRDisplayEventReason) reason()() {
23     return VRDisplayEvent_reason_Get(this._parent);
24   }
25 }
26 struct VRDisplayEventInit {
27   nothrow:
28   libwasm.bindings.Event.EventInit _parent;
29   alias _parent this;
30   this(Handle h) {
31     _parent = .EventInit(h);
32   }
33   static auto create() {
34     return VRDisplayEventInit(libwasm_add__object());
35   }
36   void display()(scope ref VRDisplay display) {
37     Object_Call_Handle__void(this._parent, "display", display.handle);
38   }
39   auto display()() {
40     return VRDisplay(Object_Getter__Handle(this._parent, "display"));
41   }
42   void reason()(VRDisplayEventReason reason) {
43     Object_Call_int__void(this._parent, "reason", reason);
44   }
45   VRDisplayEventReason reason()() {
46     return Object_Getter__int(this._parent, "reason");
47   }
48 }
49 enum VRDisplayEventReason {
50   mounted,
51   navigation,
52   requested,
53   unmounted
54 }
55 
56 
57 extern (C) Optional!(VRDisplayEventReason) VRDisplayEvent_reason_Get(Handle);