1 module libwasm.bindings.FontFaceSet; 2 3 import libwasm.types; 4 5 import memutils.ct: tuple; 6 import libwasm.bindings.EventHandler; 7 import libwasm.bindings.EventTarget; 8 import libwasm.bindings.FontFace; 9 10 @safe: 11 nothrow: 12 13 struct FontFaceSet { 14 nothrow: 15 libwasm.bindings.EventTarget.EventTarget _parent; 16 alias _parent this; 17 this(Handle h) { 18 _parent = .EventTarget(h); 19 } 20 uint size()() { 21 return Object_Getter__uint(this._parent, "size"); 22 } 23 void add()(scope ref FontFace font) { 24 Object_Call_Handle__void(this._parent, "add", font.handle); 25 } 26 bool has()(scope ref FontFace font) { 27 return Serialize_Object_VarArgCall!bool(this._parent, "has", "Handle", tuple(cast(Handle)font.handle)); 28 } 29 bool delete_()(scope ref FontFace font) { 30 return Serialize_Object_VarArgCall!bool(this._parent, "delete", "Handle", tuple(cast(Handle)font.handle)); 31 } 32 void clear()() { 33 Object_Call__void(this._parent, "clear"); 34 } 35 auto entries()() { 36 return FontFaceSetIterator(Object_Getter__Handle(this._parent, "entries")); 37 } 38 auto values()() { 39 return FontFaceSetIterator(Object_Getter__Handle(this._parent, "values")); 40 } 41 void forEach(T1)(FontFaceSetForEachCallback cb, scope auto ref T1 thisArg) { 42 // Any 43 Handle _handle_thisArg = getOrCreateHandle(thisArg); 44 FontFaceSet_forEach(this._parent, cb, _handle_thisArg); 45 dropHandle!(T1)(_handle_thisArg); 46 } 47 void forEach()(FontFaceSetForEachCallback cb) { 48 FontFaceSet_forEach_0(this._parent, cb); 49 } 50 void onloading(T0)(scope auto ref Optional!(T0) onloading) if (isTOrPointer!(T0, EventHandlerNonNull)) { 51 Object_Call_EventHandler__void(this._parent, "onloading", !onloading.empty, onloading.front); 52 } 53 EventHandler onloading()() { 54 return Object_Getter__EventHandler(this._parent, "onloading"); 55 } 56 void onloadingdone(T0)(scope auto ref Optional!(T0) onloadingdone) if (isTOrPointer!(T0, EventHandlerNonNull)) { 57 Object_Call_EventHandler__void(this._parent, "onloadingdone", !onloadingdone.empty, onloadingdone.front); 58 } 59 EventHandler onloadingdone()() { 60 return Object_Getter__EventHandler(this._parent, "onloadingdone"); 61 } 62 void onloadingerror(T0)(scope auto ref Optional!(T0) onloadingerror) if (isTOrPointer!(T0, EventHandlerNonNull)) { 63 Object_Call_EventHandler__void(this._parent, "onloadingerror", !onloadingerror.empty, onloadingerror.front); 64 } 65 EventHandler onloadingerror()() { 66 return Object_Getter__EventHandler(this._parent, "onloadingerror"); 67 } 68 auto load()(string font, string text /* = " " */) { 69 return JsPromise!(Sequence!(FontFace))(Object_Call_string_string__Handle(this._parent, "load", font, text)); 70 } 71 auto load()(string font) { 72 return JsPromise!(Sequence!(FontFace))(Object_Call_string__Handle(this._parent, "load", font)); 73 } 74 bool check()(string font, string text /* = " " */) { 75 return Serialize_Object_VarArgCall!bool(this._parent, "check", "string;string", tuple(font, text)); 76 } 77 bool check()(string font) { 78 return Object_Call_string__bool(this._parent, "check", font); 79 } 80 auto ready()() { 81 return JsPromise!(void)(Object_Getter__Handle(this._parent, "ready")); 82 } 83 FontFaceSetLoadStatus status()() { 84 return Object_Getter__int(this._parent, "status"); 85 } 86 } 87 alias FontFaceSetForEachCallback = void delegate(FontFace, FontFace, FontFaceSet); 88 struct FontFaceSetIterator { 89 nothrow: 90 JsHandle handle; 91 alias handle this; 92 this(Handle h) { 93 this.handle = JsHandle(h); 94 } 95 auto next()() { 96 return FontFaceSetIteratorResult(Object_Getter__Handle(this.handle, "next")); 97 } 98 } 99 struct FontFaceSetIteratorResult { 100 nothrow: 101 JsHandle handle; 102 alias handle this; 103 this(Handle h) { 104 this.handle = JsHandle(h); 105 } 106 static auto create() { 107 return FontFaceSetIteratorResult(libwasm_add__object()); 108 } 109 void value()(scope ref Any value) { 110 Object_Call_Handle__void(this.handle, "value", value.handle); 111 } 112 auto value()() { 113 return Any(Object_Getter__Handle(this.handle, "value")); 114 } 115 void done()(bool done) { 116 Object_Call_bool__void(this.handle, "done", done); 117 } 118 bool done()() { 119 return Object_Getter__bool(this.handle, "done"); 120 } 121 } 122 enum FontFaceSetLoadStatus { 123 loading, 124 loaded 125 } 126 127 128 extern (C) void FontFaceSet_forEach(Handle, FontFaceSetForEachCallback, Handle); 129 extern (C) void FontFaceSet_forEach_0(Handle, FontFaceSetForEachCallback);