author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Sun, 17 Jun 2012 14:49:30 +0000 | |
changeset 16 | a810555a635c |
parent 15 | c1db2c8aa2ed |
child 20 | 18a3e6b5f310 |
permissions | -rw-r--r-- |
1 | 1 |
"{ Package: 'stx:goodies/libcairo' }" |
2 |
||
3 |
"{ NameSpace: Cairo }" |
|
4 |
||
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
5 |
RefCountedStructure subclass:#Surface |
16 | 6 |
instanceVariableNames:'view' |
1 | 7 |
classVariableNames:'' |
16 | 8 |
poolDictionaries:'Cairo::SurfaceType' |
12 | 9 |
category:'Cairo-Objects' |
1 | 10 |
! |
11 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
12 |
|
1 | 13 |
!Surface class methodsFor:'instance creation'! |
14 |
||
15 |
forPdfFile: aStringOrFilename width: w height: h |
|
16 |
||
17 |
^self |
|
18 |
primPdfSurfaceCreate: aStringOrFilename asFilename asString |
|
19 |
widthInPoints: w asDouble |
|
20 |
heightInPoints: h asDouble |
|
21 |
||
22 |
"Created: / 10-07-2008 / 09:35:34 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
23 |
! |
|
24 |
||
25 |
forView: view |
|
26 |
||
27 |
^view device cairoSurfaceFor: view |
|
28 |
||
29 |
"Created: / 10-07-2008 / 10:15:04 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
30 |
! |
|
31 |
||
32 |
forXlib: dpy drawable: drawable visual: visual width: width height: height |
|
33 |
||
34 |
^self primXlibSurfaceCreate: dpy drawable: drawable visual: visual width: width height: height |
|
35 |
||
36 |
"Created: / 10-07-2008 / 11:06:22 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
37 |
! ! |
|
38 |
||
39 |
!Surface class methodsFor:'accessing'! |
|
40 |
||
12 | 41 |
dllPath |
42 |
||
43 |
OperatingSystem isMSWINDOWSlike ifTrue:[ |
|
44 |
^ #( 'C:\Windows' 'C:\Windows\System32' "Wild guess, should not harm" ) |
|
45 |
]. |
|
46 |
||
47 |
OperatingSystem isUNIXlike ifTrue:[ |
|
48 |
OperatingSystem getSystemType == #linux ifTrue:[ |
|
49 |
| path | |
|
50 |
||
51 |
path := #( '/lib' '/usr/lib' '/usr/local/lib' ). |
|
52 |
(OperatingSystem getSystemInfo at:#machine) = 'x86_64' ifTrue:[ |
|
53 |
"If the machine is 64bit, prepend standard path for 32bit libs. |
|
54 |
Leave standard paths at the end, as the system might be completely |
|
55 |
32bit but running on 64bit-capable CPU. |
|
56 |
||
57 |
CAVEAT: This is bit dangerous, as on 64bit OS, if ia32 libs are |
|
58 |
not installed byt 64bit sqlite libs are, then 64bit libs are found |
|
59 |
and when a function is called, segfault will occur!! |
|
60 |
||
61 |
Q: Is there a way how to figure out if the OS itself is 32bit, |
|
62 |
regardles on CPU?" |
|
63 |
path := #( '/lib32' '/usr/lib32' '/usr/local/lib32' ) , path. |
|
64 |
]. |
|
65 |
^path |
|
66 |
||
67 |
]. |
|
68 |
]. |
|
69 |
||
70 |
self error:'Unsupported operating system' |
|
71 |
||
72 |
" |
|
73 |
SqliteLibrary dllPath |
|
74 |
" |
|
75 |
||
76 |
"Created: / 31-08-2011 / 18:02:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
77 |
! |
|
78 |
||
1 | 79 |
libraryName |
80 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
81 |
OperatingSystem isUNIXlike ifTrue:[^'libcairo.so.2']. |
1 | 82 |
|
83 |
OperatingSystem isMSWINDOWSlike ifTrue:[^'cairo.dll']. |
|
84 |
||
85 |
self error:'Library name for host OS is not known' |
|
12 | 86 |
|
87 |
"Modified: / 10-09-2008 / 18:19:52 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
88 |
! |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
89 |
|
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
90 |
structSize |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
91 |
|
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
92 |
^0 |
12 | 93 |
|
94 |
"Modified: / 10-09-2008 / 18:19:52 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 95 |
! ! |
96 |
||
97 |
!Surface class methodsFor:'primitives'! |
|
98 |
||
99 |
primCopyPage: surface |
|
100 |
||
101 |
<cdecl: void "cairo_surface_copy_page" ( Cairo::Surface ) > |
|
102 |
self primitiveFailed |
|
103 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
104 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 105 |
! |
106 |
||
107 |
primCreateSimilar: other content: content width: width height: height |
|
108 |
||
109 |
<cdecl: Cairo::Surface "cairo_surface_create_similar" ( Cairo::Surface int32 int32 int32 ) > |
|
110 |
self primitiveFailed |
|
111 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
112 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 113 |
! |
114 |
||
115 |
primDestroy: surface |
|
116 |
||
117 |
<cdecl: void "cairo_surface_destroy" ( Cairo::Surface ) > |
|
118 |
self primitiveFailed |
|
119 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
120 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 121 |
! |
122 |
||
123 |
primFinish: surface |
|
124 |
||
125 |
<cdecl: void "cairo_surface_finish" ( Cairo::Surface ) > |
|
126 |
self primitiveFailed |
|
127 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
128 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 129 |
! |
130 |
||
131 |
primFlush: surface |
|
132 |
||
133 |
<cdecl: void "cairo_surface_flush" ( Cairo::Surface ) > |
|
134 |
self primitiveFailed |
|
135 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
136 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 137 |
! |
138 |
||
139 |
primGetContent: surface |
|
140 |
||
141 |
<cdecl: int32 "cairo_surface_get_content" ( Cairo::Surface ) > |
|
142 |
self primitiveFailed |
|
143 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
144 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 145 |
! |
146 |
||
147 |
primGetDeviceOffset: surface xOffset: x_offset yOffset: y_offset |
|
148 |
||
149 |
<cdecl: void "cairo_surface_get_device_offset" ( Cairo::Surface pointer pointer ) > |
|
150 |
self primitiveFailed |
|
151 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
152 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 153 |
! |
154 |
||
155 |
primGetFontOptions: surface options: options |
|
156 |
||
157 |
<cdecl: void "cairo_surface_get_font_options" ( Cairo::Surface Cairo::FontOptions ) > |
|
158 |
self primitiveFailed |
|
159 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
160 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 161 |
! |
162 |
||
163 |
primGetReferenceCount: surface |
|
164 |
||
165 |
<cdecl: uint32 "cairo_surface_get_reference_count" ( Cairo::Surface ) > |
|
166 |
self primitiveFailed |
|
167 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
168 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 169 |
! |
170 |
||
171 |
primGetType: surface |
|
172 |
||
173 |
<cdecl: int32 "cairo_surface_get_type" ( Cairo::Surface ) > |
|
174 |
self primitiveFailed |
|
175 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
176 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 177 |
! |
178 |
||
179 |
primGetUserData: surface key: key |
|
180 |
||
181 |
<cdecl: pointer "cairo_surface_get_user_data" ( Cairo::Surface Cairo::UserDataKey ) > |
|
182 |
self primitiveFailed |
|
183 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
184 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 185 |
! |
186 |
||
187 |
primImageSurfaceCreate: format width: width height: height |
|
188 |
||
189 |
<cdecl: Cairo::Surface "cairo_image_surface_create" ( int32 int32 int32 ) > |
|
190 |
self primitiveFailed |
|
12 | 191 |
|
192 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 193 |
! |
194 |
||
195 |
primImageSurfaceCreateForData: data format: format width: width height: height stride: stride |
|
196 |
||
12 | 197 |
<cdecl: Cairo::Surface "cairo_image_surface_create_for_data" ( pointer int32 int32 int32 int32 ) > |
1 | 198 |
self primitiveFailed |
12 | 199 |
|
200 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 201 |
! |
202 |
||
203 |
primImageSurfaceCreateFromPng: filename |
|
204 |
||
205 |
<cdecl: Cairo::Surface "cairo_image_surface_create_from_png" ( charPointer ) > |
|
206 |
self primitiveFailed |
|
12 | 207 |
|
208 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 209 |
! |
210 |
||
211 |
primImageSurfaceCreateFromPngStream: read_func closure: closure |
|
212 |
||
12 | 213 |
<cdecl: Cairo::Surface "cairo_image_surface_create_from_png_stream" ( pointer pointer ) > |
1 | 214 |
self primitiveFailed |
12 | 215 |
|
216 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 217 |
! |
218 |
||
219 |
primImageSurfaceGetData: surface |
|
220 |
||
12 | 221 |
<cdecl: pointer "cairo_image_surface_get_data" ( Cairo::Surface ) > |
1 | 222 |
self primitiveFailed |
12 | 223 |
|
224 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 225 |
! |
226 |
||
227 |
primImageSurfaceGetFormat: surface |
|
228 |
||
229 |
<cdecl: int32 "cairo_image_surface_get_format" ( Cairo::Surface ) > |
|
230 |
self primitiveFailed |
|
12 | 231 |
|
232 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 233 |
! |
234 |
||
235 |
primImageSurfaceGetHeight: surface |
|
236 |
||
237 |
<cdecl: int32 "cairo_image_surface_get_height" ( Cairo::Surface ) > |
|
238 |
self primitiveFailed |
|
12 | 239 |
|
240 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 241 |
! |
242 |
||
243 |
primImageSurfaceGetStride: surface |
|
244 |
||
245 |
<cdecl: int32 "cairo_image_surface_get_stride" ( Cairo::Surface ) > |
|
246 |
self primitiveFailed |
|
12 | 247 |
|
248 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 249 |
! |
250 |
||
251 |
primImageSurfaceGetWidth: surface |
|
252 |
||
253 |
<cdecl: int32 "cairo_image_surface_get_width" ( Cairo::Surface ) > |
|
254 |
self primitiveFailed |
|
12 | 255 |
|
256 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 257 |
! |
258 |
||
259 |
primMarkDirty: surface |
|
260 |
||
261 |
<cdecl: void "cairo_surface_mark_dirty" ( Cairo::Surface ) > |
|
262 |
self primitiveFailed |
|
263 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
264 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 265 |
! |
266 |
||
267 |
primMarkDirtyRectangle: surface x: x y: y width: width height: height |
|
268 |
||
269 |
<cdecl: void "cairo_surface_mark_dirty_rectangle" ( Cairo::Surface int32 int32 int32 int32 ) > |
|
270 |
self primitiveFailed |
|
271 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
272 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 273 |
! |
274 |
||
275 |
primPdfSurfaceCreate: filename widthInPoints: width_in_points heightInPoints: height_in_points |
|
276 |
||
277 |
<cdecl: Cairo::Surface "cairo_pdf_surface_create" ( charPointer double double ) > |
|
278 |
self primitiveFailed |
|
12 | 279 |
|
280 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 281 |
! |
282 |
||
283 |
primPdfSurfaceCreateForStream: write_func closure: closure widthInPoints: width_in_points heightInPoints: height_in_points |
|
284 |
||
12 | 285 |
<cdecl: Cairo::Surface "cairo_pdf_surface_create_for_stream" ( pointer pointer double double ) > |
1 | 286 |
self primitiveFailed |
287 |
||
12 | 288 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 289 |
! |
290 |
||
291 |
primPdfSurfaceSetSize: surface widthInPoints: width_in_points heightInPoints: height_in_points |
|
292 |
||
293 |
<cdecl: void "cairo_pdf_surface_set_size" ( Cairo::Surface double double ) > |
|
294 |
self primitiveFailed |
|
295 |
||
12 | 296 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 297 |
! |
298 |
||
299 |
primReference: surface |
|
300 |
||
301 |
<cdecl: Cairo::Surface "cairo_surface_reference" ( Cairo::Surface ) > |
|
302 |
self primitiveFailed |
|
303 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
304 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 305 |
! |
306 |
||
307 |
primSetDeviceOffset: surface xOffset: x_offset yOffset: y_offset |
|
308 |
||
309 |
<cdecl: void "cairo_surface_set_device_offset" ( Cairo::Surface double double ) > |
|
310 |
self primitiveFailed |
|
311 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
312 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 313 |
! |
314 |
||
315 |
primSetFallbackResolution: surface xPixelsPerInch: x_pixels_per_inch yPixelsPerInch: y_pixels_per_inch |
|
316 |
||
317 |
<cdecl: void "cairo_surface_set_fallback_resolution" ( Cairo::Surface double double ) > |
|
318 |
self primitiveFailed |
|
319 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
320 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 321 |
! |
322 |
||
323 |
primSetUserData: surface key: key userData: user_data destroy: destroy |
|
324 |
||
325 |
<cdecl: int32 "cairo_surface_set_user_data" ( Cairo::Surface Cairo::UserDataKey pointer pointer ) > |
|
326 |
self primitiveFailed |
|
327 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
328 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 329 |
! |
330 |
||
331 |
primShowPage: surface |
|
332 |
||
333 |
<cdecl: void "cairo_surface_show_page" ( Cairo::Surface ) > |
|
334 |
self primitiveFailed |
|
335 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
336 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 337 |
! |
338 |
||
339 |
primStatus: surface |
|
340 |
||
341 |
<cdecl: int32 "cairo_surface_status" ( Cairo::Surface ) > |
|
342 |
self primitiveFailed |
|
343 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
344 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 345 |
! |
346 |
||
347 |
primSvgSurfaceCreate: filename widthInPoints: width_in_points heightInPoints: height_in_points |
|
348 |
||
349 |
<cdecl: Cairo::Surface "cairo_svg_surface_create" ( charPointer double double ) > |
|
350 |
self primitiveFailed |
|
351 |
||
3 | 352 |
"Modified: / 10-07-2008 / 23:05:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 353 |
! |
354 |
||
355 |
primSvgSurfaceCreateForStream: write_func closure: closure widthInPoints: width_in_points heightInPoints: height_in_points |
|
356 |
||
357 |
<cdecl: Cairo::Surface "cairo_svg_surface_create_for_stream" ( pointer pointer double double ) > |
|
358 |
self primitiveFailed |
|
359 |
||
3 | 360 |
"Modified: / 10-07-2008 / 23:05:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 361 |
! |
362 |
||
363 |
primSvgSurfaceRestrictToVersion: surface version: version |
|
364 |
||
365 |
<cdecl: void "cairo_svg_surface_restrict_to_version" ( Cairo::Surface int32 ) > |
|
366 |
self primitiveFailed |
|
367 |
||
3 | 368 |
"Modified: / 10-07-2008 / 23:05:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 369 |
! |
370 |
||
371 |
primWriteToPng: surface filename: filename |
|
372 |
||
373 |
<cdecl: int32 "cairo_surface_write_to_png" ( Cairo::Surface charPointer ) > |
|
374 |
self primitiveFailed |
|
375 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
376 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 377 |
! |
378 |
||
379 |
primWriteToPngStream: surface writeFunc: write_func closure: closure |
|
380 |
||
381 |
<cdecl: int32 "cairo_surface_write_to_png_stream" ( Cairo::Surface pointer pointer ) > |
|
382 |
self primitiveFailed |
|
383 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
384 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 385 |
! |
386 |
||
387 |
primXlibSurfaceCreate: dpy drawable: drawable visual: visual width: width height: height |
|
388 |
||
12 | 389 |
<cdecl: Cairo::Surface "cairo_xlib_surface_create" ( pointer int32 pointer int32 int32 ) > |
1 | 390 |
self primitiveFailed |
12 | 391 |
|
392 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 393 |
! |
394 |
||
395 |
primXlibSurfaceCreateForBitmap: dpy bitmap: bitmap screen: screen width: width height: height |
|
396 |
||
12 | 397 |
<cdecl: Cairo::Surface "cairo_xlib_surface_create_for_bitmap" ( pointer int32 pointer int32 int32 ) > |
1 | 398 |
self primitiveFailed |
12 | 399 |
|
400 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 401 |
! |
402 |
||
403 |
primXlibSurfaceGetDepth: surface |
|
404 |
||
405 |
<cdecl: int32 "cairo_xlib_surface_get_depth" ( Cairo::Surface ) > |
|
406 |
self primitiveFailed |
|
12 | 407 |
|
408 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 409 |
! |
410 |
||
411 |
primXlibSurfaceGetDisplay: surface |
|
412 |
||
413 |
<cdecl: pointer "cairo_xlib_surface_get_display" ( Cairo::Surface ) > |
|
414 |
self primitiveFailed |
|
12 | 415 |
|
416 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 417 |
! |
418 |
||
419 |
primXlibSurfaceGetDrawable: surface |
|
420 |
||
12 | 421 |
<cdecl: int32 "cairo_xlib_surface_get_drawable" ( Cairo::Surface ) > |
1 | 422 |
self primitiveFailed |
12 | 423 |
|
424 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
425 |
! |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
426 |
|
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
427 |
primXlibSurfaceGetGc: surface |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
428 |
|
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
429 |
<cdecl: pointer "cairo_xlib_surface_get_gc" ( Cairo::Surface ) > |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
430 |
self primitiveFailed |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
431 |
|
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
432 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 433 |
! |
434 |
||
435 |
primXlibSurfaceGetHeight: surface |
|
436 |
||
437 |
<cdecl: int32 "cairo_xlib_surface_get_height" ( Cairo::Surface ) > |
|
438 |
self primitiveFailed |
|
12 | 439 |
|
440 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 441 |
! |
442 |
||
443 |
primXlibSurfaceGetScreen: surface |
|
444 |
||
445 |
<cdecl: pointer "cairo_xlib_surface_get_screen" ( Cairo::Surface ) > |
|
446 |
self primitiveFailed |
|
12 | 447 |
|
448 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 449 |
! |
450 |
||
451 |
primXlibSurfaceGetVisual: surface |
|
452 |
||
453 |
<cdecl: pointer "cairo_xlib_surface_get_visual" ( Cairo::Surface ) > |
|
454 |
self primitiveFailed |
|
12 | 455 |
|
456 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 457 |
! |
458 |
||
459 |
primXlibSurfaceGetWidth: surface |
|
460 |
||
461 |
<cdecl: int32 "cairo_xlib_surface_get_width" ( Cairo::Surface ) > |
|
462 |
self primitiveFailed |
|
12 | 463 |
|
464 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 465 |
! |
466 |
||
467 |
primXlibSurfaceSetDrawable: surface drawable: drawable width: width height: height |
|
468 |
||
12 | 469 |
<cdecl: void "cairo_xlib_surface_set_drawable" ( Cairo::Surface int32 int32 int32 ) > |
1 | 470 |
self primitiveFailed |
12 | 471 |
|
472 |
"Modified: / 10-09-2008 / 18:19:54 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 473 |
! |
474 |
||
475 |
primXlibSurfaceSetSize: surface width: width height: height |
|
476 |
||
477 |
<cdecl: void "cairo_xlib_surface_set_size" ( Cairo::Surface int32 int32 ) > |
|
478 |
self primitiveFailed |
|
12 | 479 |
|
480 |
"Modified: / 10-09-2008 / 18:19:55 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
1 | 481 |
! ! |
482 |
||
483 |
!Surface methodsFor:'accessing'! |
|
484 |
||
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
485 |
gcId |
1 | 486 |
|
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
487 |
self |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
488 |
assert: (self type == SurfaceType SURFACE_TYPE_XLIB) |
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
489 |
message: 'Not a xlib surface!!'. |
1 | 490 |
|
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
491 |
^self class primXlibSurfaceGetGc: self |
1 | 492 |
|
6
c1f387b40e3a
regenerated using newer version of CFace
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
5
diff
changeset
|
493 |
"Created: / 09-09-2008 / 22:19:44 / Jan Vrany <vranyj1@fel.cvut.cz>" |
1 | 494 |
! |
495 |
||
16 | 496 |
height |
497 |
||
498 |
self type == SURFACE_TYPE_XLIB ifTrue:[ |
|
499 |
^self class primXlibSurfaceGetHeight: self |
|
500 |
]. |
|
501 |
||
502 |
self error:'Operation not supported' |
|
503 |
||
504 |
"Created: / 17-06-2012 / 15:37:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
505 |
! |
|
506 |
||
1 | 507 |
type |
508 |
||
509 |
^self class primGetType: self |
|
510 |
||
511 |
"Created: / 10-07-2008 / 10:34:36 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
2
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
512 |
! |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
513 |
|
16 | 514 |
width |
515 |
||
516 |
self type == SURFACE_TYPE_XLIB ifTrue:[ |
|
517 |
^self class primXlibSurfaceGetWidth: self |
|
518 |
]. |
|
519 |
||
520 |
self error:'Operation not supported' |
|
521 |
||
522 |
"Created: / 17-06-2012 / 15:37:09 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
523 |
! |
|
524 |
||
2
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
525 |
width: w height: h |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
526 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
527 |
self class primXlibSurfaceSetSize: self width: w height: h |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
528 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
529 |
"Created: / 10-07-2008 / 19:36:39 / Jan Vrany <vranyj1@fel.cvut.cz>" |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
530 |
! ! |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
531 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
532 |
!Surface methodsFor:'change & update'! |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
533 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
534 |
update: aspect with: param from: sender |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
535 |
|
16 | 536 |
(sender == view) ifTrue:[ |
537 |
aspect == #sizeOfView ifTrue:[ |
|
538 |
self width: sender width height: sender height. |
|
539 |
^self. |
|
540 |
] |
|
541 |
]. |
|
2
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
542 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
543 |
super update: aspect with: param from: sender |
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
544 |
|
c2f163833877
Xlib surfaces are dependents of associated view
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1
diff
changeset
|
545 |
"Created: / 10-07-2008 / 19:33:39 / Jan Vrany <vranyj1@fel.cvut.cz>" |
16 | 546 |
"Modified: / 17-06-2012 / 15:05:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1 | 547 |
! ! |
548 |
||
549 |
!Surface methodsFor:'initialization & release'! |
|
550 |
||
15 | 551 |
finish |
552 |
||
553 |
^self class primFinish: self |
|
554 |
||
555 |
"Created: / 17-06-2012 / 08:49:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
556 |
! |
|
557 |
||
1 | 558 |
flush |
559 |
||
560 |
^self class primFlush: self |
|
561 |
||
562 |
"Created: / 10-07-2008 / 10:32:50 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
16 | 563 |
! |
564 |
||
565 |
setView: aView |
|
566 |
||
567 |
view notNil ifTrue:[ |
|
568 |
self error: 'Trying to set view twice' |
|
569 |
]. |
|
570 |
view := aView. |
|
571 |
view addDependent: self. |
|
572 |
||
573 |
"Created: / 17-06-2012 / 15:04:20 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
574 |
! ! |
|
575 |
||
576 |
!Surface methodsFor:'queries'! |
|
577 |
||
578 |
isViewSurface |
|
579 |
"Return true, if this sufrace if for a kind of a View" |
|
580 |
||
581 |
^self isXLibSurface or:[ self isWin32Surface ] |
|
582 |
||
583 |
"Created: / 17-06-2012 / 15:02:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
584 |
! |
|
585 |
||
586 |
isWin32Surface |
|
587 |
||
588 |
^self type == SURFACE_TYPE_WIN32 |
|
589 |
||
590 |
"Created: / 17-06-2012 / 15:01:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
591 |
! |
|
592 |
||
593 |
isXLibSurface |
|
594 |
||
595 |
^self type == SURFACE_TYPE_XLIB |
|
596 |
||
597 |
"Created: / 17-06-2012 / 14:58:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1 | 598 |
! ! |
599 |
||
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
600 |
!Surface class methodsFor:'documentation'! |
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
601 |
|
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
602 |
version |
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
603 |
^'$Id$' |
11 | 604 |
! |
605 |
||
606 |
version_SVN |
|
607 |
^ '$Id:: $' |
|
7
392289f92fab
- DLL path is set automatically.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
608 |
! ! |