1 //******************************************************************************
2 //  Copyright (c) 2005-2013 by Jan Van hijfte
3 //
4 //  See the included file COPYING.TXT for details about the copyright.
5 //
6 //  This program is distributed in the hope that it will be useful,
7 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
8 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
9 //******************************************************************************
10 
11 
12 #include "qimage_c.h"
13 
QImage_Create()14 QImageH QImage_Create()
15 {
16 	return (QImageH) new QImage();
17 }
18 
QImage_Destroy(QImageH handle)19 void QImage_Destroy(QImageH handle)
20 {
21 	delete (QImage *)handle;
22 }
23 
QImage_Create2(const QSizeH size,QImage::Format format)24 QImageH QImage_Create2(const QSizeH size, QImage::Format format)
25 {
26 	return (QImageH) new QImage(*(const QSize*)size, format);
27 }
28 
QImage_Create3(int width,int height,QImage::Format format)29 QImageH QImage_Create3(int width, int height, QImage::Format format)
30 {
31 	return (QImageH) new QImage(width, height, format);
32 }
33 
QImage_Create4(uchar * data,int width,int height,QImage::Format format,QImageCleanupFunction cleanupFunction,void * cleanupInfo)34 QImageH QImage_Create4(uchar* data, int width, int height, QImage::Format format, QImageCleanupFunction cleanupFunction, void* cleanupInfo)
35 {
36 	return (QImageH) new QImage(data, width, height, format, cleanupFunction, cleanupInfo);
37 }
38 
QImage_Create6(uchar * data,int width,int height,int bytesPerLine,QImage::Format format,QImageCleanupFunction cleanupFunction,void * cleanupInfo)39 QImageH QImage_Create6(uchar* data, int width, int height, int bytesPerLine, QImage::Format format, QImageCleanupFunction cleanupFunction, void* cleanupInfo)
40 {
41 	return (QImageH) new QImage(data, width, height, bytesPerLine, format, cleanupFunction, cleanupInfo);
42 }
43 
QImage_Create8(const char * const xpm)44 QImageH QImage_Create8(const char* const xpm)
45 {
46 	return (QImageH) new QImage(xpm);
47 }
48 
QImage_Create9(PWideString fileName,const char * format)49 QImageH QImage_Create9(PWideString fileName, const char* format)
50 {
51 	QString t_fileName;
52 	copyPWideStringToQString(fileName, t_fileName);
53 	return (QImageH) new QImage(t_fileName, format);
54 }
55 
QImage_Create10(const QImageH AnonParam1)56 QImageH QImage_Create10(const QImageH AnonParam1)
57 {
58 	return (QImageH) new QImage(*(const QImage*)AnonParam1);
59 }
60 
QImage_swap(QImageH handle,QImageH other)61 void QImage_swap(QImageH handle, QImageH other)
62 {
63 	((QImage *)handle)->swap(*(QImage*)other);
64 }
65 
QImage_isNull(QImageH handle)66 bool QImage_isNull(QImageH handle)
67 {
68 	return (bool) ((QImage *)handle)->isNull();
69 }
70 
QImage_devType(QImageH handle)71 int QImage_devType(QImageH handle)
72 {
73 	return (int) ((QImage *)handle)->devType();
74 }
75 
QImage_detach(QImageH handle)76 void QImage_detach(QImageH handle)
77 {
78 	((QImage *)handle)->detach();
79 }
80 
QImage_isDetached(QImageH handle)81 bool QImage_isDetached(QImageH handle)
82 {
83 	return (bool) ((QImage *)handle)->isDetached();
84 }
85 
QImage_copy(QImageH handle,QImageH retval,PRect rect)86 void QImage_copy(QImageH handle, QImageH retval, PRect rect)
87 {
88 	QRect t_rect;
89 	copyPRectToQRect(rect, t_rect);
90 	*(QImage *)retval = ((QImage *)handle)->copy(t_rect);
91 }
92 
QImage_copy2(QImageH handle,QImageH retval,int x,int y,int w,int h)93 void QImage_copy2(QImageH handle, QImageH retval, int x, int y, int w, int h)
94 {
95 	*(QImage *)retval = ((QImage *)handle)->copy(x, y, w, h);
96 }
97 
QImage_format(QImageH handle)98 QImage::Format QImage_format(QImageH handle)
99 {
100 	return (QImage::Format) ((QImage *)handle)->format();
101 }
102 
QImage_convertToFormat(QImageH handle,QImageH retval,QImage::Format f,unsigned int flags)103 void QImage_convertToFormat(QImageH handle, QImageH retval, QImage::Format f, unsigned int flags)
104 {
105 	*(QImage *)retval = ((QImage *)handle)->convertToFormat(f, (Qt::ImageConversionFlags)flags);
106 }
107 
QImage_width(QImageH handle)108 int QImage_width(QImageH handle)
109 {
110 	return (int) ((QImage *)handle)->width();
111 }
112 
QImage_height(QImageH handle)113 int QImage_height(QImageH handle)
114 {
115 	return (int) ((QImage *)handle)->height();
116 }
117 
QImage_size(QImageH handle,PSize retval)118 void QImage_size(QImageH handle, PSize retval)
119 {
120 	*(QSize *)retval = ((QImage *)handle)->size();
121 }
122 
QImage_rect(QImageH handle,PRect retval)123 void QImage_rect(QImageH handle, PRect retval)
124 {
125 	QRect t_retval;
126 	t_retval = ((QImage *)handle)->rect();
127 	copyQRectToPRect(t_retval, retval);
128 }
129 
QImage_depth(QImageH handle)130 int QImage_depth(QImageH handle)
131 {
132 	return (int) ((QImage *)handle)->depth();
133 }
134 
QImage_colorCount(QImageH handle)135 int QImage_colorCount(QImageH handle)
136 {
137 	return (int) ((QImage *)handle)->colorCount();
138 }
139 
QImage_bitPlaneCount(QImageH handle)140 int QImage_bitPlaneCount(QImageH handle)
141 {
142 	return (int) ((QImage *)handle)->bitPlaneCount();
143 }
144 
QImage_color(QImageH handle,int i)145 QRgb QImage_color(QImageH handle, int i)
146 {
147 	return (QRgb) ((QImage *)handle)->color(i);
148 }
149 
QImage_setColor(QImageH handle,int i,QRgb c)150 void QImage_setColor(QImageH handle, int i, QRgb c)
151 {
152 	((QImage *)handle)->setColor(i, c);
153 }
154 
QImage_setColorCount(QImageH handle,int AnonParam1)155 void QImage_setColorCount(QImageH handle, int AnonParam1)
156 {
157 	((QImage *)handle)->setColorCount(AnonParam1);
158 }
159 
QImage_allGray(QImageH handle)160 bool QImage_allGray(QImageH handle)
161 {
162 	return (bool) ((QImage *)handle)->allGray();
163 }
164 
QImage_isGrayscale(QImageH handle)165 bool QImage_isGrayscale(QImageH handle)
166 {
167 	return (bool) ((QImage *)handle)->isGrayscale();
168 }
169 
QImage_bits(QImageH handle)170 uchar* QImage_bits(QImageH handle)
171 {
172 	return (uchar*) ((QImage *)handle)->bits();
173 }
174 
QImage_constBits(QImageH handle)175 const uchar* QImage_constBits(QImageH handle)
176 {
177 	return (const uchar*) ((QImage *)handle)->constBits();
178 }
179 
QImage_byteCount(QImageH handle)180 int QImage_byteCount(QImageH handle)
181 {
182 	return (int) ((QImage *)handle)->byteCount();
183 }
184 
QImage_scanLine(QImageH handle,int AnonParam1)185 uchar* QImage_scanLine(QImageH handle, int AnonParam1)
186 {
187 	return (uchar*) ((QImage *)handle)->scanLine(AnonParam1);
188 }
189 
QImage_constScanLine(QImageH handle,int AnonParam1)190 const uchar* QImage_constScanLine(QImageH handle, int AnonParam1)
191 {
192 	return (const uchar*) ((QImage *)handle)->constScanLine(AnonParam1);
193 }
194 
QImage_bytesPerLine(QImageH handle)195 int QImage_bytesPerLine(QImageH handle)
196 {
197 	return (int) ((QImage *)handle)->bytesPerLine();
198 }
199 
QImage_valid(QImageH handle,int x,int y)200 bool QImage_valid(QImageH handle, int x, int y)
201 {
202 	return (bool) ((QImage *)handle)->valid(x, y);
203 }
204 
QImage_valid2(QImageH handle,const QPointH pt)205 bool QImage_valid2(QImageH handle, const QPointH pt)
206 {
207 	return (bool) ((QImage *)handle)->valid(*(const QPoint*)pt);
208 }
209 
QImage_pixelIndex(QImageH handle,int x,int y)210 int QImage_pixelIndex(QImageH handle, int x, int y)
211 {
212 	return (int) ((QImage *)handle)->pixelIndex(x, y);
213 }
214 
QImage_pixelIndex2(QImageH handle,const QPointH pt)215 int QImage_pixelIndex2(QImageH handle, const QPointH pt)
216 {
217 	return (int) ((QImage *)handle)->pixelIndex(*(const QPoint*)pt);
218 }
219 
QImage_pixel(QImageH handle,int x,int y)220 QRgb QImage_pixel(QImageH handle, int x, int y)
221 {
222 	return (QRgb) ((QImage *)handle)->pixel(x, y);
223 }
224 
QImage_pixel2(QImageH handle,const QPointH pt)225 QRgb QImage_pixel2(QImageH handle, const QPointH pt)
226 {
227 	return (QRgb) ((QImage *)handle)->pixel(*(const QPoint*)pt);
228 }
229 
QImage_setPixel(QImageH handle,int x,int y,uint index_or_rgb)230 void QImage_setPixel(QImageH handle, int x, int y, uint index_or_rgb)
231 {
232 	((QImage *)handle)->setPixel(x, y, index_or_rgb);
233 }
234 
QImage_setPixel2(QImageH handle,const QPointH pt,uint index_or_rgb)235 void QImage_setPixel2(QImageH handle, const QPointH pt, uint index_or_rgb)
236 {
237 	((QImage *)handle)->setPixel(*(const QPoint*)pt, index_or_rgb);
238 }
239 
QImage_devicePixelRatio(QImageH handle)240 qreal QImage_devicePixelRatio(QImageH handle)
241 {
242 	return (qreal) ((QImage *)handle)->devicePixelRatio();
243 }
244 
QImage_setDevicePixelRatio(QImageH handle,qreal scaleFactor)245 void QImage_setDevicePixelRatio(QImageH handle, qreal scaleFactor)
246 {
247 	((QImage *)handle)->setDevicePixelRatio(scaleFactor);
248 }
249 
QImage_fill(QImageH handle,uint pixel)250 void QImage_fill(QImageH handle, uint pixel)
251 {
252 	((QImage *)handle)->fill(pixel);
253 }
254 
QImage_fill2(QImageH handle,const QColorH color)255 void QImage_fill2(QImageH handle, const QColorH color)
256 {
257 	((QImage *)handle)->fill(*(const QColor*)color);
258 }
259 
QImage_fill3(QImageH handle,Qt::GlobalColor color)260 void QImage_fill3(QImageH handle, Qt::GlobalColor color)
261 {
262 	((QImage *)handle)->fill(color);
263 }
264 
QImage_hasAlphaChannel(QImageH handle)265 bool QImage_hasAlphaChannel(QImageH handle)
266 {
267 	return (bool) ((QImage *)handle)->hasAlphaChannel();
268 }
269 
QImage_setAlphaChannel(QImageH handle,const QImageH alphaChannel)270 void QImage_setAlphaChannel(QImageH handle, const QImageH alphaChannel)
271 {
272 	((QImage *)handle)->setAlphaChannel(*(const QImage*)alphaChannel);
273 }
274 
QImage_alphaChannel(QImageH handle,QImageH retval)275 void QImage_alphaChannel(QImageH handle, QImageH retval)
276 {
277 	*(QImage *)retval = ((QImage *)handle)->alphaChannel();
278 }
279 
QImage_createAlphaMask(QImageH handle,QImageH retval,unsigned int flags)280 void QImage_createAlphaMask(QImageH handle, QImageH retval, unsigned int flags)
281 {
282 	*(QImage *)retval = ((QImage *)handle)->createAlphaMask((Qt::ImageConversionFlags)flags);
283 }
284 
QImage_createHeuristicMask(QImageH handle,QImageH retval,bool clipTight)285 void QImage_createHeuristicMask(QImageH handle, QImageH retval, bool clipTight)
286 {
287 	*(QImage *)retval = ((QImage *)handle)->createHeuristicMask(clipTight);
288 }
289 
QImage_createMaskFromColor(QImageH handle,QImageH retval,QRgb color,Qt::MaskMode mode)290 void QImage_createMaskFromColor(QImageH handle, QImageH retval, QRgb color, Qt::MaskMode mode)
291 {
292 	*(QImage *)retval = ((QImage *)handle)->createMaskFromColor(color, mode);
293 }
294 
QImage_scaled(QImageH handle,QImageH retval,int w,int h,Qt::AspectRatioMode aspectMode,Qt::TransformationMode mode)295 void QImage_scaled(QImageH handle, QImageH retval, int w, int h, Qt::AspectRatioMode aspectMode, Qt::TransformationMode mode)
296 {
297 	*(QImage *)retval = ((QImage *)handle)->scaled(w, h, aspectMode, mode);
298 }
299 
QImage_scaled2(QImageH handle,QImageH retval,const QSizeH s,Qt::AspectRatioMode aspectMode,Qt::TransformationMode mode)300 void QImage_scaled2(QImageH handle, QImageH retval, const QSizeH s, Qt::AspectRatioMode aspectMode, Qt::TransformationMode mode)
301 {
302 	*(QImage *)retval = ((QImage *)handle)->scaled(*(const QSize*)s, aspectMode, mode);
303 }
304 
QImage_scaledToWidth(QImageH handle,QImageH retval,int w,Qt::TransformationMode mode)305 void QImage_scaledToWidth(QImageH handle, QImageH retval, int w, Qt::TransformationMode mode)
306 {
307 	*(QImage *)retval = ((QImage *)handle)->scaledToWidth(w, mode);
308 }
309 
QImage_scaledToHeight(QImageH handle,QImageH retval,int h,Qt::TransformationMode mode)310 void QImage_scaledToHeight(QImageH handle, QImageH retval, int h, Qt::TransformationMode mode)
311 {
312 	*(QImage *)retval = ((QImage *)handle)->scaledToHeight(h, mode);
313 }
314 
QImage_transformed(QImageH handle,QImageH retval,const QMatrixH matrix,Qt::TransformationMode mode)315 void QImage_transformed(QImageH handle, QImageH retval, const QMatrixH matrix, Qt::TransformationMode mode)
316 {
317 	*(QImage *)retval = ((QImage *)handle)->transformed(*(const QMatrix*)matrix, mode);
318 }
319 
QImage_trueMatrix(QMatrixH retval,const QMatrixH AnonParam1,int w,int h)320 void QImage_trueMatrix(QMatrixH retval, const QMatrixH AnonParam1, int w, int h)
321 {
322 	*(QMatrix *)retval = QImage::trueMatrix(*(const QMatrix*)AnonParam1, w, h);
323 }
324 
QImage_transformed2(QImageH handle,QImageH retval,const QTransformH matrix,Qt::TransformationMode mode)325 void QImage_transformed2(QImageH handle, QImageH retval, const QTransformH matrix, Qt::TransformationMode mode)
326 {
327 	*(QImage *)retval = ((QImage *)handle)->transformed(*(const QTransform*)matrix, mode);
328 }
329 
QImage_trueMatrix2(QTransformH retval,const QTransformH AnonParam1,int w,int h)330 void QImage_trueMatrix2(QTransformH retval, const QTransformH AnonParam1, int w, int h)
331 {
332 	*(QTransform *)retval = QImage::trueMatrix(*(const QTransform*)AnonParam1, w, h);
333 }
334 
QImage_mirrored(QImageH handle,QImageH retval,bool horizontally,bool vertically)335 void QImage_mirrored(QImageH handle, QImageH retval, bool horizontally, bool vertically)
336 {
337 	*(QImage *)retval = ((QImage *)handle)->mirrored(horizontally, vertically);
338 }
339 
QImage_rgbSwapped(QImageH handle,QImageH retval)340 void QImage_rgbSwapped(QImageH handle, QImageH retval)
341 {
342 	*(QImage *)retval = ((QImage *)handle)->rgbSwapped();
343 }
344 
QImage_invertPixels(QImageH handle,QImage::InvertMode AnonParam1)345 void QImage_invertPixels(QImageH handle, QImage::InvertMode AnonParam1)
346 {
347 	((QImage *)handle)->invertPixels(AnonParam1);
348 }
349 
QImage_load(QImageH handle,QIODeviceH device,const char * format)350 bool QImage_load(QImageH handle, QIODeviceH device, const char* format)
351 {
352 	return (bool) ((QImage *)handle)->load((QIODevice*)device, format);
353 }
354 
QImage_load2(QImageH handle,PWideString fileName,const char * format)355 bool QImage_load2(QImageH handle, PWideString fileName, const char* format)
356 {
357 	QString t_fileName;
358 	copyPWideStringToQString(fileName, t_fileName);
359 	return (bool) ((QImage *)handle)->load(t_fileName, format);
360 }
361 
QImage_loadFromData(QImageH handle,const uchar * buf,int len,const char * format)362 bool QImage_loadFromData(QImageH handle, const uchar* buf, int len, const char* format)
363 {
364 	return (bool) ((QImage *)handle)->loadFromData(buf, len, format);
365 }
366 
QImage_loadFromData2(QImageH handle,const QByteArrayH data,const char * aformat)367 bool QImage_loadFromData2(QImageH handle, const QByteArrayH data, const char* aformat)
368 {
369 	return (bool) ((QImage *)handle)->loadFromData(*(const QByteArray*)data, aformat);
370 }
371 
QImage_save(QImageH handle,PWideString fileName,const char * format,int quality)372 bool QImage_save(QImageH handle, PWideString fileName, const char* format, int quality)
373 {
374 	QString t_fileName;
375 	copyPWideStringToQString(fileName, t_fileName);
376 	return (bool) ((QImage *)handle)->save(t_fileName, format, quality);
377 }
378 
QImage_save2(QImageH handle,QIODeviceH device,const char * format,int quality)379 bool QImage_save2(QImageH handle, QIODeviceH device, const char* format, int quality)
380 {
381 	return (bool) ((QImage *)handle)->save((QIODevice*)device, format, quality);
382 }
383 
QImage_fromData(QImageH retval,const uchar * data,int size,const char * format)384 void QImage_fromData(QImageH retval, const uchar* data, int size, const char* format)
385 {
386 	*(QImage *)retval = QImage::fromData(data, size, format);
387 }
388 
QImage_fromData2(QImageH retval,const QByteArrayH data,const char * format)389 void QImage_fromData2(QImageH retval, const QByteArrayH data, const char* format)
390 {
391 	*(QImage *)retval = QImage::fromData(*(const QByteArray*)data, format);
392 }
393 
QImage_cacheKey(QImageH handle)394 qint64 QImage_cacheKey(QImageH handle)
395 {
396 	return (qint64) ((QImage *)handle)->cacheKey();
397 }
398 
QImage_paintEngine(QImageH handle)399 QPaintEngineH QImage_paintEngine(QImageH handle)
400 {
401 	return (QPaintEngineH) ((QImage *)handle)->paintEngine();
402 }
403 
QImage_dotsPerMeterX(QImageH handle)404 int QImage_dotsPerMeterX(QImageH handle)
405 {
406 	return (int) ((QImage *)handle)->dotsPerMeterX();
407 }
408 
QImage_dotsPerMeterY(QImageH handle)409 int QImage_dotsPerMeterY(QImageH handle)
410 {
411 	return (int) ((QImage *)handle)->dotsPerMeterY();
412 }
413 
QImage_setDotsPerMeterX(QImageH handle,int AnonParam1)414 void QImage_setDotsPerMeterX(QImageH handle, int AnonParam1)
415 {
416 	((QImage *)handle)->setDotsPerMeterX(AnonParam1);
417 }
418 
QImage_setDotsPerMeterY(QImageH handle,int AnonParam1)419 void QImage_setDotsPerMeterY(QImageH handle, int AnonParam1)
420 {
421 	((QImage *)handle)->setDotsPerMeterY(AnonParam1);
422 }
423 
QImage_offset(QImageH handle,PQtPoint retval)424 void QImage_offset(QImageH handle, PQtPoint retval)
425 {
426 	*(QPoint *)retval = ((QImage *)handle)->offset();
427 }
428 
QImage_setOffset(QImageH handle,const QPointH AnonParam1)429 void QImage_setOffset(QImageH handle, const QPointH AnonParam1)
430 {
431 	((QImage *)handle)->setOffset(*(const QPoint*)AnonParam1);
432 }
433 
QImage_textKeys(QImageH handle,QStringListH retval)434 void QImage_textKeys(QImageH handle, QStringListH retval)
435 {
436 	*(QStringList *)retval = ((QImage *)handle)->textKeys();
437 }
438 
QImage_text(QImageH handle,PWideString retval,PWideString key)439 void QImage_text(QImageH handle, PWideString retval, PWideString key)
440 {
441 	QString t_retval;
442 	QString t_key;
443 	copyPWideStringToQString(key, t_key);
444 	t_retval = ((QImage *)handle)->text(t_key);
445 	copyQStringToPWideString(t_retval, retval);
446 }
447 
QImage_setText(QImageH handle,PWideString key,PWideString value)448 void QImage_setText(QImageH handle, PWideString key, PWideString value)
449 {
450 	QString t_key;
451 	QString t_value;
452 	copyPWideStringToQString(key, t_key);
453 	copyPWideStringToQString(value, t_value);
454 	((QImage *)handle)->setText(t_key, t_value);
455 }
456 
457