|
From: Shigeharu T. <sh...@ie...> - 2008-05-19 12:12:50
|
shige 05/19 2008
----------------
I will send a patch for union initialization. I cannot build
wgnuplot for gnuplot-4.3.0 by VC++ 2003 in my computer, since it
does not seem to support the union initilization by specifing the
member name (in src/gadges.h):
{.rectangle = {0, ...
This error may happen on Visual C++ 2005 Express Edition.
----- From Here -----
diff -uN src/gadgets.c.ORG src/gadgets.c
diff -uN src/gadgets.h.ORG src/gadgets.h
--- src/gadgets.h.ORG Thu May 1 16:04:58 2008
+++ src/gadgets.h Mon May 19 20:43:41 2008
@@ -434,21 +434,50 @@
#ifdef EAM_OBJECTS
/* Warning: C89 does not like the union initializers */
extern struct object default_rectangle;
+/* shige */
+#if 0
#define DEFAULT_RECTANGLE_STYLE { NULL, -1, 0, OBJ_RECTANGLE, \
{FS_SOLID, 100, 0, LT_BLACK}, \
{1, LT_BACKGROUND, 0, 1.0, 0.0}, \
{.rectangle = {0, {0,0.,0.,0.}, {0,0.,0.,0.}, {0,0.,0.,0.}, {0,0.,0.,0.}}} }
+#else
+#define DEFAULT_RECTANGLE_STYLE { NULL, -1, 0, OBJ_RECTANGLE, \
+ {FS_SOLID, 100, 0, LT_BLACK}, \
+ {1, LT_BACKGROUND, 0, 1.0, 0.0}, \
+ {{0, {0,0.,0.,0.}, {0,0.,0.,0.}, {0,0.,0.,0.}, {0,0.,0.,0.}}} }
+#define DEFAULT_RECTANGLE_STYLE_M { NULL, -1, 0, OBJ_RECTANGLE, \
+ {FS_SOLID, 100, 0, LT_BLACK}, \
+ {1, LT_BACKGROUND, 0, 1.0, 0.0}}
+#define DEFAULT_RECTANGLE_STYLE_U {0, {0,0.,0.,0.}, \
+ {0,0.,0.,0.}, {0,0.,0.,0.}, {0,0.,0.,0.}}
+#endif
extern struct object default_circle;
+#if 0
#define DEFAULT_CIRCLE_STYLE { NULL, -1, 0, OBJ_CIRCLE, \
{FS_SOLID, 100, 0, LT_BLACK}, \
{1, LT_BACKGROUND, 0, 1.0, 0.0}, \
{.circle = {1, {0,0.,0.,0.}, {0,0.,0.,0.}, 0., 360. }} }
+#else
+#define DEFAULT_CIRCLE_STYLE_M { NULL, -1, 0, OBJ_CIRCLE, \
+ {FS_SOLID, 100, 0, LT_BLACK}, \
+ {1, LT_BACKGROUND, 0, 1.0, 0.0}}
+#define DEFAULT_CIRCLE_STYLE_U {1, {0,0.,0.,0.}, \
+ {0,0.,0.,0.}, 0., 360. }
+#endif
+#if 0
#define DEFAULT_ELLIPSE_STYLE { NULL, -1, 0, OBJ_CIRCLE, \
{FS_SOLID, 100, 0, LT_BLACK}, \
{1, LT_BACKGROUND, 0, 1.0, 0.0}, \
{.ellipse = {1, {0,0.,0.,0.}, {0,0.,0.,0.}, 0. }} }
+#else
+#define DEFAULT_ELLIPSE_STYLE_M { NULL, -1, 0, OBJ_CIRCLE, \
+ {FS_SOLID, 100, 0, LT_BLACK}, \
+ {1, LT_BACKGROUND, 0, 1.0, 0.0}}
+#define DEFAULT_ELLIPSE_STYLE_U {1, {0,0.,0.,0.}, \
+ {0,0.,0.,0.}, 0. }
+#endif
#endif
diff -uN src/set.c.ORG src/set.c
--- src/set.c.ORG Thu May 1 16:05:01 2008
+++ src/set.c Mon May 19 20:47:27 2008
@@ -3290,9 +3290,23 @@
static t_object *
new_object(int tag, int object_type, t_object *new)
{
+ /* shige */
+#if 0
t_object def_rect = DEFAULT_RECTANGLE_STYLE;
t_object def_ellipse = DEFAULT_ELLIPSE_STYLE;
t_object def_circle = DEFAULT_CIRCLE_STYLE;
+#else
+ t_object def_rect = DEFAULT_RECTANGLE_STYLE_M;
+ t_object def_ellipse = DEFAULT_ELLIPSE_STYLE_M;
+ t_object def_circle = DEFAULT_CIRCLE_STYLE_M;
+ t_rectangle u_def_rect = DEFAULT_RECTANGLE_STYLE_U;
+ t_circle u_def_circle = DEFAULT_CIRCLE_STYLE_U;
+ t_ellipse u_def_ellipse = DEFAULT_ELLIPSE_STYLE_U;
+
+ def_rect.o.rectangle = u_def_rect;
+ def_ellipse.o.ellipse = u_def_ellipse;
+ def_circle.o.circle = u_def_circle;
+#endif
if (!new)
new = gp_alloc(sizeof(struct object), "object");
----- To Here -----
+========================================================+
Shigeharu TAKENO NIigata Institute of Technology
kashiwazaki,Niigata 945-1195 JAPAN
sh...@ie... TEL(&FAX): +81-257-22-8161
+========================================================+
|