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);