Mercurial > projects > dstep
comparison dstep/qtkit/QTDataReference.d @ 16:19885b43130e
Huge update, the bridge actually works now
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sun, 03 Jan 2010 22:06:11 +0100 |
parents | |
children | b9de51448c6b |
comparison
equal
deleted
inserted
replaced
15:7ff919f595d5 | 16:19885b43130e |
---|---|
1 /** | |
2 * Copyright: Copyright (c) 2009 Jacob Carlborg. | |
3 * Authors: Jacob Carlborg | |
4 * Version: Initial created: Sep 28, 2009 | |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | |
6 */ | |
7 module dstep.qtkit.QTDataReference; | |
8 | |
9 import dstep.coreservices.carboncore.MacTypes; | |
10 import dstep.foundation.Foundation; | |
11 import dstep.objc.bridge.Bridge; | |
12 import dstep.objc.objc; | |
13 import dstep.qtkit.QTKitDefines; | |
14 | |
15 import bindings = dstep.qtkit.QTDataReference_bindings; | |
16 | |
17 private | |
18 { | |
19 NSString QTDataReferenceTypeFile_; | |
20 NSString QTDataReferenceTypeHandle_; | |
21 NSString QTDataReferenceTypePointer_; | |
22 NSString QTDataReferenceTypeResource_; | |
23 NSString QTDataReferenceTypeURL_; | |
24 } | |
25 | |
26 NSString QTDataReferenceTypeFile () | |
27 { | |
28 if (QTDataReferenceTypeFile_) | |
29 return QTDataReferenceTypeFile_; | |
30 | |
31 return QTDataReferenceTypeFile_ = new NSString(bindings.QTDataReferenceTypeFile); | |
32 } | |
33 | |
34 NSString QTDataReferenceTypeHandle () | |
35 { | |
36 if (QTDataReferenceTypeHandle_) | |
37 return QTDataReferenceTypeHandle_; | |
38 | |
39 return QTDataReferenceTypeHandle_ = new NSString(bindings.QTDataReferenceTypeHandle); | |
40 } | |
41 | |
42 NSString QTDataReferenceTypePointer () | |
43 { | |
44 if (QTDataReferenceTypePointer_) | |
45 return QTDataReferenceTypePointer_; | |
46 | |
47 return QTDataReferenceTypePointer_ = new NSString(bindings.QTDataReferenceTypePointer); | |
48 } | |
49 | |
50 NSString QTDataReferenceTypeResource () | |
51 { | |
52 if (QTDataReferenceTypeResource_) | |
53 return QTDataReferenceTypeResource_; | |
54 | |
55 return QTDataReferenceTypeResource_ = new NSString(bindings.QTDataReferenceTypeResource); | |
56 } | |
57 | |
58 NSString QTDataReferenceTypeURL () | |
59 { | |
60 if (QTDataReferenceTypeURL_) | |
61 return QTDataReferenceTypeURL_; | |
62 | |
63 return QTDataReferenceTypeURL_ = new NSString(bindings.QTDataReferenceTypeURL); | |
64 } | |
65 | |
66 class QTDataReference : NSObject, INSCoding | |
67 { | |
68 mixin (ObjcWrap); | |
69 | |
70 static Object dataReferenceWithDataRef (Handle dataRef, NSString type) | |
71 { | |
72 return invokeObjcSelfClass!(Object, "dataReferenceWithDataRef:type:", Handle, NSString)(dataRef, type); | |
73 } | |
74 | |
75 static Object dataReferenceWithDataRefData (NSData dataRefData, NSString type) | |
76 { | |
77 return invokeObjcSelfClass!(Object, "dataReferenceWithDataRefData:type:", NSData, NSString)(dataRefData, type); | |
78 } | |
79 | |
80 static Object dataReferenceWithReferenceToFile (NSString fileName) | |
81 { | |
82 return invokeObjcSelfClass!(Object, "dataReferenceWithReferenceToFile:", NSString)(fileName); | |
83 } | |
84 | |
85 static Object dataReferenceWithReferenceToURL (NSURL url) | |
86 { | |
87 return invokeObjcSelfClass!(Object, "dataReferenceWithReferenceToURL:", NSURL)(url); | |
88 } | |
89 | |
90 static Object dataReferenceWithReferenceToData (NSData data) | |
91 { | |
92 return invokeObjcSelfClass!(Object, "dataReferenceWithReferenceToData:", NSData)(data); | |
93 } | |
94 | |
95 static Object dataReferenceWithReferenceToData (NSData data, NSString name, NSString MIMEType) | |
96 { | |
97 return invokeObjcSelfClass!(Object, "dataReferenceWithReferenceToData:name:MIMEType:", NSData, NSString, NSString)(data, name, MIMEType); | |
98 } | |
99 | |
100 QTDataReference initWithDataRef (Handle dataRef, NSString type) | |
101 { | |
102 id result = invokeObjcSelf!(id, "initWithDataRef:type:", Handle, NSString)(dataRef, type); | |
103 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
104 } | |
105 | |
106 this (Handle dataRef, NSString type) | |
107 { | |
108 super(QTDataReference.alloc.initWithDataRef(dataRef, type).objcObject); | |
109 } | |
110 | |
111 QTDataReference initWithDataRefData (NSData dataRefData, NSString type) | |
112 { | |
113 id result = invokeObjcSelf!(id, "initWithDataRefData:type:", NSData, NSString)(dataRefData, type); | |
114 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
115 } | |
116 | |
117 this (NSData dataRefData, NSString type) | |
118 { | |
119 super(QTDataReference.alloc.initWithDataRefData(dataRefData, type).objcObject); | |
120 } | |
121 | |
122 QTDataReference initWithReferenceToFile (NSString fileName) | |
123 { | |
124 id result = invokeObjcSelf!(id, "initWithReferenceToFile:", NSString)(fileName); | |
125 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
126 } | |
127 | |
128 this (NSString fileName) | |
129 { | |
130 super(QTDataReference.alloc.initWithReferenceToFile(fileName).objcObject); | |
131 } | |
132 | |
133 QTDataReference initWithReferenceToURL (NSURL url) | |
134 { | |
135 id result = invokeObjcSelf!(id, "initWithReferenceToURL:", NSURL)(url); | |
136 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
137 } | |
138 | |
139 this (NSURL url) | |
140 { | |
141 super(QTDataReference.alloc.initWithReferenceToURL(url).objcObject); | |
142 } | |
143 | |
144 QTDataReference initWithReferenceToData (NSData data) | |
145 { | |
146 id result = invokeObjcSelf!(id, "initWithReferenceToData:", NSData)(data); | |
147 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
148 } | |
149 | |
150 this (NSData data) | |
151 { | |
152 super(QTDataReference.alloc.initWithReferenceToData(data).objcObject); | |
153 } | |
154 | |
155 QTDataReference initWithReferenceToData (NSData data, NSString name, NSString MIMEType) | |
156 { | |
157 id result = invokeObjcSelf!(id, "initWithReferenceToData:name:MIMEType:", NSData, NSString, NSString)(data, name, MIMEType); | |
158 return result is this.objcObject ? this : (result !is null ? new QTDataReference(result) : null); | |
159 } | |
160 | |
161 this (NSData data, NSString name, NSString MIMEType) | |
162 { | |
163 super(QTDataReference.alloc.initWithReferenceToData(data, name, MIMEType).objcObject); | |
164 } | |
165 | |
166 Handle dataRef () | |
167 { | |
168 return invokeObjcSelf!(Handle, "dataRef"); | |
169 } | |
170 | |
171 NSData dataRefData () | |
172 { | |
173 return invokeObjcSelf!(NSData, "dataRefData"); | |
174 } | |
175 | |
176 NSString dataRefType () | |
177 { | |
178 return invokeObjcSelf!(NSString, "dataRefType"); | |
179 } | |
180 | |
181 NSString referenceFile () | |
182 { | |
183 return invokeObjcSelf!(NSString, "referenceFile"); | |
184 } | |
185 | |
186 NSURL referenceURL () | |
187 { | |
188 return invokeObjcSelf!(NSURL, "referenceURL"); | |
189 } | |
190 | |
191 NSData referenceData () | |
192 { | |
193 return invokeObjcSelf!(NSData, "referenceData"); | |
194 } | |
195 | |
196 NSString name () | |
197 { | |
198 return invokeObjcSelf!(NSString, "name"); | |
199 } | |
200 | |
201 NSString MIMEType () | |
202 { | |
203 return invokeObjcSelf!(NSString, "MIMEType"); | |
204 } | |
205 | |
206 void setDataRef (Handle dataRef) | |
207 { | |
208 return invokeObjcSelf!(void, "setDataRef:", Handle)(dataRef); | |
209 } | |
210 | |
211 void setDataRefType (NSString type) | |
212 { | |
213 return invokeObjcSelf!(void, "setDataRefType:", NSString)(type); | |
214 } | |
215 | |
216 void encodeWithCoder (NSCoder aCoder) | |
217 { | |
218 return invokeObjcSelf!(void, "encodeWithCoder:", NSCoder)(aCoder); | |
219 } | |
220 | |
221 QTDataReference initWithCoder (NSCoder aDecoder) | |
222 { | |
223 return invokeObjcSelf!(QTDataReference, "initWithCoder:", NSCoder)(aDecoder); | |
224 } | |
225 } | |
226 |