2013-01-20 08:48:18 -08:00
|
|
|
#include "private.h"
|
2013-12-16 06:51:35 -08:00
|
|
|
#include <Elementary.h>
|
|
|
|
#include "config.h"
|
2012-06-12 03:10:01 -07:00
|
|
|
#include "col.h"
|
|
|
|
|
2013-01-20 08:48:18 -08:00
|
|
|
typedef struct _Color Color;
|
|
|
|
|
|
|
|
struct _Color
|
|
|
|
{
|
2014-05-08 13:23:30 -07:00
|
|
|
unsigned char r;
|
|
|
|
unsigned char g;
|
|
|
|
unsigned char b;
|
|
|
|
unsigned char a;
|
2013-01-20 08:48:18 -08:00
|
|
|
};
|
|
|
|
|
2014-05-08 13:23:30 -07:00
|
|
|
static const Color default_colors[2][2][12] =
|
2012-06-12 03:10:01 -07:00
|
|
|
{
|
|
|
|
{ // normal
|
2012-06-18 06:59:09 -07:00
|
|
|
{ // normal
|
2012-11-05 07:31:45 -08:00
|
|
|
{ 0xaa, 0xaa, 0xaa, 0xff }, // COL_DEF
|
|
|
|
{ 0x00, 0x00, 0x00, 0xff }, // COL_BLACK
|
2013-08-28 14:40:55 -07:00
|
|
|
{ 0xc0, 0x00, 0x00, 0xff }, // COL_RED
|
|
|
|
{ 0x00, 0xc0, 0x00, 0xff }, // COL_GREEN
|
|
|
|
{ 0xc0, 0xc0, 0x00, 0xff }, // COL_YELLOW
|
|
|
|
{ 0x00, 0x00, 0xc0, 0xff }, // COL_BLUE
|
|
|
|
{ 0xc0, 0x00, 0xc0, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0x00, 0xc0, 0xc0, 0xff }, // COL_CYAN
|
|
|
|
{ 0xc0, 0xc0, 0xc0, 0xff }, // COL_WHITE
|
2012-06-18 06:59:09 -07:00
|
|
|
{ 0x00, 0x00, 0x00, 0x00 }, // COL_INVIS
|
|
|
|
{ 0x22, 0x22, 0x22, 0xff }, // COL_INVERSE
|
2012-11-05 07:31:45 -08:00
|
|
|
{ 0xaa, 0xaa, 0xaa, 0xff }, // COL_INVERSEBG
|
2012-06-18 06:59:09 -07:00
|
|
|
},
|
|
|
|
{ // bright/bold
|
|
|
|
{ 0xee, 0xee, 0xee, 0xff }, // COL_DEF
|
2013-08-28 14:40:55 -07:00
|
|
|
{ 0xcc, 0xcc, 0xcc, 0xff }, // COL_BLACK
|
|
|
|
{ 0xcc, 0x88, 0x88, 0xff }, // COL_RED
|
|
|
|
{ 0x88, 0xcc, 0x88, 0xff }, // COL_GREEN
|
|
|
|
{ 0xcc, 0xaa, 0x88, 0xff }, // COL_YELLOW
|
|
|
|
{ 0x88, 0x88, 0xcc, 0xff }, // COL_BLUE
|
|
|
|
{ 0xcc, 0x88, 0xcc, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0x88, 0xcc, 0xcc, 0xff }, // COL_CYAN
|
|
|
|
{ 0xcc, 0xcc, 0xcc, 0xff }, // COL_WHITE
|
2012-06-18 06:59:09 -07:00
|
|
|
{ 0x00, 0x00, 0x00, 0x00 }, // COL_INVIS
|
|
|
|
{ 0x11, 0x11, 0x11, 0xff }, // COL_INVERSE
|
|
|
|
{ 0xee, 0xee, 0xee, 0xff }, // COL_INVERSEBG
|
|
|
|
},
|
2012-06-12 03:10:01 -07:00
|
|
|
},
|
2012-06-18 06:59:09 -07:00
|
|
|
{ // intense
|
|
|
|
{ // normal
|
2012-11-05 07:31:45 -08:00
|
|
|
{ 0xdd, 0xdd, 0xdd, 0xff }, // COL_DEF
|
2013-08-28 14:40:55 -07:00
|
|
|
{ 0x80, 0x80, 0x80, 0xff }, // COL_BLACK
|
|
|
|
{ 0xff, 0x80, 0x80, 0xff }, // COL_RED
|
|
|
|
{ 0x80, 0xff, 0x80, 0xff }, // COL_GREEN
|
|
|
|
{ 0xff, 0xff, 0x80, 0xff }, // COL_YELLOW
|
|
|
|
{ 0x80, 0x80, 0xff, 0xff }, // COL_BLUE
|
|
|
|
{ 0xff, 0x80, 0xff, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0x80, 0xff, 0xff, 0xff }, // COL_CYAN
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff }, // COL_WHITE
|
2012-06-18 06:59:09 -07:00
|
|
|
{ 0x00, 0x00, 0x00, 0x00 }, // COL_INVIS
|
|
|
|
{ 0x11, 0x11, 0x11, 0xff }, // COL_INVERSE
|
2012-11-05 07:31:45 -08:00
|
|
|
{ 0xcc, 0xcc, 0xcc, 0xff }, // COL_INVERSEBG
|
2012-06-18 06:59:09 -07:00
|
|
|
},
|
|
|
|
{ // bright/bold
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff }, // COL_DEF
|
|
|
|
{ 0xcc, 0xcc, 0xcc, 0xff }, // COL_BLACK
|
|
|
|
{ 0xff, 0xcc, 0xcc, 0xff }, // COL_RED
|
|
|
|
{ 0xcc, 0xff, 0xcc, 0xff }, // COL_GREEN
|
|
|
|
{ 0xff, 0xff, 0xcc, 0xff }, // COL_YELLOW
|
|
|
|
{ 0xcc, 0xcc, 0xff, 0xff }, // COL_BLUE
|
|
|
|
{ 0xff, 0xcc, 0xff, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0xcc, 0xff, 0xff, 0xff }, // COL_CYAN
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff }, // COL_WHITE
|
|
|
|
{ 0x00, 0x00, 0x00, 0x00 }, // COL_INVIS
|
|
|
|
{ 0x00, 0x00, 0x00, 0xff }, // COL_INVERSE
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff }, // COL_INVERSEBG
|
|
|
|
}
|
2012-06-12 03:10:01 -07:00
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2014-05-08 13:23:30 -07:00
|
|
|
static const Color default_colors256[256] =
|
2012-06-12 03:10:01 -07:00
|
|
|
{
|
|
|
|
// basic 16 repeated
|
2012-11-05 07:31:45 -08:00
|
|
|
{ 0x00, 0x00, 0x00, 0xff }, // COL_BLACK
|
|
|
|
{ 0xc0, 0x00, 0x00, 0xff }, // COL_RED
|
|
|
|
{ 0x00, 0xc0, 0x00, 0xff }, // COL_GREEN
|
|
|
|
{ 0xc0, 0xc0, 0x00, 0xff }, // COL_YELLOW
|
|
|
|
{ 0x00, 0x00, 0xc0, 0xff }, // COL_BLUE
|
|
|
|
{ 0xc0, 0x00, 0xc0, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0x00, 0xc0, 0xc0, 0xff }, // COL_CYAN
|
|
|
|
{ 0xc0, 0xc0, 0xc0, 0xff }, // COL_WHITE
|
|
|
|
|
|
|
|
{ 0x80, 0x80, 0x80, 0xff }, // COL_BLACK
|
|
|
|
{ 0xff, 0x80, 0x80, 0xff }, // COL_RED
|
|
|
|
{ 0x80, 0xff, 0x80, 0xff }, // COL_GREEN
|
|
|
|
{ 0xff, 0xff, 0x80, 0xff }, // COL_YELLOW
|
|
|
|
{ 0x80, 0x80, 0xff, 0xff }, // COL_BLUE
|
|
|
|
{ 0xff, 0x80, 0xff, 0xff }, // COL_MAGENTA
|
|
|
|
{ 0x80, 0xff, 0xff, 0xff }, // COL_CYAN
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff }, // COL_WHITE
|
2012-07-23 20:29:03 -07:00
|
|
|
|
2012-06-12 03:10:01 -07:00
|
|
|
// pure 6x6x6 colorcube
|
|
|
|
{ 0x00, 0x00, 0x00, 0xff },
|
2014-01-23 15:41:17 -08:00
|
|
|
{ 0x00, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0x00, 0x87, 0xff },
|
|
|
|
{ 0x00, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x00, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0x00, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0x00, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x00, 0x87, 0x00, 0xff },
|
|
|
|
{ 0x00, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0x87, 0x87, 0xff },
|
|
|
|
{ 0x00, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x00, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0x00, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0x00, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x00, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0x00, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0x00, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x00, 0xff, 0x00, 0xff },
|
|
|
|
{ 0x00, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0x00, 0xff, 0x87, 0xff },
|
|
|
|
{ 0x00, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0x00, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0x00, 0xff, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0x00, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0x00, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0x87, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0x87, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x5f, 0xff, 0x00, 0xff },
|
|
|
|
{ 0x5f, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0x5f, 0xff, 0x87, 0xff },
|
|
|
|
{ 0x5f, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0x5f, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0x5f, 0xff, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0x00, 0x00, 0xff },
|
|
|
|
{ 0x87, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0x00, 0x87, 0xff },
|
|
|
|
{ 0x87, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0x87, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0x87, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0x87, 0x00, 0xff },
|
|
|
|
{ 0x87, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0x87, 0x87, 0xff },
|
|
|
|
{ 0x87, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0x87, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0x87, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0x87, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0x87, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0x87, 0xff, 0x00, 0xff },
|
|
|
|
{ 0x87, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0x87, 0xff, 0x87, 0xff },
|
|
|
|
{ 0x87, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0x87, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0x87, 0xff, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0x00, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0x00, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0x87, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0x87, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xaf, 0xff, 0x00, 0xff },
|
|
|
|
{ 0xaf, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0xaf, 0xff, 0x87, 0xff },
|
|
|
|
{ 0xaf, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0xaf, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0xaf, 0xff, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0x00, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0x00, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0x87, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0x87, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xd7, 0xff, 0x00, 0xff },
|
|
|
|
{ 0xd7, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0xd7, 0xff, 0x87, 0xff },
|
|
|
|
{ 0xd7, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0xd7, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0xd7, 0xff, 0xff, 0xff },
|
|
|
|
|
|
|
|
|
|
|
|
{ 0xff, 0x00, 0x00, 0xff },
|
|
|
|
{ 0xff, 0x00, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0x00, 0x87, 0xff },
|
|
|
|
{ 0xff, 0x00, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0x00, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0x00, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xff, 0x5f, 0x00, 0xff },
|
|
|
|
{ 0xff, 0x5f, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0x5f, 0x87, 0xff },
|
|
|
|
{ 0xff, 0x5f, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0x5f, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0x5f, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xff, 0x87, 0x00, 0xff },
|
|
|
|
{ 0xff, 0x87, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0x87, 0x87, 0xff },
|
|
|
|
{ 0xff, 0x87, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0x87, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0x87, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xff, 0xaf, 0x00, 0xff },
|
|
|
|
{ 0xff, 0xaf, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0xaf, 0x87, 0xff },
|
|
|
|
{ 0xff, 0xaf, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0xaf, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0xaf, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xff, 0xd7, 0x00, 0xff },
|
|
|
|
{ 0xff, 0xd7, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0xd7, 0x87, 0xff },
|
|
|
|
{ 0xff, 0xd7, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0xd7, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0xd7, 0xff, 0xff },
|
|
|
|
|
|
|
|
{ 0xff, 0xff, 0x00, 0xff },
|
|
|
|
{ 0xff, 0xff, 0x5f, 0xff },
|
|
|
|
{ 0xff, 0xff, 0x87, 0xff },
|
|
|
|
{ 0xff, 0xff, 0xaf, 0xff },
|
|
|
|
{ 0xff, 0xff, 0xd7, 0xff },
|
|
|
|
{ 0xff, 0xff, 0xff, 0xff },
|
2012-06-12 03:10:01 -07:00
|
|
|
|
|
|
|
// greyscale ramp (24 not including black and white, so 26 if included)
|
|
|
|
{ 0x08, 0x08, 0x08, 0xff },
|
|
|
|
{ 0x12, 0x12, 0x12, 0xff },
|
|
|
|
{ 0x1c, 0x1c, 0x1c, 0xff },
|
|
|
|
{ 0x26, 0x26, 0x26, 0xff },
|
|
|
|
{ 0x30, 0x30, 0x30, 0xff },
|
|
|
|
{ 0x3a, 0x3a, 0x3a, 0xff },
|
|
|
|
{ 0x44, 0x44, 0x44, 0xff },
|
|
|
|
{ 0x4e, 0x4e, 0x4e, 0xff },
|
|
|
|
{ 0x58, 0x58, 0x58, 0xff },
|
|
|
|
{ 0x62, 0x62, 0x62, 0xff },
|
|
|
|
{ 0x6c, 0x6c, 0x6c, 0xff },
|
|
|
|
{ 0x76, 0x76, 0x76, 0xff },
|
|
|
|
{ 0x80, 0x80, 0x80, 0xff },
|
|
|
|
{ 0x8a, 0x8a, 0x8a, 0xff },
|
|
|
|
{ 0x94, 0x94, 0x94, 0xff },
|
|
|
|
{ 0x9e, 0x9e, 0x9e, 0xff },
|
|
|
|
{ 0xa8, 0xa8, 0xa8, 0xff },
|
|
|
|
{ 0xb2, 0xb2, 0xb2, 0xff },
|
|
|
|
{ 0xbc, 0xbc, 0xbc, 0xff },
|
|
|
|
{ 0xc6, 0xc6, 0xc6, 0xff },
|
|
|
|
{ 0xd0, 0xd0, 0xd0, 0xff },
|
|
|
|
{ 0xda, 0xda, 0xda, 0xff },
|
|
|
|
{ 0xe4, 0xe4, 0xe4, 0xff },
|
|
|
|
{ 0xee, 0xee, 0xee, 0xff },
|
|
|
|
};
|
2013-01-20 08:48:18 -08:00
|
|
|
|
2013-04-05 22:02:05 -07:00
|
|
|
void
|
2017-07-06 11:55:02 -07:00
|
|
|
colors_term_init(Evas_Object *textgrid,
|
|
|
|
const Evas_Object *bg,
|
|
|
|
const Config *config)
|
2013-01-20 08:48:18 -08:00
|
|
|
{
|
2013-01-28 16:43:13 -08:00
|
|
|
int c, n;
|
2013-01-20 08:48:18 -08:00
|
|
|
char buf[32];
|
2014-05-17 12:01:30 -07:00
|
|
|
int r, g , b, a;
|
|
|
|
const Color *color;
|
2013-01-20 08:48:18 -08:00
|
|
|
|
2014-05-16 00:46:51 -07:00
|
|
|
for (c = 0; c < (4 * 12); c++)
|
2013-01-20 08:48:18 -08:00
|
|
|
{
|
2015-03-30 11:47:35 -07:00
|
|
|
n = c + (24 * (c / 24));
|
2013-12-16 06:51:35 -08:00
|
|
|
if (config->colors_use)
|
2013-01-20 08:48:18 -08:00
|
|
|
{
|
2014-05-17 12:01:30 -07:00
|
|
|
r = config->colors[c].r;
|
|
|
|
g = config->colors[c].g;
|
|
|
|
b = config->colors[c].b;
|
|
|
|
a = config->colors[c].a;
|
2013-01-20 08:48:18 -08:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2013-12-16 06:51:35 -08:00
|
|
|
snprintf(buf, sizeof(buf) - 1, "c%i", c);
|
2014-05-08 13:23:30 -07:00
|
|
|
if (!edje_object_color_class_get(bg, buf,
|
2014-05-17 12:01:30 -07:00
|
|
|
&r,
|
|
|
|
&g,
|
|
|
|
&b,
|
|
|
|
&a,
|
2014-05-08 13:23:30 -07:00
|
|
|
NULL, NULL, NULL, NULL,
|
|
|
|
NULL, NULL, NULL, NULL))
|
2013-12-16 06:51:35 -08:00
|
|
|
{
|
2014-05-17 12:01:30 -07:00
|
|
|
color = &default_colors[c / 24][(c % 24) / 12][c % 12];
|
|
|
|
r = color->r;
|
|
|
|
g = color->g;
|
|
|
|
b = color->b;
|
|
|
|
a = color->a;
|
2013-12-16 06:51:35 -08:00
|
|
|
}
|
2013-01-20 08:48:18 -08:00
|
|
|
}
|
2014-05-08 13:23:30 -07:00
|
|
|
/* normal */
|
|
|
|
evas_object_textgrid_palette_set(
|
|
|
|
textgrid, EVAS_TEXTGRID_PALETTE_STANDARD, n,
|
2014-05-17 12:01:30 -07:00
|
|
|
r, g, b, a);
|
2014-05-08 13:23:30 -07:00
|
|
|
|
|
|
|
/* faint */
|
2015-03-30 11:47:35 -07:00
|
|
|
evas_object_textgrid_palette_set(
|
|
|
|
textgrid, EVAS_TEXTGRID_PALETTE_STANDARD, n + 24,
|
|
|
|
r / 2, g / 2, b / 2, a / 2);
|
2013-01-20 08:48:18 -08:00
|
|
|
}
|
|
|
|
for (c = 0; c < 256; c++)
|
|
|
|
{
|
2013-10-15 06:32:35 -07:00
|
|
|
snprintf(buf, sizeof(buf) - 1, "C%i", c);
|
2014-05-08 13:23:30 -07:00
|
|
|
|
|
|
|
if (!edje_object_color_class_get(bg, buf,
|
2014-05-17 12:01:30 -07:00
|
|
|
&r,
|
|
|
|
&g,
|
|
|
|
&b,
|
|
|
|
&a,
|
2014-05-08 13:23:30 -07:00
|
|
|
NULL, NULL, NULL, NULL,
|
|
|
|
NULL, NULL, NULL, NULL))
|
2013-01-20 08:48:18 -08:00
|
|
|
{
|
2014-05-17 12:01:30 -07:00
|
|
|
color = &default_colors256[c];
|
|
|
|
r = color->r;
|
|
|
|
g = color->g;
|
|
|
|
b = color->b;
|
|
|
|
a = color->a;
|
2013-01-20 08:48:18 -08:00
|
|
|
}
|
2014-05-08 13:23:30 -07:00
|
|
|
evas_object_textgrid_palette_set(
|
|
|
|
textgrid, EVAS_TEXTGRID_PALETTE_EXTENDED, c,
|
2014-05-17 12:01:30 -07:00
|
|
|
r, g, b, a);
|
2013-01-20 08:48:18 -08:00
|
|
|
}
|
|
|
|
}
|
2013-12-16 06:51:35 -08:00
|
|
|
|
|
|
|
void
|
2014-05-17 12:01:30 -07:00
|
|
|
colors_standard_get(int set, int col,
|
|
|
|
unsigned char *r,
|
|
|
|
unsigned char *g,
|
|
|
|
unsigned char *b,
|
|
|
|
unsigned char *a)
|
2013-12-16 06:51:35 -08:00
|
|
|
{
|
|
|
|
if ((set >= 0) && (set < 4))
|
|
|
|
{
|
|
|
|
int s1, s2;
|
2014-05-08 13:23:30 -07:00
|
|
|
|
2013-12-16 06:51:35 -08:00
|
|
|
s1 = set / 2;
|
|
|
|
s2 = set % 2;
|
2014-05-08 13:23:30 -07:00
|
|
|
*r = default_colors[s1][s2][col].r;
|
|
|
|
*g = default_colors[s1][s2][col].g;
|
|
|
|
*b = default_colors[s1][s2][col].b;
|
|
|
|
*a = default_colors[s1][s2][col].a;
|
2013-12-16 06:51:35 -08:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
*r = 0;
|
|
|
|
*g = 0;
|
|
|
|
*b = 0;
|
|
|
|
*a = 0;
|
|
|
|
}
|