- if (values_mask & GDK_GC_STIPPLE)
- {
- if (data->stipple != NULL)
- gdk_drawable_unref (data->stipple);
- data->stipple = values->stipple;
- if (data->stipple != NULL)
- {
- GDK_NOTE (MISC, g_print ("stipple = %#x ",
- GDK_DRAWABLE_XID (values->stipple)));
- gdk_drawable_ref (data->stipple);
- data->values_mask |= GDK_GC_STIPPLE;
- }
- else
- {
- GDK_NOTE (MISC, g_print ("stipple = NULL "));
- data->values_mask &= ~GDK_GC_STIPPLE;
- }
- }
-
- if (values_mask & GDK_GC_CLIP_MASK)
- {
- if (data->clip_region != NULL)
- if (!DeleteObject (data->clip_region))
- g_warning ("gdk_win32_gc_set_values: DeleteObject failed");
- if (values->clip_mask != NULL)
- {
- data->clip_region =
- BitmapToRegion (GDK_DRAWABLE_XID (values->clip_mask));
- data->values_mask |= GDK_GC_CLIP_MASK;
- GDK_NOTE (MISC, g_print (" clip=%#x", data->clip_region));
- }
- else
- {
- data->clip_region = NULL;
- data->values_mask &= ~GDK_GC_CLIP_MASK;
- GDK_NOTE (MISC, g_print (" clip=NULL"));
- }
- }
-
- if (values_mask & GDK_GC_SUBWINDOW)
- {
- data->values_mask |= GDK_GC_SUBWINDOW;
- }
-
- if (values_mask & GDK_GC_TS_X_ORIGIN)
- {
- data->ts_x_origin = values->ts_x_origin;
- data->values_mask |= GDK_GC_TS_X_ORIGIN;
- GDK_NOTE (MISC, g_print (" ts_x=%d", data->ts_x_origin));
- }
-
- if (values_mask & GDK_GC_TS_Y_ORIGIN)
- {
- data->ts_y_origin = values->ts_y_origin;
- data->values_mask |= GDK_GC_TS_Y_ORIGIN;
- GDK_NOTE (MISC, g_print (" ts_y=%d", data->ts_y_origin));
- }
-
- if (values_mask & GDK_GC_CLIP_X_ORIGIN)
- {
- data->clip_x_origin = values->clip_x_origin;
- data->values_mask |= GDK_GC_CLIP_X_ORIGIN;
- GDK_NOTE (MISC, g_print (" clip_x=%d", data->clip_x_origin));
- }
-
- if (values_mask & GDK_GC_CLIP_Y_ORIGIN)
- {
- data->clip_y_origin = values->clip_y_origin;
- data->values_mask |= GDK_GC_CLIP_Y_ORIGIN;
- GDK_NOTE (MISC, g_print (" clip_y=%d", data->clip_y_origin));
- }
-
- if (values_mask & GDK_GC_EXPOSURES)
- {
- data->values_mask |= GDK_GC_EXPOSURES;
- }
-
- if (values_mask & GDK_GC_LINE_WIDTH)
- {
- data->pen_width = values->line_width;
- data->values_mask |= GDK_GC_LINE_WIDTH;
- GDK_NOTE (MISC, g_print (" pen_width=%d", data->pen_width));
- }
-
- if (values_mask & GDK_GC_LINE_STYLE)
- {
- data->pen_style &= ~(PS_STYLE_MASK);
- switch (values->line_style)
- {
- case GDK_LINE_SOLID:
- data->pen_style |= PS_SOLID; break;
- case GDK_LINE_ON_OFF_DASH:
- case GDK_LINE_DOUBLE_DASH: /* ??? */
- data->pen_style |= PS_DASH; break;
- }
- data->values_mask |= GDK_GC_LINE_STYLE;
- GDK_NOTE (MISC, g_print (" line_style=%#x",
- (data->pen_style & PS_STYLE_MASK)));
- }
-
- if (values_mask & GDK_GC_CAP_STYLE)
- {
- data->pen_style &= ~(PS_ENDCAP_MASK);
- switch (values->cap_style)
- {
- case GDK_CAP_NOT_LAST:
- /* ??? */
- break;
- case GDK_CAP_BUTT:
- data->pen_style |= PS_ENDCAP_FLAT; break;
- case GDK_CAP_ROUND:
- data->pen_style |= PS_ENDCAP_ROUND; break;
- case GDK_CAP_PROJECTING:
- data->pen_style |= PS_ENDCAP_SQUARE; break;
- }
- data->values_mask |= GDK_GC_CAP_STYLE;
- GDK_NOTE (MISC, g_print (" cap_style=%#x",
- (data->pen_style & PS_ENDCAP_MASK)));
- }
-
- if (values_mask & GDK_GC_JOIN_STYLE)
- {
- data->pen_style &= ~(PS_JOIN_MASK);
-
- switch (values->join_style)
- {
- case GDK_JOIN_MITER:
- data->pen_style |= PS_JOIN_MITER; break;
- case GDK_JOIN_ROUND:
- data->pen_style |= PS_JOIN_ROUND; break;
- case GDK_JOIN_BEVEL:
- data->pen_style |= PS_JOIN_BEVEL; break;
- }
- data->values_mask |= GDK_GC_JOIN_STYLE;
- GDK_NOTE (MISC, g_print (" join_style=%#x",
- (data->pen_style & PS_JOIN_MASK)));
- }
- GDK_NOTE (MISC, g_print ("}\n"));