Copied poke255_uc implementation from gtk3 into master

This commit is contained in:
heckflosse
2016-05-22 14:35:53 +02:00
parent f490c64682
commit 023e7d3695
4 changed files with 58 additions and 25 deletions

View File

@@ -84,26 +84,16 @@ PreviewImage::PreviewImage (const Glib::ustring &fname, const Glib::ustring &ext
unsigned char *dst;
#pragma omp for schedule(static,10)
for (unsigned int i = 0; i < (unsigned int)(h); i++) {
for (unsigned int i = 0; i < (unsigned int)(h); ++i) {
src = data + i * w * 3;
dst = previewImage->get_data() + i * w * 4;
for (unsigned int j = 0; j < (unsigned int)(w); j++) {
for (unsigned int j = 0; j < (unsigned int)(w); ++j) {
unsigned char r = *(src++);
unsigned char g = *(src++);
unsigned char b = *(src++);
#if __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
*(dst++) = b;
*(dst++) = g;
*(dst++) = r;
*(dst++) = 0;
#else
*(dst++) = 0;
*(dst++) = r;
*(dst++) = g;
*(dst++) = b;
#endif
poke255_uc(dst, r, g, b);
}
}
}
@@ -178,17 +168,8 @@ PreviewImage::PreviewImage (const Glib::ustring &fname, const Glib::ustring &ext
unsigned char r = *(src++);
unsigned char g = *(src++);
unsigned char b = *(src++);
#if __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__
*(dst++) = b;
*(dst++) = g;
*(dst++) = r;
*(dst++) = 0;
#else
*(dst++) = 0;
*(dst++) = r;
*(dst++) = g;
*(dst++) = b;
#endif
poke255_uc(dst, r, g, b);
}
}
}