1 module libwasm.bindings.DataTransfer;
2 
3 import libwasm.types;
4 
5 import memutils.ct: tuple;
6 import libwasm.bindings.DOMStringList;
7 import libwasm.bindings.DataTransferItemList;
8 import libwasm.bindings.Directory;
9 import libwasm.bindings.Element;
10 import libwasm.bindings.File;
11 import libwasm.bindings.FileList;
12 import libwasm.bindings.Node;
13 
14 @safe:
15 nothrow:
16 
17 struct DataTransfer {
18   nothrow:
19   JsHandle handle;
20   alias handle this;
21   this(Handle h) {
22     this.handle = JsHandle(h);
23   }
24   void dropEffect()(string dropEffect) {
25     Object_Call_string__void(this.handle, "dropEffect", dropEffect);
26   }
27   string dropEffect()() {
28     return Object_Getter__string(this.handle, "dropEffect");
29   }
30   void effectAllowed()(string effectAllowed) {
31     Object_Call_string__void(this.handle, "effectAllowed", effectAllowed);
32   }
33   string effectAllowed()() {
34     return Object_Getter__string(this.handle, "effectAllowed");
35   }
36   auto items()() {
37     return DataTransferItemList(Object_Getter__Handle(this.handle, "items"));
38   }
39   void setDragImage()(scope ref Element image, int x, int y) {
40     Serialize_Object_VarArgCall!void(this.handle, "setDragImage", "Handle;int;int", tuple(cast(Handle)image._parent, x, y));
41   }
42   auto types()() {
43     return Sequence!(string)(Object_Getter__Handle(this.handle, "types"));
44   }
45   string getData()(string format) {
46     return Object_Call_string__string(this.handle, "getData", format);
47   }
48   void setData()(string format, string data) {
49     Object_Call_string_string__void(this.handle, "setData", format, data);
50   }
51   void clearData()(string format) {
52     Object_Call_string__void(this.handle, "clearData", format);
53   }
54   void clearData()() {
55     Object_Call__void(this.handle, "clearData");
56   }
57   auto files()() {
58     return recastOpt!(FileList)(Object_Getter__OptionalHandle(this.handle, "files"));
59   }
60   auto getFilesAndDirectories()() {
61     return JsPromise!(Sequence!(SumType!(File, Directory)))(Object_Getter__Handle(this.handle, "getFilesAndDirectories"));
62   }
63   auto getFiles()(bool recursiveFlag /* = false */) {
64     return JsPromise!(Sequence!(File))(Object_Call_bool__Handle(this.handle, "getFiles", recursiveFlag));
65   }
66   auto getFiles()() {
67     return JsPromise!(Sequence!(File))(Object_Getter__Handle(this.handle, "getFiles"));
68   }
69   void addElement()(scope ref Element element) {
70     Object_Call_Handle__void(this.handle, "addElement", element._parent);
71   }
72   uint mozItemCount()() {
73     return Object_Getter__uint(this.handle, "mozItemCount");
74   }
75   void mozCursor()(string mozCursor) {
76     Object_Call_string__void(this.handle, "mozCursor", mozCursor);
77   }
78   string mozCursor()() {
79     return Object_Getter__string(this.handle, "mozCursor");
80   }
81   auto mozTypesAt()(uint index) {
82     return DOMStringList(Object_Call_uint__Handle(this.handle, "mozTypesAt", index));
83   }
84   void mozClearDataAt()(string format, uint index) {
85     Object_Call_string_uint__void(this.handle, "mozClearDataAt", format, index);
86   }
87   void mozSetDataAt(T1)(string format, scope auto ref T1 data, uint index) {
88     // Any
89     Handle _handle_data = getOrCreateHandle(data);
90     Serialize_Object_VarArgCall!void(this.handle, "mozSetDataAt", "string;Handle;uint", tuple(format, _handle_data, index));
91     dropHandle!(T1)(_handle_data);
92   }
93   auto mozGetDataAt()(string format, uint index) {
94     return Any(Object_Call_string_uint__Handle(this.handle, "mozGetDataAt", format, index));
95   }
96   void updateDragImage()(scope ref Element image, int x, int y) {
97     Serialize_Object_VarArgCall!void(this.handle, "updateDragImage", "Handle;int;int", tuple(cast(Handle)image._parent, x, y));
98   }
99   bool mozUserCancelled()() {
100     return Object_Getter__bool(this.handle, "mozUserCancelled");
101   }
102   auto mozSourceNode()() {
103     return recastOpt!(Node)(Object_Getter__OptionalHandle(this.handle, "mozSourceNode"));
104   }
105   string mozTriggeringPrincipalURISpec()() {
106     return Object_Getter__string(this.handle, "mozTriggeringPrincipalURISpec");
107   }
108   auto mozCloneForEvent()(string event) {
109     return DataTransfer(Object_Call_string__Handle(this.handle, "mozCloneForEvent", event));
110   }
111 }
112 
113