Browse Source

make g++ stop bitching

v1.x
Tj Holowaychuk 14 years ago
parent
commit
13e4ecf68c
  1. 2
      src/CanvasRenderingContext2d.cc
  2. 9
      src/CanvasRenderingContext2d.h
  3. 314
      src/color.h

2
src/CanvasRenderingContext2d.cc

@ -1018,7 +1018,7 @@ Context2d::SetFillColor(const Arguments &args) {
HandleScope scope;
if (!args[0]->IsString()) return Undefined();
String::AsciiValue str(args[0]);
printf("%s\n", *str);
uint32_t color = rgba_from_string(*str);
Context2d *context = ObjectWrap::Unwrap<Context2d>(args.This());
context->state->fillPattern = NULL;
//RGBA(context->state->fill,r,g,b,a);

9
src/CanvasRenderingContext2d.h

@ -8,17 +8,10 @@
#ifndef __NODE_CONTEXT2D_H__
#define __NODE_CONTEXT2D_H__
#include "color.h"
#include "Canvas.h"
#include "CanvasGradient.h"
/*
* RGBA struct used to retain values of fill/stroke.
*/
typedef struct {
double r, g, b, a;
} rgba_t;
/*
* State struct.
*

314
src/color.h

@ -9,6 +9,14 @@
#include <stdint.h>
#include <string.h>
/*
* RGBA struct.
*/
typedef struct {
double r, g, b, a;
} rgba_t;
/*
* Consume whitespace.
*/
@ -36,154 +44,154 @@
*/
static struct named_color {
char *name;
const char *name;
uint32_t val;
} named_colors[] = {
"transparent", 0xffffff00
, "aliceblue", 0xf0f8ffff
, "antiquewhite", 0xfaebd7ff
, "aqua", 0x00ffffff
, "aquamarine", 0x7fffd4ff
, "azure", 0xf0ffffff
, "beige", 0xf5f5dcff
, "bisque", 0xffe4c4ff
, "black", 0x000000ff
, "blanchedalmond", 0xffebcdff
, "blue", 0x0000ffff
, "blueviolet", 0x8a2be2ff
, "brown", 0xa52a2aff
, "burlywood", 0xdeb887ff
, "cadetblue", 0x5f9ea0ff
, "chartreuse", 0x7fff00ff
, "chocolate", 0xd2691eff
, "coral", 0xff7f50ff
, "cornflowerblue", 0x6495edff
, "cornsilk", 0xfff8dcff
, "crimson", 0xdc143cff
, "cyan", 0x00ffffff
, "darkblue", 0x00008bff
, "darkcyan", 0x008b8bff
, "darkgoldenrod", 0xb8860bff
, "darkgray", 0xa9a9a9ff
, "darkgreen", 0x006400ff
, "darkkhaki", 0xbdb76bff
, "darkmagenta", 0x8b008bff
, "darkolivegreen", 0x556b2fff
, "darkorange", 0xff8c00ff
, "darkorchid", 0x9932ccff
, "darkred", 0x8b0000ff
, "darksalmon", 0xe9967aff
, "darkseagreen", 0x8fbc8fff
, "darkslateblue", 0x483d8bff
, "darkslategray", 0x2f4f4fff
, "darkturquoise", 0x00ced1ff
, "darkviolet", 0x9400d3ff
, "deeppink", 0xff1493ff
, "deepskyblue", 0x00bfffff
, "dimgray", 0x696969ff
, "dodgerblue", 0x1e90ffff
, "feldspar", 0xd19275ff
, "firebrick", 0xb22222ff
, "floralwhite", 0xfffaf0ff
, "forestgreen", 0x228b22ff
, "fuchsia", 0xff00ffff
, "gainsboro", 0xdcdcdcff
, "ghostwhite", 0xf8f8ffff
, "gold", 0xffd700ff
, "goldenrod", 0xdaa520ff
, "gray", 0x808080ff
, "green", 0x008000ff
, "greenyellow", 0xadff2fff
, "honeydew", 0xf0fff0ff
, "hotpink", 0xff69b4ff
, "indianred ", 0xcd5c5cff
, "indigo ", 0x4b0082ff
, "ivory", 0xfffff0ff
, "khaki", 0xf0e68cff
, "lavender", 0xe6e6faff
, "lavenderblush", 0xfff0f5ff
, "lawngreen", 0x7cfc00ff
, "lemonchiffon", 0xfffacdff
, "lightblue", 0xadd8e6ff
, "lightcoral", 0xf08080ff
, "lightcyan", 0xe0ffffff
, "lightgoldenrodyellow", 0xfafad2ff
, "lightgrey", 0xd3d3d3ff
, "lightgreen", 0x90ee90ff
, "lightpink", 0xffb6c1ff
, "lightsalmon", 0xffa07aff
, "lightseagreen", 0x20b2aaff
, "lightskyblue", 0x87cefaff
, "lightslateblue", 0x8470ffff
, "lightslategray", 0x778899ff
, "lightsteelblue", 0xb0c4deff
, "lightyellow", 0xffffe0ff
, "lime", 0x00ff00ff
, "limegreen", 0x32cd32ff
, "linen", 0xfaf0e6ff
, "magenta", 0xff00ffff
, "maroon", 0x800000ff
, "mediumaquamarine", 0x66cdaaff
, "mediumblue", 0x0000cdff
, "mediumorchid", 0xba55d3ff
, "mediumpurple", 0x9370d8ff
, "mediumseagreen", 0x3cb371ff
, "mediumslateblue", 0x7b68eeff
, "mediumspringgreen", 0x00fa9aff
, "mediumturquoise", 0x48d1ccff
, "mediumvioletred", 0xc71585ff
, "midnightblue", 0x191970ff
, "mintcream", 0xf5fffaff
, "mistyrose", 0xffe4e1ff
, "moccasin", 0xffe4b5ff
, "navajowhite", 0xffdeadff
, "navy", 0x000080ff
, "oldlace", 0xfdf5e6ff
, "olive", 0x808000ff
, "olivedrab", 0x6b8e23ff
, "orange", 0xffa500ff
, "orangered", 0xff4500ff
, "orchid", 0xda70d6ff
, "palegoldenrod", 0xeee8aaff
, "palegreen", 0x98fb98ff
, "paleturquoise", 0xafeeeeff
, "palevioletred", 0xd87093ff
, "papayawhip", 0xffefd5ff
, "peachpuff", 0xffdab9ff
, "peru", 0xcd853fff
, "pink", 0xffc0cbff
, "plum", 0xdda0ddff
, "powderblue", 0xb0e0e6ff
, "purple", 0x800080ff
, "red", 0xff0000ff
, "rosybrown", 0xbc8f8fff
, "royalblue", 0x4169e1ff
, "saddlebrown", 0x8b4513ff
, "salmon", 0xfa8072ff
, "sandybrown", 0xf4a460ff
, "seagreen", 0x2e8b57ff
, "seashell", 0xfff5eeff
, "sienna", 0xa0522dff
, "silver", 0xc0c0c0ff
, "skyblue", 0x87ceebff
, "slateblue", 0x6a5acdff
, "slategray", 0x708090ff
, "snow", 0xfffafaff
, "springgreen", 0x00ff7fff
, "steelblue", 0x4682b4ff
, "tan", 0xd2b48cff
, "teal", 0x008080ff
, "thistle", 0xd8bfd8ff
, "tomato", 0xff6347ff
, "turquoise", 0x40e0d0ff
, "violet", 0xee82eeff
, "violetred", 0xd02090ff
, "wheat", 0xf5deb3ff
, "white", 0xffffffff
, "whitesmoke", 0xf5f5f5ff
, "yellow", 0xffff00ff
, "yellowgreen", 0x9acd32ff
, NULL, NULL
{"transparent", 0xffffff00}
, {"aliceblue", 0xf0f8ffff}
, {"antiquewhite", 0xfaebd7ff}
, {"aqua", 0x00ffffff}
, {"aquamarine", 0x7fffd4ff}
, {"azure", 0xf0ffffff}
, {"beige", 0xf5f5dcff}
, {"bisque", 0xffe4c4ff}
, {"black", 0x000000ff}
, {"blanchedalmond", 0xffebcdff}
, {"blue", 0x0000ffff}
, {"blueviolet", 0x8a2be2ff}
, {"brown", 0xa52a2aff}
, {"burlywood", 0xdeb887ff}
, {"cadetblue", 0x5f9ea0ff}
, {"chartreuse", 0x7fff00ff}
, {"chocolate", 0xd2691eff}
, {"coral", 0xff7f50ff}
, {"cornflowerblue", 0x6495edff}
, {"cornsilk", 0xfff8dcff}
, {"crimson", 0xdc143cff}
, {"cyan", 0x00ffffff}
, {"darkblue", 0x00008bff}
, {"darkcyan", 0x008b8bff}
, {"darkgoldenrod", 0xb8860bff}
, {"darkgray", 0xa9a9a9ff}
, {"darkgreen", 0x006400ff}
, {"darkkhaki", 0xbdb76bff}
, {"darkmagenta", 0x8b008bff}
, {"darkolivegreen", 0x556b2fff}
, {"darkorange", 0xff8c00ff}
, {"darkorchid", 0x9932ccff}
, {"darkred", 0x8b0000ff}
, {"darksalmon", 0xe9967aff}
, {"darkseagreen", 0x8fbc8fff}
, {"darkslateblue", 0x483d8bff}
, {"darkslategray", 0x2f4f4fff}
, {"darkturquoise", 0x00ced1ff}
, {"darkviolet", 0x9400d3ff}
, {"deeppink", 0xff1493ff}
, {"deepskyblue", 0x00bfffff}
, {"dimgray", 0x696969ff}
, {"dodgerblue", 0x1e90ffff}
, {"feldspar", 0xd19275ff}
, {"firebrick", 0xb22222ff}
, {"floralwhite", 0xfffaf0ff}
, {"forestgreen", 0x228b22ff}
, {"fuchsia", 0xff00ffff}
, {"gainsboro", 0xdcdcdcff}
, {"ghostwhite", 0xf8f8ffff}
, {"gold", 0xffd700ff}
, {"goldenrod", 0xdaa520ff}
, {"gray", 0x808080ff}
, {"green", 0x008000ff}
, {"greenyellow", 0xadff2fff}
, {"honeydew", 0xf0fff0ff}
, {"hotpink", 0xff69b4ff}
, {"indianred ", 0xcd5c5cff}
, {"indigo ", 0x4b0082ff}
, {"ivory", 0xfffff0ff}
, {"khaki", 0xf0e68cff}
, {"lavender", 0xe6e6faff}
, {"lavenderblush", 0xfff0f5ff}
, {"lawngreen", 0x7cfc00ff}
, {"lemonchiffon", 0xfffacdff}
, {"lightblue", 0xadd8e6ff}
, {"lightcoral", 0xf08080ff}
, {"lightcyan", 0xe0ffffff}
, {"lightgoldenrodyellow", 0xfafa}
, {"lightgrey", 0xd3d3d3ff}
, {"lightgreen", 0x90ee90ff}
, {"lightpink", 0xffb6c1ff}
, {"lightsalmon", 0xffa07aff}
, {"lightseagreen", 0x20b2aaff}
, {"lightskyblue", 0x87cefaff}
, {"lightslateblue", 0x8470ffff}
, {"lightslategray", 0x778899ff}
, {"lightsteelblue", 0xb0c4deff}
, {"lightyellow", 0xffffe0ff}
, {"lime", 0x00ff00ff}
, {"limegreen", 0x32cd32ff}
, {"linen", 0xfaf0e6ff}
, {"magenta", 0xff00ffff}
, {"maroon", 0x800000ff}
, {"mediumaquamarine", 0x66cdaaff}
, {"mediumblue", 0x0000cdff}
, {"mediumorchid", 0xba55d3ff}
, {"mediumpurple", 0x9370d8ff}
, {"mediumseagreen", 0x3cb371ff}
, {"mediumslateblue", 0x7b68eeff}
, {"mediumspringgreen", 0x00fa9af}
, {"mediumturquoise", 0x48d1ccff}
, {"mediumvioletred", 0xc71585ff}
, {"midnightblue", 0x191970ff}
, {"mintcream", 0xf5fffaff}
, {"mistyrose", 0xffe4e1ff}
, {"moccasin", 0xffe4b5ff}
, {"navajowhite", 0xffdeadff}
, {"navy", 0x000080ff}
, {"oldlace", 0xfdf5e6ff}
, {"olive", 0x808000ff}
, {"olivedrab", 0x6b8e23ff}
, {"orange", 0xffa500ff}
, {"orangered", 0xff4500ff}
, {"orchid", 0xda70d6ff}
, {"palegoldenrod", 0xeee8aaff}
, {"palegreen", 0x98fb98ff}
, {"paleturquoise", 0xafeeeeff}
, {"palevioletred", 0xd87093ff}
, {"papayawhip", 0xffefd5ff}
, {"peachpuff", 0xffdab9ff}
, {"peru", 0xcd853fff}
, {"pink", 0xffc0cbff}
, {"plum", 0xdda0ddff}
, {"powderblue", 0xb0e0e6ff}
, {"purple", 0x800080ff}
, {"red", 0xff0000ff}
, {"rosybrown", 0xbc8f8fff}
, {"royalblue", 0x4169e1ff}
, {"saddlebrown", 0x8b4513ff}
, {"salmon", 0xfa8072ff}
, {"sandybrown", 0xf4a460ff}
, {"seagreen", 0x2e8b57ff}
, {"seashell", 0xfff5eeff}
, {"sienna", 0xa0522dff}
, {"silver", 0xc0c0c0ff}
, {"skyblue", 0x87ceebff}
, {"slateblue", 0x6a5acdff}
, {"slategray", 0x708090ff}
, {"snow", 0xfffafaff}
, {"springgreen", 0x00ff7fff}
, {"steelblue", 0x4682b4ff}
, {"tan", 0xd2b48cff}
, {"teal", 0x008080ff}
, {"thistle", 0xd8bfd8ff}
, {"tomato", 0xff6347ff}
, {"turquoise", 0x40e0d0ff}
, {"violet", 0xee82eeff}
, {"violetred", 0xd02090ff}
, {"wheat", 0xf5deb3ff}
, {"white", 0xffffffff}
, {"whitesmoke", 0xf5f5f5ff}
, {"yellow", 0xffff00ff}
, {"yellowgreen", 0x9acd32ff}
, {NULL, NULL}
};
/*
@ -222,6 +230,20 @@ h(char c) {
return 0;
}
/*
* Return rgba_t from rgba.
*/
rgba_t
rgba_create(uint32_t rgba) {
rgba_t color;
color.r = rgba >> 24;
color.g = rgba >> 16;
color.b = rgba >> 8;
color.a = rgba;
return color;
}
/*
* Return rgba from (r,g,b,a).
*/

Loading…
Cancel
Save