/* TODO: make it more generic, with maybe some part in Ruby */
static VALUE
rb_goo_canvas_style_set_fill_pattern(VALUE self, VALUE value)
{
    GValue gval = {0,};
    cairo_pattern_t *pattern;

    g_value_init(&gval, GOO_TYPE_CAIRO_PATTERN);
    pattern = RVAL2CRPATTERN(value);
    g_value_take_boxed(&gval, pattern);
    goo_canvas_style_set_property(RVAL2GCS(self),
                                  goo_canvas_style_fill_pattern_id,
                                  &gval);
    g_value_unset(&gval);

    G_CHILD_SET(self, rb_intern("fill_pattern"), value);
    return self;
}
Exemple #2
0
static VALUE
rg_set_style(VALUE self, VALUE style)
{
    goo_canvas_item_set_style(SELF(self), RVAL2GCS(style));
    return self;
}