The five buttons below each image each have a bitmap label to convey their function. These bitmaps are stored in the X11 Bitmap format, which consists of small fragments of C code, providing an array of bits with symbolic constants giving the width and height. These are read in using the read_x11_bitmap function from the IDL library before being used as the values for the button widgets. The five bitmap files used for button labels are shown below.
<rotccw.xbm>
#define rotateCCW_width 16
#define rotateCCW_height 16
static unsigned char rotateCCW_bits[] = {
0x00, 0x00, 0x0c, 0x00, 0xec, 0x03, 0xfc, 0x0f, 0x3c, 0x1c, 0xfc, 0x18,
0xfc, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x06, 0x30, 0x06, 0x18,
0x1c, 0x1c, 0xf8, 0x0f, 0xe0, 0x03, 0x00, 0x00};
<rotcw.xbm>
#define rotateCW_width 16
#define rotateCW_height 16
static unsigned char rotateCW_bits[] = {
0x00, 0x00, 0x00, 0x18, 0xe0, 0x1b, 0xf8, 0x1f, 0x1c, 0x1e, 0x8c, 0x1f,
0x86, 0x1f, 0x06, 0x00, 0x06, 0x00, 0x06, 0x00, 0x06, 0x30, 0x0c, 0x30,
0x1c, 0x1c, 0xf8, 0x0f, 0xe0, 0x03, 0x00, 0x00};
<fliph.xbm>
#define flipH_width 16
#define flipH_height 16
static unsigned char flipH_bits[] = {
0x90, 0x00, 0x98, 0x00, 0x9c, 0x00, 0xfe, 0x1f, 0xfe, 0x1f, 0x9c, 0x00,
0x98, 0x00, 0x90, 0x04, 0x80, 0x0c, 0x80, 0x1c, 0xfc, 0x3f, 0xfc, 0x3f,
0x80, 0x1c, 0x80, 0x0c, 0x80, 0x04, 0x00, 0x00};
<flipv.xbm>
#define flipV_width 16
#define flipV_height 16
static unsigned char flipV_bits[] = {
0x00, 0x00, 0x00, 0x0c, 0x18, 0x1e, 0x18, 0x3f, 0x98, 0x7f, 0x18, 0x0c,
0x18, 0x0c, 0xff, 0x7f, 0x18, 0x0c, 0x18, 0x0c, 0xff, 0x0c, 0x7e, 0x0c,
0x3c, 0x0c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00};
<histoequ.xbm>
#define histEqu_width 16
#define histEqu_height 16
static unsigned char histEqu_bits[] = {
0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0xc0, 0x07,
0xc0, 0x07, 0xc8, 0x0f, 0xd8, 0x0f, 0xd8, 0x0f, 0xfc, 0x1f, 0xfc, 0x1f,
0xfc, 0x3f, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00};