summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Jennings <mej@kainx.org>2000-04-19 06:46:03 +0000
committerMichael Jennings <mej@kainx.org>2000-04-19 06:46:03 +0000
commit94b6a6d426bf8bf9a7c886f18b20ab5a49d114ba (patch)
tree8e0ace2398eb76139591771456a15e3ac27a0973
parent2781ea571c5d98a2b44bd7bd2a80a01d3a90c88a (diff)
downloadeterm-94b6a6d426bf8bf9a7c886f18b20ab5a49d114ba.tar.gz
Tue Apr 18 23:55:42 PDT 2000 Michael Jennings <mej@eterm.org>
Added the pixmap beveling support back in so that the glass theme will work again. Once again, you poor 8 bpp saps are SOL. I also added the icon support back in, along with a new built-in icon courtesy of Brian McFee <keebler@sandwich.net>. SVN revision: 2501
-rw-r--r--ChangeLog9
-rw-r--r--src/draw.c109
-rw-r--r--src/draw.h2
-rw-r--r--src/icon.h290
-rw-r--r--src/pixmap.c74
5 files changed, 443 insertions, 41 deletions
diff --git a/ChangeLog b/ChangeLog
index ce5a15e..0fd1dcd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3499,3 +3499,12 @@ Mon Apr 17 22:25:27 PDT 2000 Michael Jennings <mej@eterm.org>
XFree86 4.0. :-)
-------------------------------------------------------------------------------
+Tue Apr 18 23:55:42 PDT 2000 Michael Jennings <mej@eterm.org>
+
+ Added the pixmap beveling support back in so that the glass theme will
+ work again. Once again, you poor 8 bpp saps are SOL.
+
+ I also added the icon support back in, along with a new built-in icon
+ courtesy of Brian McFee <keebler@sandwich.net>.
+
+-------------------------------------------------------------------------------
diff --git a/src/draw.c b/src/draw.c
index fb45f49..ea78c6a 100644
--- a/src/draw.c
+++ b/src/draw.c
@@ -130,3 +130,112 @@ draw_box(Drawable d, GC gc_top, GC gc_bottom, int x, int y, int w, int h)
XDrawLine(Xdisplay, d, gc_bottom, x, y + h, x + w, y + h);
XDrawLine(Xdisplay, d, gc_bottom, x + w, y + h, x + w, y);
}
+
+#define SHADE_PIXEL(pixel, dir, tmp) do {(tmp) = ((((double)pixel)/depth_factor) + ((dir) ? 0.2 : -0.2)) * depth_factor; \
+ if ((tmp) > (depth_factor-1)) (tmp) = depth_factor - 1; else if ((tmp) < 0) (tmp) = 0;} while (0)
+#define MOD_PIXEL_HIGH(x, y, up) do {v = XGetPixel(ximg, (x), (y)); r = (int) ((v >> br) & mr); g = (int) ((v >> bg) & mg); b = (int) ((v << bb) & mb); \
+ SHADE_PIXEL(r, (up), dv); r = (int) dv; SHADE_PIXEL(g, (up), dv); g = (int) dv; SHADE_PIXEL(b, (up), dv); b = (int) dv; \
+ v = ((r & mr) << br) | ((g & mg) << bg) | ((b & mb) >> bb); XPutPixel(ximg, (x), (y), v);} while (0)
+
+void
+bevel_pixmap(Pixmap p, int w, int h, Imlib_Border *bord, unsigned char up)
+{
+ XImage *ximg;
+ register unsigned long v;
+ double dv;
+ short x, y, xbound, ybound;
+ unsigned int r, g, b;
+ int real_depth = 0, depth_factor;
+ register int br, bg, bb; /* Bitshifts */
+ register unsigned int mr, mg, mb; /* Bitmasks */
+ GC gc;
+
+ if (!bord)
+ return;
+
+ depth_factor = 1 << Xdepth;
+ if (Xdepth <= 8) {
+ D_PIXMAP(("Depth of %d is not supported. Punt!\n", Xdepth));
+ return;
+ } else if (Xdepth == 16) {
+
+ XWindowAttributes xattr;
+
+ XGetWindowAttributes(Xdisplay, Xroot, &xattr);
+ if ((xattr.visual->red_mask == 0x7c00) && (xattr.visual->green_mask == 0x3e0) && (xattr.visual->blue_mask == 0x1f)) {
+ real_depth = 15;
+ depth_factor = 1 << 15;
+ }
+ }
+ if (!real_depth) {
+ real_depth = Xdepth;
+ }
+ ximg = XGetImage(Xdisplay, p, 0, 0, w, h, -1, ZPixmap);
+ if (ximg == NULL) {
+ return;
+ }
+ /* Determine bitshift and bitmask values */
+ switch (real_depth) {
+ case 15:
+ br = 7;
+ bg = 2;
+ bb = 3;
+ mr = mg = mb = 0xf8;
+ break;
+ case 16:
+ br = 8;
+ bg = bb = 3;
+ mr = mb = 0xf8;
+ mg = 0xfc;
+ break;
+ case 24:
+ case 32:
+ br = 16;
+ bg = 8;
+ bb = 0;
+ mr = mg = mb = 0xff;
+ break;
+ default:
+ return;
+ }
+
+ /* Left edge */
+ for (y = bord->top; y < h; y++) {
+ xbound = h - y;
+ if (xbound > bord->left)
+ xbound = bord->left;
+ for (x = 0; x < xbound; x++) {
+ MOD_PIXEL_HIGH(x, y, up);
+ }
+ }
+
+ /* Right edge */
+ ybound = h - bord->bottom;
+ for (y = 0; y < ybound; y++) {
+ xbound = bord->right - y;
+ if (xbound < 0)
+ xbound = 0;
+ for (x = xbound; x < bord->right; x++) {
+ MOD_PIXEL_HIGH(x + (w - bord->right), y, !up);
+ }
+ }
+
+ /* Top edge */
+ for (y = 0; y < bord->top; y++) {
+ xbound = w - y;
+ for (x = 0; x < xbound; x++) {
+ MOD_PIXEL_HIGH(x, y, up);
+ }
+ }
+
+ /* Bottom edge */
+ for (y = h - bord->bottom; y < h; y++) {
+ for (x = h - y - 1; x < w; x++) {
+ MOD_PIXEL_HIGH(x, y, !up);
+ }
+ }
+ gc = XCreateGC(Xdisplay, p, 0, NULL);
+ XPutImage(Xdisplay, p, gc, ximg, 0, 0, 0, 0, w, h);
+ XFreeGC(Xdisplay, gc);
+ XDestroyImage(ximg);
+}
diff --git a/src/draw.h b/src/draw.h
index f5c345f..814493a 100644
--- a/src/draw.h
+++ b/src/draw.h
@@ -26,6 +26,7 @@
#include <X11/Xfuncproto.h>
#include <X11/Intrinsic.h> /* Xlib, Xutil, Xresource, Xfuncproto */
+#include "pixmap.h"
/************ Macros and Definitions ************/
#define DRAW_ARROW_UP (1UL << 0)
@@ -50,6 +51,7 @@ extern void draw_shadow_from_colors(Drawable d, Pixel top, Pixel bottom, int x,
extern void draw_arrow(Drawable d, GC gc_top, GC gc_bottom, int x, int y, int w, int shadow, unsigned char type);
extern void draw_arrow_from_colors(Drawable d, Pixel top, Pixel bottom, int x, int y, int w, int shadow, unsigned char type);
extern void draw_box(Drawable d, GC gc_top, GC gc_bottom, int x, int y, int w, int h);
+extern void bevel_pixmap(Pixmap p, int w, int h, Imlib_Border *bord, unsigned char up);
_XFUNCPROTOEND
diff --git a/src/icon.h b/src/icon.h
new file mode 100644
index 0000000..d954a3e
--- /dev/null
+++ b/src/icon.h
@@ -0,0 +1,290 @@
+static unsigned long icon_data[] = {
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x06000000, 0x1d020202, 0x47050505, 0x7a070706, 0xa4070707, 0xd0070707,
+0xfd060606, 0xfb0c0c0c, 0x3e090908, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x28040404, 0x55090909,
+0x810f0f0e, 0xb8141413, 0xec171716, 0xff171716, 0xff141413, 0xff111110, 0xff0e0e0e, 0xff0b0b0b,
+0xff080808, 0xff0e0e0d, 0xb11b1b1b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x09020202, 0x44090908, 0x6e121211, 0xa1181817, 0xcb1e1e1d, 0xf5242423, 0xff252524, 0xff242422,
+0xff222220, 0xff1f1f1e, 0xff1d1d1c, 0xff191919, 0xff161616, 0xff131313, 0xff10100f, 0xff0d0d0d,
+0xff0a0a0a, 0xff0d0d0d, 0xf62a2a29, 0x23050505, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x18040404, 0x480b0b0a, 0x72121212, 0x9c1b1b1b, 0xc6242422, 0xd8262625,
+0xfd2c2c2a, 0xff2f2f2d, 0xff2e2e2d, 0xff2e2e2c, 0xff2c2c2b, 0xff2a2a29, 0xff282827, 0xff262625,
+0xff242422, 0xff212120, 0xff1e1e1d, 0xff1b1b1a, 0xff181817, 0xff151515, 0xff121211, 0xff0f0f0f,
+0xff0c0c0c, 0xff0d0d0c, 0xff2f2f2e, 0x9b1e1e1d, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x21030303, 0x4b0b0b0a, 0x7d131312,
+0xa71b1b1a, 0xeb272726, 0xfd2e2e2c, 0xff30302f, 0xff323230, 0xff333331, 0xff333331, 0xff343432,
+0xff333332, 0xff333331, 0xff323230, 0xff31312f, 0xff2f2f2d, 0xff2d2d2b, 0xff2b2b29, 0xff292927,
+0xff262625, 0xff232322, 0xff20201f, 0xff1d1d1c, 0xff1a1a19, 0xff171717, 0xff151514, 0xff121211,
+0xff0e0e0e, 0xff0d0d0d, 0xff2f2f2e, 0xc42a2a28, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x08000000,
+0x3d040404, 0x670a0a09, 0x99101010, 0xc3191918, 0xf6222221, 0xff292927, 0xff2c2c2b, 0xff2f2f2e,
+0xff323230, 0xff7c747a, 0xff353534, 0xff373735, 0xff373735, 0xff383836, 0xff383836, 0xff373736,
+0xff363635, 0xff353534, 0xff343433, 0xff333331, 0xff31312f, 0xff2f2f2d, 0xff2c2c2a, 0xff282827,
+0xff242423, 0xff1f1f1e, 0xff1a1a1a, 0xff151514, 0xff191918, 0xff1a1a19, 0xff171716, 0xff141413,
+0xff111110, 0xff0e0e0d, 0xff2e2e2c, 0xd02f2f2d, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x2b010101, 0x82040403, 0x9b070706, 0xce0c0c0c, 0xf0131312,
+0xff1a1a18, 0xff1f1f1e, 0xff242422, 0xff282827, 0xff2c2c2b, 0xff30302f, 0xff333331, 0xff363634,
+0xff383836, 0xfffbfbfa, 0xffe1e1e0, 0xffa5a3a2, 0xff686662, 0xff393937, 0xff3a3a38, 0xff393937,
+0xff373735, 0xff353533, 0xff323230, 0xff2e2e2d, 0xff2a2a29, 0xff252524, 0xff20201f, 0xff1d1d1c,
+0xff1b1b1b, 0xff1e1e1e, 0xff252425, 0xff2c2b2d, 0xff252524, 0xff1c1c1b, 0xff191918, 0xff161615,
+0xff131312, 0xff0f0f0f, 0xff2a2a29, 0xf4393937, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x65030302, 0xff0a0a0a, 0xff10100f, 0xff151514, 0xff1b1b1a,
+0xff21211f, 0xff262625, 0xff2b2b29, 0xff2f2f2e, 0xff333332, 0xff363634, 0xff393937, 0xff3b3b39,
+0xff454543, 0xffebebea, 0xff818180, 0xff959592, 0xffbdbdbc, 0xff6d6967, 0xff565453, 0xff2f2f2e,
+0xff2b2b2a, 0xff292928, 0xff282828, 0xff2a2a2c, 0xff303133, 0xff36373b, 0xff424347, 0xff4c4c50,
+0xff4c4d50, 0xff4c4f52, 0xff535558, 0xff545155, 0xff333333, 0xff1f1f1e, 0xff1b1b1a, 0xff181817,
+0xff141414, 0xff111110, 0xff262625, 0xf43c3c3b, 0x01000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x8d050505, 0xff0e0e0e, 0xff141414, 0xff1a1a1a, 0xff212120,
+0xff272725, 0xff2c2c2b, 0xff31312f, 0xff343433, 0xff373735, 0xff393937, 0xff3a3a38, 0xff393937,
+0xff706f6d, 0xffb7b7b6, 0xff30302e, 0xff2c2c2a, 0xff636362, 0xff9d9d9a, 0xff9d9c9c, 0xff333233,
+0xff474649, 0xff494e51, 0xff4b5458, 0xff4f5a60, 0xff566269, 0xff616970, 0xff696d73, 0xff67686d,
+0xff595e62, 0xff57585b, 0xff5c5a5e, 0xff59565b, 0xff383839, 0xff212120, 0xff1e1e1d, 0xff1a1a19,
+0xff161615, 0xff131312, 0xff212120, 0xff40403e, 0x24060606, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x95080808, 0xff131312, 0xff191918, 0xff20201f, 0xff272725,
+0xff2a2a29, 0xff2c2c2a, 0xff2c2c2b, 0xff2c2c2b, 0xff2a2a29, 0xff292725, 0xff282320, 0xff403b39,
+0xffc4c4c4, 0xffacacac, 0xff30211d, 0xff2e2827, 0xff2b2b2b, 0xff888888, 0xff989896, 0xff515154,
+0xff58595c, 0xff505b5f, 0xff516166, 0xff696b72, 0xff6a6b73, 0xff6a6b73, 0xff686a72, 0xff63646a,
+0xff5a5a5f, 0xff575c5f, 0xff5c5c60, 0xff636065, 0xff414041, 0xff242423, 0xff20201f, 0xff1c1c1b,
+0xff181817, 0xff141413, 0xff1c1c1c, 0xff41413e, 0x24090909, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0xc30c0c0b, 0xff171716, 0xff1e1e1d, 0xff252524, 0xff2c2c2a,
+0xff2b2b2a, 0xff141516, 0xff121113, 0xff1a0f12, 0xff231012, 0xff2e1814, 0xff381f1d, 0xff999796,
+0xffaeadac, 0xff524f4e, 0xff322220, 0xff35302f, 0xff636262, 0xff9c9c9a, 0xff88888a, 0xff3c3d3c,
+0xff545458, 0xff5b5d61, 0xff5a6166, 0xff5d666d, 0xff646c76, 0xff68707b, 0xff6c6f77, 0xff6f6f76,
+0xff6d6b72, 0xff6b6d74, 0xff6c7076, 0xff68676e, 0xff464547, 0xff272726, 0xff222221, 0xff1e1e1d,
+0xff1a1a19, 0xff161615, 0xff191918, 0xff3f3f3d, 0x380d0d0d, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0xc410100f, 0xff1b1b1a, 0xff232322, 0xff2a2a29, 0xff31312f,
+0xff31312f, 0xff0d0b15, 0xff0a0717, 0xff140b16, 0xff261010, 0xff3f191c, 0xff4a2d32, 0xffb3b3b4,
+0xff8a8a8a, 0xff231b1b, 0xff271f1f, 0xff403e3e, 0xff9c9b9c, 0xff797978, 0xff626262, 0xff4e4e4e,
+0xff55575a, 0xff545a5e, 0xff576067, 0xff5d686f, 0xff6b6d75, 0xff74757e, 0xff7a7980, 0xff76747d,
+0xff6d6b72, 0xff6c6b72, 0xff6a696f, 0xff626167, 0xff464648, 0xff292928, 0xff242423, 0xff20201f,
+0xff1c1c1b, 0xff171717, 0xff161616, 0xff3c3c3a, 0x53151515, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0xf1161615, 0xff20201f, 0xff282826, 0xff2f2f2e, 0xff363635,
+0xff353533, 0xff0d0a10, 0xff0c070a, 0xff140b0c, 0xff271113, 0xff3f2227, 0xff9e9292, 0xff9e9e9e,
+0xff8a8a8c, 0xff423f3e, 0xff696867, 0xff797978, 0xff666566, 0xff565657, 0xff525253, 0xff454549,
+0xff494c50, 0xff5e5f64, 0xff616167, 0xff636369, 0xff737179, 0xff716f77, 0xff74737b, 0xff717078,
+0xff67676e, 0xff67666d, 0xff67676e, 0xff5f5f66, 0xff47474a, 0xff2c2c2a, 0xff272725, 0xff222221,
+0xff1e1e1d, 0xff191918, 0xff161615, 0xff373735, 0x54161616, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x03000000, 0xf51c1c1b, 0xff252523, 0xff2d2d2b, 0xff353533, 0xff3c3c3a,
+0xff393937, 0xff0e0a10, 0xff0c070d, 0xff0e090b, 0xff2b2222, 0xff787778, 0xff757474, 0xff989898,
+0xff949492, 0xff8e8e8e, 0xff6c6c6d, 0xff8e8e8e, 0xff9b9a9c, 0xff939294, 0xff4d4d4e, 0xff424345,
+0xff45474a, 0xff545559, 0xff515357, 0xff484b4e, 0xff54565d, 0xff60616a, 0xff61646e, 0xff60636c,
+0xff5c5e66, 0xff60616a, 0xff62646d, 0xff5b5d65, 0xff47484c, 0xff2e2e2d, 0xff292927, 0xff242423,
+0xff1f1f1e, 0xff1a1a19, 0xff151514, 0xff323230, 0x831f1f1e, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x24030303, 0xff212120, 0xff2a2a28, 0xff313130, 0xff393937, 0xff41413f,
+0xff3c3c3a, 0xff0d0a0d, 0xff0e0909, 0xff0f0909, 0xff2f2a2a, 0xff7d707b, 0xff908f8e, 0xff939394,
+0xff6a6a68, 0xff6c6b6c, 0xff8c8b8d, 0xff858486, 0xff848385, 0xff868587, 0xff464546, 0xff434549,
+0xff474a4f, 0xff515459, 0xff4f5358, 0xff4f535a, 0xff51555c, 0xff595d68, 0xff585d67, 0xff575d68,
+0xff555b66, 0xff575c67, 0xff555a64, 0xff525761, 0xff45484c, 0xff313130, 0xff2b2b29, 0xff262625,
+0xff212120, 0xff1c1c1b, 0xff161615, 0xff2e2e2c, 0x83232322, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x26050504, 0xff252524, 0xff2e2e2d, 0xff363635, 0xff3e3e3c, 0xff474745,
+0xff3f3f3d, 0xff0f0808, 0xff100807, 0xff110909, 0xff32262b, 0xff949494, 0xff989898, 0xff808080,
+0xff656565, 0xff838284, 0xff868486, 0xff828082, 0xff818082, 0xff848384, 0xff4a494a, 0xff41454d,
+0xff484d57, 0xff4f545e, 0xff535761, 0xff50545e, 0xff525863, 0xff555b67, 0xff585f69, 0xff575d68,
+0xff4f5663, 0xff4e5561, 0xff4c535e, 0xff4a505b, 0xff44474d, 0xff333331, 0xff2d2d2b, 0xff282827,
+0xff232322, 0xff1d1d1c, 0xff171716, 0xff282827, 0xa0262624, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x530a0a0a, 0xff2a2a29, 0xff333331, 0xff3b3b39, 0xff434341, 0xff4e4e4b,
+0xff42413f, 0xff0b0606, 0xff0d0707, 0xff0f0909, 0xff57504e, 0xff807f80, 0xff8c8c8c, 0xff7d7d7c,
+0xff868686, 0xff828183, 0xff868587, 0xff807f81, 0xff818082, 0xff828082, 0xff404041, 0xff3e424c,
+0xff414651, 0xff4f545e, 0xff4c515b, 0xff494f59, 0xff4f545e, 0xff535863, 0xff555a64, 0xff515660,
+0xff505662, 0xff525763, 0xff4b515c, 0xff474d58, 0xff43464c, 0xff353533, 0xff2f2f2e, 0xff2a2a28,
+0xff242423, 0xff1f1f1e, 0xff181817, 0xff232322, 0xb82d2d2b, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x5c0d0d0d, 0xff2e2e2d, 0xff383836, 0xff40403e, 0xff484845, 0xff565653,
+0xff444341, 0xff0d0a0a, 0xff0f0c0c, 0xff110e0e, 0xff413f40, 0xff898989, 0xff888888, 0xff858584,
+0xff8a8a88, 0xff767373, 0xff848284, 0xff858486, 0xff888789, 0xff8b8a8b, 0xff393939, 0xff40444d,
+0xff474b55, 0xff4b5059, 0xff4d525b, 0xff4c505a, 0xff4d525b, 0xff4f545e, 0xff4c525b, 0xff494e57,
+0xff474e5a, 0xff474e5a, 0xff464c58, 0xff444a55, 0xff40444b, 0xff373735, 0xff31312f, 0xff2b2b2a,
+0xff262625, 0xff20201f, 0xff191918, 0xff1f1f1e, 0xe2333331, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x83141414, 0xff333331, 0xff3c3c3a, 0xff454542, 0xff4c4c4a, 0xff5f5f5c,
+0xff444442, 0xff0b0b0b, 0xff0d0d0d, 0xff0e0e0e, 0xff4c4648, 0xff959594, 0xff868684, 0xff848484,
+0xff4e4e4e, 0xff5d5d5c, 0xff8e8e8f, 0xffb7b7b7, 0xffc1c1c1, 0xffc3c3c3, 0xff383838, 0xff3e434b,
+0xff454953, 0xff484d57, 0xff4a4d57, 0xff454a53, 0xff494d56, 0xff4a4f58, 0xff4a4f58, 0xff474b54,
+0xff4a505a, 0xff494f59, 0xff434853, 0xff414650, 0xff3e4248, 0xff383837, 0xff333331, 0xff2d2d2b,
+0xff272725, 0xff212120, 0xff1b1b1a, 0xff1b1b1a, 0xe22f2f2d, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x8a191918, 0xff373735, 0xff41413e, 0xff494947, 0xff51514e, 0xff696966,
+0xff434341, 0xff0b0b0b, 0xff0d0d0d, 0xff0e0e0e, 0xff3d3d3c, 0xff6d6d6c, 0xff808080, 0xff7e7e7e,
+0xff828282, 0xff999998, 0xff646462, 0xffc5c5c5, 0xffc9c9c9, 0xffc6c6c6, 0xff3c3c3c, 0xff3b3f47,
+0xff484c55, 0xff414b55, 0xff3f4c55, 0xff434f57, 0xff465058, 0xff454f58, 0xff4b4f57, 0xff454953,
+0xff444a53, 0xff414650, 0xff40444e, 0xff3e424b, 0xff3d3f46, 0xff3a3a38, 0xff343432, 0xff2e2e2c,
+0xff282827, 0xff232321, 0xff1d1d1c, 0xff171716, 0xf730302f, 0x0d020202, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xb4222221, 0xff3b3b39, 0xff454543, 0xff4e4e4b, 0xff555552, 0xff72726f,
+0xff40403e, 0xff0b0b0b, 0xff0c0c0c, 0xff0e0e0e, 0xff5c5c5c, 0xff959595, 0xff353534, 0xff403f3e,
+0xff7b7b7a, 0xff7f7f7e, 0xff828284, 0xff3a3938, 0xffc5c5c5, 0xffc4c4c4, 0xff484849, 0xff3d4149,
+0xff3f434b, 0xff454850, 0xff43474f, 0xff484c54, 0xff494c54, 0xff40444c, 0xff42454d, 0xff3b3f48,
+0xff3d414a, 0xff3d414a, 0xff3c4048, 0xff3b3e47, 0xff3b3d43, 0xff3c3c3a, 0xff353534, 0xff2f2f2e,
+0xff292928, 0xff242422, 0xff1e1e1d, 0xff141413, 0xff2e2e2c, 0x12030303, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0xe22c2c2b, 0xff3f3f3d, 0xff4a4a47, 0xff52524f, 0xff5a5a57, 0xff787875,
+0xff3a3a38, 0xff0b0b0b, 0xff0c0c0c, 0xff0e0e0e, 0xff6e6e6e, 0xffa6a6a6, 0xffaaaaaa, 0xff8e8e8e,
+0xff989899, 0xff7d7d7c, 0xff7f7f7e, 0xff848484, 0xff868382, 0xff7b7b7b, 0xff393939, 0xff383b42,
+0xff40434b, 0xff40444b, 0xff43464d, 0xff45484f, 0xff464950, 0xff41444c, 0xff383c44, 0xff383b43,
+0xff393d45, 0xff3a3d45, 0xff393c43, 0xff383b42, 0xff393b40, 0xff3d3d3c, 0xff373735, 0xff31312f,
+0xff2a2a29, 0xff252523, 0xff1f1f1e, 0xff121211, 0xff292927, 0x20050505, 0x00000000, 0x00000000,
+0x00000000, 0x04010101, 0xe7313130, 0xff434341, 0xff4e4e4b, 0xff565653, 0xff5e5e5b, 0xff7c7c79,
+0xff333433, 0xff0b0b0b, 0xff0d0d0d, 0xff131313, 0xff5c5a5c, 0xff737274, 0xff717172, 0xff717072,
+0xff424243, 0xff49494a, 0xff7a7a7a, 0xff7f7f7e, 0xff818180, 0xff8f8f8e, 0xff727171, 0xff333439,
+0xff3d4047, 0xff3b3f46, 0xff3f444b, 0xff40484e, 0xff424a51, 0xff394149, 0xff383f46, 0xff363941,
+0xff383e47, 0xff39434b, 0xff3b4c52, 0xff3a4a50, 0xff36373f, 0xff3f3e3d, 0xff373736, 0xff323230,
+0xff2b2b2a, 0xff252524, 0xff1f1f1e, 0xff101010, 0xff232322, 0x420a0a09, 0x00000000, 0x00000000,
+0x00000000, 0x12030303, 0xff3a3a38, 0xff474744, 0xff52524f, 0xff5a5a57, 0xff636360, 0xff7e7e7a,
+0xff2d2e2d, 0xff0b0b0b, 0xff0c0c0c, 0xff111111, 0xff414041, 0xff484749, 0xff424142, 0xff424142,
+0xff414142, 0xff242425, 0xff2a2a2a, 0xff6e6e70, 0xff7e7e7e, 0xff7f7f7e, 0xff818180, 0xff6a6a70,
+0xff273238, 0xff2b363d, 0xff303b42, 0xff333f45, 0xff363940, 0xff383a41, 0xff38393f, 0xff383a3f,
+0xff3a3e42, 0xff3f4045, 0xff404144, 0xff404043, 0xff3e3e40, 0xff40403e, 0xff393937, 0xff333331,
+0xff2c2c2a, 0xff262624, 0xff20201f, 0xff10100f, 0xff1d1d1d, 0x42090908, 0x00000000, 0x00000000,
+0x00000000, 0x22060606, 0xff3e3e3c, 0xff4b4b49, 0xff565653, 0xff5d5d5a, 0xff686865, 0xff7c7c79,
+0xff2b2d2c, 0xff1a1a1b, 0xff1c1c1d, 0xff222122, 0xff262526, 0xff343132, 0xff434343, 0xff403f40,
+0xff413c3b, 0xff404040, 0xff272727, 0xff191918, 0xff272726, 0xff606060, 0xff7e7e7c, 0xff868686,
+0xff555557, 0xff343435, 0xff323333, 0xff3b3b3b, 0xff3e3d3d, 0xff3d3d3e, 0xff3a3a3a, 0xff393939,
+0xff393939, 0xff3d3d3d, 0xff383738, 0xff393939, 0xff373737, 0xff3f3f3d, 0xff3b3b39, 0xff343433,
+0xff2d2d2c, 0xff262625, 0xff212120, 0xff10100f, 0xff181817, 0x6c0c0c0b, 0x00000000, 0x00000000,
+0x00000000, 0x420d0d0d, 0xff424240, 0xff4f4f4d, 0xff595956, 0xff61615e, 0xff6c6c69, 0xff787875,
+0xff222322, 0xff121212, 0xff1b1a1b, 0xff222223, 0xff272627, 0xff484748, 0xff5b5a5b, 0xff3c3b3c,
+0xff57504b, 0xff555455, 0xff303031, 0xff313031, 0xff383738, 0xff3b3a3a, 0xff808080, 0xff7f7f7e,
+0xff6c6c6c, 0xff303030, 0xff2c2c2c, 0xff323232, 0xff3f3e3f, 0xff474748, 0xff464546, 0xff3f3f3f,
+0xff404041, 0xff424142, 0xff313131, 0xff303030, 0xff2e2e2e, 0xff3d3d3c, 0xff3c3c3b, 0xff363634,
+0xff2f2f2e, 0xff282827, 0xff232321, 0xff111110, 0xff131313, 0x710c0c0b, 0x00000000, 0x00000000,
+0x00000000, 0x50121211, 0xff464644, 0xff535350, 0xff5c5c59, 0xff636360, 0xff6f6f6c, 0xff747471,
+0xff202020, 0xff101010, 0xff0e0e0e, 0xff121212, 0xff1c1c1c, 0xff404041, 0xff4c4c4c, 0xff373737,
+0xff434243, 0xff4e4d4e, 0xff252526, 0xff2f2f2f, 0xff212121, 0xff292929, 0xff595958, 0xff7b7b7a,
+0xff7e7e7c, 0xff7b7b7c, 0xff747272, 0xff434342, 0xff2c2c2c, 0xff2e2e2e, 0xff313131, 0xff333333,
+0xff363636, 0xff3a3a3a, 0xff2f2f2f, 0xff2e2e2e, 0xff2c2c2c, 0xff3d3d3b, 0xff3e3e3c, 0xff373736,
+0xff31312f, 0xff2a2a28, 0xff242422, 0xff121211, 0xff0e0e0e, 0x880b0b0b, 0x00000000, 0x00000000,
+0x00000000, 0x711a1a19, 0xff494947, 0xff565653, 0xff5e5e5b, 0xff656562, 0xff71716e, 0xff6f6f6c,
+0xff161615, 0xff0d0d0d, 0xff0e0e0e, 0xff0e0e0e, 0xff111111, 0xff353536, 0xff313031, 0xff1f1e1f,
+0xff3a3939, 0xff3e3e3e, 0xff212122, 0xff313132, 0xff262626, 0xff232323, 0xff1c1c1b, 0xff2a2a29,
+0xff464648, 0xff797978, 0xff7f7f7e, 0xff888888, 0xff696969, 0xff302e2e, 0xff2d2d2d, 0xff2e2e2e,
+0xff2f2f2f, 0xff303030, 0xff2e2e2e, 0xff2c2c2c, 0xff2b2b2b, 0xff3c3c3a, 0xff3f3f3d, 0xff393937,
+0xff323230, 0xff2b2b2a, 0xff252524, 0xff141413, 0xff0a0a09, 0xa00b0b0b, 0x00000000, 0x00000000,
+0x00000000, 0x861f1f1e, 0xff4d4d4b, 0xff595956, 0xff60605d, 0xff676763, 0xff73736f, 0xff696966,
+0xff0f0f0f, 0xff0b0b0b, 0xff0b0b0b, 0xff0d0d0d, 0xff0e0e0e, 0xff1c1b1b, 0xff1f1f1f, 0xff1d1d1d,
+0xff323232, 0xff2f2f2f, 0xff262626, 0xff2b2b2b, 0xff262627, 0xff292929, 0xff292929, 0xff292929,
+0xff2a2a2a, 0xff414141, 0xff898988, 0xff7e7e7c, 0xff828282, 0xff90908e, 0xff373636, 0xff2c2c2c,
+0xff363637, 0xff464845, 0xff414440, 0xff3b3e3b, 0xff373936, 0xff3f403d, 0xff40403e, 0xff3a3a38,
+0xff333331, 0xff2c2c2b, 0xff262625, 0xff161616, 0xff050505, 0xa4090909, 0x00000000, 0x00000000,
+0x00000000, 0xa0282827, 0xff50504e, 0xff5a5a57, 0xff61615e, 0xff676764, 0xff72726e, 0xff646461,
+0xff0d0d0d, 0xff0a0a0a, 0xff0b0b0b, 0xff0c0c0c, 0xff0e0e0e, 0xff0f0f0f, 0xff111111, 0xff131212,
+0xff1b1b1b, 0xff2c2c2c, 0xff303030, 0xff2a292a, 0xff242425, 0xff262626, 0xff272727, 0xff272727,
+0xff272727, 0xff262626, 0xff2e2e2f, 0xff2f2d2d, 0xff60605f, 0xff7e7e7c, 0xff696968, 0xff313132,
+0xff383839, 0xff4a473e, 0xff3c3d3c, 0xff3f4237, 0xff3a3d35, 0xff414240, 0xff40403e, 0xff3a3a38,
+0xff343432, 0xff2d2d2b, 0xff272726, 0xff191918, 0xff020202, 0xd0080808, 0x00000000, 0x00000000,
+0x00000000, 0xb32f2f2d, 0xff525250, 0xff5c5c59, 0xff61615e, 0xff676764, 0xff71716d, 0xff5e5e5a,
+0xff0b0b0b, 0xff0a0a0a, 0xff0b0b0b, 0xff0c0c0c, 0xff0d0d0d, 0xff0f0f0f, 0xff101010, 0xff131313,
+0xff1c1b1c, 0xff292929, 0xff303030, 0xff282828, 0xff242424, 0xff232222, 0xff232323, 0xff232323,
+0xff242424, 0xff242424, 0xff252525, 0xff262626, 0xff212121, 0xff4f4f4d, 0xff767676, 0xff949494,
+0xff707071, 0xff565359, 0xff636365, 0xff5e5d5e, 0xff515053, 0xff494848, 0xff40403e, 0xff3b3b39,
+0xff343432, 0xff2e2e2c, 0xff282826, 0xff1b1b1b, 0xff000000, 0xd0060605, 0x00000000, 0x00000000,
+0x00000000, 0xd0393937, 0xff545452, 0xff5c5c59, 0xff62625f, 0xff676764, 0xff6f6f6c, 0xff575958,
+0xff171919, 0xff242325, 0xff1a1a1a, 0xff1c1c1c, 0xff2b2b2b, 0xff393839, 0xff3e3d3e, 0xff434343,
+0xff494849, 0xff525252, 0xff5b5a5a, 0xff595959, 0xff5c5b5c, 0xff5f5f5f, 0xff636363, 0xff636262,
+0xff686867, 0xff6a6969, 0xff6b6a6a, 0xff6c6b6b, 0xff6d6c6b, 0xff6d6c6c, 0xff595958, 0xff525151,
+0xff737374, 0xff7a7a7a, 0xff666665, 0xff626161, 0xff605f5e, 0xff51514f, 0xff41413f, 0xff3a3a39,
+0xff343433, 0xff2f2f2d, 0xff292927, 0xff1e1e1d, 0xff000000, 0xe6040404, 0x00000000, 0x00000000,
+0x00000000, 0xea3f3f3d, 0xff545452, 0xff5b5b59, 0xff61615e, 0xff666663, 0xff6c6c69, 0xff6b6b68,
+0xff6b6a67, 0xff706f6d, 0xff6c6c69, 0xff6f6f6b, 0xff747471, 0xff797975, 0xff787875, 0xff797976,
+0xff797976, 0xff7a7a75, 0xff797975, 0xff797974, 0xff777773, 0xff767672, 0xff767672, 0xff747471,
+0xff73736f, 0xff71716d, 0xff6f6f6b, 0xff6c6c68, 0xff696966, 0xff666663, 0xff636360, 0xff51514e,
+0xff595958, 0xff646464, 0xff4e4e4c, 0xff50504d, 0xff4b4b48, 0xff454543, 0xff40403e, 0xff3a3a39,
+0xff353533, 0xff2f2f2d, 0xff292927, 0xff20201f, 0xff010101, 0xff030303, 0x00000000, 0x00000000,
+0x00000000, 0xff4a4a47, 0xff555552, 0xff5b5b58, 0xff60605d, 0xff656562, 0xff696966, 0xff6d6d6a,
+0xff70706c, 0xff73736f, 0xff747471, 0xff777773, 0xff777774, 0xff787874, 0xff797975, 0xff797975,
+0xff787874, 0xff787874, 0xff787874, 0xff787874, 0xff777773, 0xff767672, 0xff757571, 0xff73736f,
+0xff71716d, 0xff70706c, 0xff6d6d69, 0xff6b6b68, 0xff686865, 0xff666662, 0xff62625f, 0xff5e5e5b,
+0xff5b5b58, 0xff645c4d, 0xff7f7f7e, 0xff504f4b, 0xff494947, 0xff454542, 0xff3d453b, 0xff247623,
+0xff30422f, 0xff2f2f2d, 0xff292928, 0xff212120, 0xff020202, 0xff020202, 0x00000000, 0x00000000,
+0x00000000, 0xff4a4a47, 0xff545451, 0xff5a5a57, 0xff5f5f5c, 0xff646461, 0xff676764, 0xff6b6b68,
+0xff6e6e6b, 0xff70706d, 0xff73736f, 0xff747471, 0xff757571, 0xff767672, 0xff767672, 0xff767672,
+0xff777773, 0xff767672, 0xff767672, 0xff767672, 0xff757571, 0xff747470, 0xff72726f, 0xff72726e,
+0xff70706c, 0xff6e6e6a, 0xff6c6c68, 0xff6a6a66, 0xff676764, 0xff646461, 0xff61615e, 0xff5d5d5a,
+0xff5a5a57, 0xff826637, 0xffc07b09, 0xff585145, 0xff484846, 0xff434341, 0xff375235, 0xff07bd07,
+0xff246423, 0xff2e2e2d, 0xff292927, 0xff232321, 0xff040404, 0xff020202, 0x00000000, 0x00000000,
+0x00000000, 0xff4b4b49, 0xff535350, 0xff585855, 0xff5d5d5a, 0xff61615e, 0xff656562, 0xff696965,
+0xff6c6c68, 0xff6d6d6a, 0xff6f6f6c, 0xff71716d, 0xff72726e, 0xff73736f, 0xff73736f, 0xff737370,
+0xff737370, 0xff73736f, 0xff72726e, 0xff71716d, 0xff70706c, 0xff6e6e6a, 0xff6d6d69, 0xff6c6c68,
+0xff6a6a66, 0xff686864, 0xff666663, 0xff646460, 0xff62625e, 0xff5f5f5b, 0xff5c5c59, 0xff595957,
+0xff575754, 0xff545450, 0xff53514a, 0xff4b4b48, 0xff464644, 0xff424240, 0xff3d3d3a, 0xff363b34,
+0xff323331, 0xff2d2d2b, 0xff282827, 0xff232322, 0xff050505, 0xff020202, 0x00000000, 0x00000000,
+0x00000000, 0x2a0d0d0d, 0x2a0e0e0e, 0x2a0f0f0f, 0x2a101010, 0x2a111110, 0x2a121211, 0x2a121211,
+0x2a131312, 0x2b141413, 0x6c212120, 0x72222221, 0x7f232321, 0xa1232322, 0xa1242423, 0xa1262625,
+0xa1282827, 0xa1272725, 0xa1262625, 0xa1262625, 0xdf252524, 0xff292927, 0xff2a2a28, 0xff282826,
+0xff262625, 0xff262625, 0xff272726, 0xff292928, 0xff2b2b29, 0xff2a2a29, 0xff292928, 0xf3222220,
+0xa1272726, 0xa1262624, 0xa1252524, 0xa1232322, 0xa1212120, 0xa120201f, 0xa11f1f1e, 0xa11c1c1b,
+0x76151514, 0x2a080807, 0x2a070707, 0x2a060606, 0x2a010101, 0x2a000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x72151514, 0xff383836, 0xff3d3d3b, 0xff3f3f3d, 0xff3d3d3b, 0xff383837, 0xff343432,
+0xff30302f, 0xff2e2e2d, 0xff2d2d2b, 0xff2d2d2c, 0xff2e2e2c, 0xff2f2f2d, 0xff333331, 0xff31312f,
+0xff30302e, 0xff2f2f2d, 0xff2f2f2d, 0xff30302e, 0xff31312f, 0xff333331, 0xff343432, 0xff363634,
+0xff383837, 0xff3a3a38, 0xff3d3d3b, 0xff41413f, 0xff454543, 0xff4a4a48, 0xff434341, 0xff333331,
+0xf92f2f2e, 0x51111111, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x76131312, 0xff2a2a28, 0xff2f2f2d, 0xff343432, 0xff383836, 0xff3c3c3a, 0xff40403e,
+0xff444441, 0xff474744, 0xff494947, 0xff4c4c49, 0xff4f4f4c, 0xff51514e, 0xff52524f, 0xff525250,
+0xff545452, 0xff565654, 0xff595956, 0xff5c5c59, 0xff5e5e5c, 0xff5f5f5c, 0xff5d5d5a, 0xff5b5b58,
+0xff585856, 0xff565653, 0xff545451, 0xff525250, 0xff52524f, 0xff4f4f4c, 0xff3e3e3c, 0xff30302e,
+0xed212120, 0x570d0d0c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x03010101, 0x4b070707, 0x50090909, 0x500a0a0a, 0x500a0a0a, 0x500a0a0a, 0x500b0b0b,
+0x510d0d0c, 0x800e0e0e, 0x80101010, 0x80131312, 0x80141414, 0x80141413, 0x80141413, 0x80131312,
+0x80131313, 0x80141414, 0x80131313, 0x80121212, 0x80121212, 0x80131312, 0x80131313, 0x80141413,
+0x80141413, 0x80141413, 0x80131312, 0x80121212, 0x80111111, 0x80101010, 0x800b0b0b, 0x67070707,
+0x10010101, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
+0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
+};
diff --git a/src/pixmap.c b/src/pixmap.c
index a7013c1..bc79a7f 100644
--- a/src/pixmap.c
+++ b/src/pixmap.c
@@ -41,7 +41,9 @@ static const char cvs_ident[] = "$Id$";
#include "../libmej/debug.h"
#include "../libmej/mem.h"
#include "../libmej/strings.h"
+#include "draw.h"
#include "e.h"
+#include "icon.h"
#include "startup.h"
#include "menus.h"
#include "options.h"
@@ -496,7 +498,7 @@ create_trans_pixmap(simage_t *simg, unsigned char which, Drawable d, int x, int
if (simg->iml->bevel != NULL) {
D_PIXMAP(("Beveling pixmap 0x%08x with edges %d, %d, %d, %d\n", p, simg->iml->bevel->edges->left, simg->iml->bevel->edges->top,
simg->iml->bevel->edges->right, simg->iml->bevel->edges->bottom));
- FIXME_NOP(Imlib_bevel_pixmap(imlib_id, p, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);) /* Need to write this */
+ bevel_pixmap(p, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);
}
}
XFreeGC(Xdisplay, gc);
@@ -672,10 +674,8 @@ paste_simage(simage_t *simg, unsigned char which, Drawable d, unsigned short x,
Pixmap p;
gc = XCreateGC(Xdisplay, d, 0, NULL);
- p = create_trans_pixmap(simg, which, d, x, y, w, h);
- if (simg->iml->bevel != NULL) {
- FIXME_NOP(Imlib_bevel_pixmap(imlib_id, p, w, h, simg->iml->bevel->edges, simg->iml->bevel->up);)
- }
+ /* FIXME: The conditional on the next line works, but it's a hack. Worth fixing? :-) */
+ p = create_trans_pixmap(simg, which, ((which == image_st) ? scrollbar.sa_win : d), x, y, w, h);
XCopyArea(Xdisplay, p, d, gc, 0, 0, w, h, x, y);
XFreePixmap(Xdisplay, p);
XFreeGC(Xdisplay, gc);
@@ -685,7 +685,7 @@ paste_simage(simage_t *simg, unsigned char which, Drawable d, unsigned short x,
gc = XCreateGC(Xdisplay, d, 0, NULL);
p = create_viewport_pixmap(simg, d, x, y, w, h);
if (simg->iml->bevel != NULL) {
- FIXME_NOP(Imlib_bevel_pixmap(imlib_id, p, w, h, simg->iml->bevel->edges, simg->iml->bevel->up);)
+ bevel_pixmap(p, w, h, simg->iml->bevel->edges, simg->iml->bevel->up);
}
XCopyArea(Xdisplay, p, d, gc, 0, 0, w, h, x, y);
XFreePixmap(Xdisplay, p);
@@ -1082,7 +1082,7 @@ render_simage(simage_t * simg, Window win, unsigned short width, unsigned short
imlib_free_pixmap_and_mask(pixmap);
}
if (simg->iml->bevel != NULL) {
- FIXME_NOP(Imlib_bevel_pixmap(imlib_id, simg->pmap->pixmap, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);)
+ bevel_pixmap(simg->pmap->pixmap, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);
}
D_PIXMAP(("Setting background of window 0x%08x to 0x%08x\n", win, simg->pmap->pixmap));
if ((which == image_bg) && (Options & Opt_double_buffer)) {
@@ -1118,7 +1118,7 @@ render_simage(simage_t * simg, Window win, unsigned short width, unsigned short
XSetForeground(Xdisplay, gc, ((which == image_bg) ? (PixColors[bgColor]) : (simg->bg)));
XFillRectangle(Xdisplay, simg->pmap->pixmap, gc, 0, 0, width, height);
if (simg->iml->bevel != NULL) {
- FIXME_NOP(Imlib_bevel_pixmap(imlib_id, simg->pmap->pixmap, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);)
+ bevel_pixmap(simg->pmap->pixmap, width, height, simg->iml->bevel->edges, simg->iml->bevel->up);
}
/* FIXME: For efficiency, just fill the window with the pixmap
and handle exposes by copying from simg->pmap->pixmap. */
@@ -1711,10 +1711,10 @@ shaped_window_apply_mask(Drawable d, Pixmap mask)
void
set_icon_pixmap(char *filename, XWMHints * pwm_hints)
{
-#ifdef FIXME_BLOCK
const char *icon_path;
- Imlib_Image temp_im;
+ Imlib_Image temp_im = (Imlib_Image) NULL;
XWMHints *wm_hints;
+ int w = 8, h = 8;
if (pwm_hints) {
wm_hints = pwm_hints;
@@ -1728,7 +1728,7 @@ set_icon_pixmap(char *filename, XWMHints * pwm_hints)
if (icon_path != NULL) {
XIconSize *icon_sizes;
- int count, i, w = 8, h = 8; /* At least 8x8 */
+ int count, i;
temp_im = imlib_load_image(icon_path);
/* If we're going to render the image anyway, might as well be nice and give it to the WM in a size it likes. */
@@ -1748,38 +1748,31 @@ set_icon_pixmap(char *filename, XWMHints * pwm_hints)
} else {
w = h = 48;
}
- MIN_IT(w, 64);
- MIN_IT(h, 64);
- imlib_context_set_image(temp_im);
- imlib_context_set_drawable(TermWin.parent);
- imlib_image_set_has_alpha(0);
- imlib_context_set_anti_alias(1);
- imlib_context_set_dither(1);
- imlib_context_set_blend(0);
- imlib_render_pixmaps_for_whole_image_at_size(&wm_hints->icon_pixmap, &wm_hints->icon_mask, 0, w, h);
- if (check_for_enlightenment()) {
- wm_hints->flags |= IconPixmapHint | IconMaskHint;
- } else {
- wm_hints->icon_window = XCreateSimpleWindow(Xdisplay, TermWin.parent, 0, 0, w, h, 0, 0L, 0L);
- shaped_window_apply_mask(wm_hints->icon_window, wm_hints->icon_mask);
- XSetWindowBackgroundPixmap(Xdisplay, wm_hints->icon_window, wm_hints->icon_pixmap);
- wm_hints->flags |= IconWindowHint;
- }
- imlib_free_image_and_decache();
+ BOUND(w, 8, 64);
+ BOUND(h, 8, 64);
}
+ imlib_context_set_image(temp_im);
} else {
- /* Use the default. It's 48x48, so if the WM doesn't like it, tough cookies. Pixmap -> ImlibImage -> Render -> Pixmap would be
- too expensive, IMHO. */
- Imlib_data_to_pixmap(imlib_id, Eterm_xpm, &wm_hints->icon_pixmap, &wm_hints->icon_mask);
- if (check_for_enlightenment()) {
- wm_hints->flags |= IconPixmapHint | IconMaskHint;
- } else {
- wm_hints->icon_window = XCreateSimpleWindow(Xdisplay, TermWin.parent, 0, 0, 48, 48, 0, 0L, 0L);
- shaped_window_apply_mask(wm_hints->icon_window, wm_hints->icon_mask);
- XSetWindowBackgroundPixmap(Xdisplay, wm_hints->icon_window, wm_hints->icon_pixmap);
- wm_hints->flags |= IconWindowHint;
- }
+ w = h = 48;
+ temp_im = imlib_create_image_using_data(48, 48, (DATA32 *) icon_data);
+ imlib_context_set_image(temp_im);
+ imlib_image_set_has_alpha(1);
+ }
+ imlib_context_set_drawable(TermWin.parent);
+ imlib_context_set_anti_alias(1);
+ imlib_context_set_dither(1);
+ imlib_context_set_blend(0);
+ imlib_render_pixmaps_for_whole_image_at_size(&wm_hints->icon_pixmap, &wm_hints->icon_mask, 0, w, h);
+ if (check_for_enlightenment()) {
+ wm_hints->flags |= IconPixmapHint | IconMaskHint;
+ } else {
+ wm_hints->icon_window = XCreateSimpleWindow(Xdisplay, TermWin.parent, 0, 0, w, h, 0, 0L, 0L);
+ shaped_window_apply_mask(wm_hints->icon_window, wm_hints->icon_mask);
+ XSetWindowBackgroundPixmap(Xdisplay, wm_hints->icon_window, wm_hints->icon_pixmap);
+ wm_hints->flags |= IconWindowHint;
}
+ imlib_free_image_and_decache();
+
wm_hints->icon_x = wm_hints->icon_y = 0;
wm_hints->flags |= IconPositionHint;
@@ -1788,6 +1781,5 @@ set_icon_pixmap(char *filename, XWMHints * pwm_hints)
XSetWMHints(Xdisplay, TermWin.parent, wm_hints);
XFree(wm_hints);
}
-#endif
}
#endif /* PIXMAP_SUPPORT */