plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

data.c (6108B)


      1 #include <u.h>
      2 #include <libc.h>
      3 #include <draw.h>
      4 #include <thread.h>
      5 #include <cursor.h>
      6 #include <mouse.h>
      7 #include <keyboard.h>
      8 #include <frame.h>
      9 #include <fcall.h>
     10 #include "dat.h"
     11 #include "fns.h"
     12 
     13 Cursor crosscursor = {
     14 	{-7, -7},
     15 	{0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0,
     16 	 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF,
     17 	 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0,
     18 	 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, },
     19 	{0x00, 0x00, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80,
     20 	 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x7F, 0xFE,
     21 	 0x7F, 0xFE, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80,
     22 	 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x00, 0x00, }
     23 };
     24 
     25 Cursor boxcursor = {
     26 	{-7, -7},
     27 	{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
     28 	 0xFF, 0xFF, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F,
     29 	 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xFF, 0xFF,
     30 	 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, },
     31 	{0x00, 0x00, 0x7F, 0xFE, 0x7F, 0xFE, 0x7F, 0xFE,
     32 	 0x70, 0x0E, 0x70, 0x0E, 0x70, 0x0E, 0x70, 0x0E,
     33 	 0x70, 0x0E, 0x70, 0x0E, 0x70, 0x0E, 0x70, 0x0E,
     34 	 0x7F, 0xFE, 0x7F, 0xFE, 0x7F, 0xFE, 0x00, 0x00, }
     35 };
     36 
     37 Cursor sightcursor = {
     38 	{-7, -7},
     39 	{0x1F, 0xF8, 0x3F, 0xFC, 0x7F, 0xFE, 0xFB, 0xDF,
     40 	 0xF3, 0xCF, 0xE3, 0xC7, 0xFF, 0xFF, 0xFF, 0xFF,
     41 	 0xFF, 0xFF, 0xFF, 0xFF, 0xE3, 0xC7, 0xF3, 0xCF,
     42 	 0x7B, 0xDF, 0x7F, 0xFE, 0x3F, 0xFC, 0x1F, 0xF8, },
     43 	{0x00, 0x00, 0x0F, 0xF0, 0x31, 0x8C, 0x21, 0x84,
     44 	 0x41, 0x82, 0x41, 0x82, 0x41, 0x82, 0x7F, 0xFE,
     45 	 0x7F, 0xFE, 0x41, 0x82, 0x41, 0x82, 0x41, 0x82,
     46 	 0x21, 0x84, 0x31, 0x8C, 0x0F, 0xF0, 0x00, 0x00, }
     47 };
     48 
     49 Cursor whitearrow = {
     50 	{0, 0},
     51 	{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFC,
     52 	 0xFF, 0xF0, 0xFF, 0xF0, 0xFF, 0xF8, 0xFF, 0xFC,
     53 	 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFC,
     54 	 0xF3, 0xF8, 0xF1, 0xF0, 0xE0, 0xE0, 0xC0, 0x40, },
     55 	{0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x06, 0xC0, 0x1C,
     56 	 0xC0, 0x30, 0xC0, 0x30, 0xC0, 0x38, 0xC0, 0x1C,
     57 	 0xC0, 0x0E, 0xC0, 0x07, 0xCE, 0x0E, 0xDF, 0x1C,
     58 	 0xD3, 0xB8, 0xF1, 0xF0, 0xE0, 0xE0, 0xC0, 0x40, }
     59 };
     60 
     61 Cursor query = {
     62 	{-7,-7},
     63 	{0x0f, 0xf0, 0x1f, 0xf8, 0x3f, 0xfc, 0x7f, 0xfe,
     64 	 0x7c, 0x7e, 0x78, 0x7e, 0x00, 0xfc, 0x01, 0xf8,
     65 	 0x03, 0xf0, 0x07, 0xe0, 0x07, 0xc0, 0x07, 0xc0,
     66 	 0x07, 0xc0, 0x07, 0xc0, 0x07, 0xc0, 0x07, 0xc0, },
     67 	{0x00, 0x00, 0x0f, 0xf0, 0x1f, 0xf8, 0x3c, 0x3c,
     68 	 0x38, 0x1c, 0x00, 0x3c, 0x00, 0x78, 0x00, 0xf0,
     69 	 0x01, 0xe0, 0x03, 0xc0, 0x03, 0x80, 0x03, 0x80,
     70 	 0x00, 0x00, 0x03, 0x80, 0x03, 0x80, 0x00, 0x00, }
     71 };
     72 
     73 Cursor tl = {
     74 	{-4, -4},
     75 	{0xfe, 0x00, 0x82, 0x00, 0x8c, 0x00, 0x87, 0xff,
     76 	 0xa0, 0x01, 0xb0, 0x01, 0xd0, 0x01, 0x11, 0xff,
     77 	 0x11, 0x00, 0x11, 0x00, 0x11, 0x00, 0x11, 0x00,
     78 	 0x11, 0x00, 0x11, 0x00, 0x11, 0x00, 0x1f, 0x00, },
     79 	{0x00, 0x00, 0x7c, 0x00, 0x70, 0x00, 0x78, 0x00,
     80 	 0x5f, 0xfe, 0x4f, 0xfe, 0x0f, 0xfe, 0x0e, 0x00,
     81 	 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00,
     82 	 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x00, 0x00, }
     83 };
     84 
     85 Cursor t = {
     86 	{-7, -8},
     87 	{0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x06, 0xc0,
     88 	 0x1c, 0x70, 0x10, 0x10, 0x0c, 0x60, 0xfc, 0x7f,
     89 	 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0xff, 0xff,
     90 	 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, },
     91 	{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
     92 	 0x03, 0x80, 0x0f, 0xe0, 0x03, 0x80, 0x03, 0x80,
     93 	 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe, 0x00, 0x00,
     94 	 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }
     95 };
     96 
     97 Cursor tr = {
     98 	{-11, -4},
     99 	{0x00, 0x7f, 0x00, 0x41, 0x00, 0x31, 0xff, 0xe1,
    100 	 0x80, 0x05, 0x80, 0x0d, 0x80, 0x0b, 0xff, 0x88,
    101 	 0x00, 0x88, 0x0, 0x88, 0x00, 0x88, 0x00, 0x88,
    102 	 0x00, 0x88, 0x00, 0x88, 0x00, 0x88, 0x00, 0xf8, },
    103 	{0x00, 0x00, 0x00, 0x3e, 0x00, 0x0e, 0x00, 0x1e,
    104 	 0x7f, 0xfa, 0x7f, 0xf2, 0x7f, 0xf0, 0x00, 0x70,
    105 	 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70,
    106 	 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x00, }
    107 };
    108 
    109 Cursor r = {
    110 	{-8, -7},
    111 	{0x07, 0xc0, 0x04, 0x40, 0x04, 0x40, 0x04, 0x58,
    112 	 0x04, 0x68, 0x04, 0x6c, 0x04, 0x06, 0x04, 0x02,
    113 	 0x04, 0x06, 0x04, 0x6c, 0x04, 0x68, 0x04, 0x58,
    114 	 0x04, 0x40, 0x04, 0x40, 0x04, 0x40, 0x07, 0xc0, },
    115 	{0x00, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80,
    116 	 0x03, 0x90, 0x03, 0x90, 0x03, 0xf8, 0x03, 0xfc,
    117 	 0x03, 0xf8, 0x03, 0x90, 0x03, 0x90, 0x03, 0x80,
    118 	 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x00, }
    119 };
    120 
    121 Cursor br = {
    122 	{-11, -11},
    123 	{0x00, 0xf8, 0x00, 0x88, 0x00, 0x88, 0x00, 0x88,
    124 	 0x00, 0x88, 0x00, 0x88, 0x00, 0x88, 0x00, 0x88,
    125 	 0xff, 0x88, 0x80, 0x0b, 0x80, 0x0d, 0x80, 0x05,
    126 	 0xff, 0xe1, 0x00, 0x31, 0x00, 0x41, 0x00, 0x7f, },
    127 	{0x00, 0x00, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70,
    128 	 0x0, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70,
    129 	 0x00, 0x70, 0x7f, 0xf0, 0x7f, 0xf2, 0x7f, 0xfa,
    130 	 0x00, 0x1e, 0x00, 0x0e, 0x00, 0x3e, 0x00, 0x00, }
    131 };
    132 
    133 Cursor b = {
    134 	{-7, -7},
    135 	{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    136 	 0xff, 0xff, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01,
    137 	 0xfc, 0x7f, 0x0c, 0x60, 0x10, 0x10, 0x1c, 0x70,
    138 	 0x06, 0xc0, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, },
    139 	{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    140 	 0x00, 0x00, 0x7f, 0xfe, 0x7f, 0xfe, 0x7f, 0xfe,
    141 	 0x03, 0x80, 0x03, 0x80, 0x0f, 0xe0, 0x03, 0x80,
    142 	 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }
    143 };
    144 
    145 Cursor bl = {
    146 	{-4, -11},
    147 	{0x1f, 0x00, 0x11, 0x00, 0x11, 0x00, 0x11, 0x00,
    148 	 0x11, 0x00, 0x11, 0x00, 0x11, 0x00, 0x11, 0x00,
    149 	 0x11, 0xff, 0xd0, 0x01, 0xb0, 0x01, 0xa0, 0x01,
    150 	 0x87, 0xff, 0x8c, 0x00, 0x82, 0x00, 0xfe, 0x00, },
    151 	{0x00, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00,
    152 	 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x0e, 0x00,
    153 	 0x0e, 0x00, 0x0f, 0xfe, 0x4f, 0xfe, 0x5f, 0xfe,
    154 	 0x78, 0x00, 0x70, 0x00, 0x7c, 0x00, 0x00, 0x0, }
    155 };
    156 
    157 Cursor l = {
    158 	{-7, -7},
    159 	{0x03, 0xe0, 0x02, 0x20, 0x02, 0x20, 0x1a, 0x20,
    160 	 0x16, 0x20, 0x36, 0x20, 0x60, 0x20, 0x40, 0x20,
    161 	 0x60, 0x20, 0x36, 0x20, 0x16, 0x20, 0x1a, 0x20,
    162 	 0x02, 0x20, 0x02, 0x20, 0x02, 0x20, 0x03, 0xe0, },
    163 	{0x00, 0x00, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0,
    164 	 0x09, 0xc0, 0x09, 0xc0, 0x1f, 0xc0, 0x3f, 0xc0,
    165 	 0x1f, 0xc0, 0x09, 0xc0, 0x09, 0xc0, 0x01, 0xc0,
    166 	 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x00, 0x00, }
    167 };
    168 
    169 Cursor *corners[9] = {
    170 	&tl,	&t,	&tr,
    171 	&l,	nil,	&r,
    172 	&bl,	&b,	&br
    173 };
    174 
    175 void
    176 iconinit(void)
    177 {
    178 	background = allocimage(display, Rect(0,0,1,1), RGB24, 1, 0x777777FF);
    179 	red = allocimage(display, Rect(0,0,1,1), RGB24, 1, 0xDD0000FF);
    180 }