Class: Cairo::GLSurface
Instance Method Summary
collapse
Methods inherited from Surface
#clone, #content, #copy_page, #create_similar, #create_similar_image, #destroy, #device, #device_offset, #device_scale, #dup, #fallback_resolution, #finish, #flush, #font_options, #get_mime_data, gl_supported?, gl_texture_supported?, image_supported?, #map_to_image, #mark_dirty, pdf_supported?, ps_supported?, quartz_image_supported?, quartz_supported?, recording_supported?, script_supported?, #set_device_offset, #set_device_scale, #set_fallback_resolution, #set_mime_data, #show_page, #sub_rectangle_surface, supported?, #supported_mime_type?, svg_supported?, tee_supported?, #unmap_image, win32_printing_supported?, win32_supported?, #write_to_png, xml_supported?
Constructor Details
#initialize ⇒ Object
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
|
# File 'ext/cairo/rb_cairo_surface.c', line 1659
static VALUE
cr_gl_surface_initialize (int argc, VALUE *argv, VALUE self)
{
cairo_surface_t *surface;
cairo_device_t *device;
int width, height;
cairo_content_t content = CAIRO_CONTENT_COLOR_ALPHA;
VALUE rb_device, rb_width, rb_height, rb_content;
rb_scan_args (argc, argv, "31",
&rb_device, &rb_width, &rb_height, &rb_content);
device = RVAL2CRDEVICE (rb_device);
width = NUM2INT (rb_width);
height = NUM2INT (rb_height);
switch (TYPE (rb_content))
{
case T_NIL:
break;
case T_STRING:
case T_SYMBOL:
case T_FIXNUM:
content = RVAL2CRCONTENT (rb_content);
break;
default:
rb_raise (rb_eArgError,
"invalid argument (expect "
"(device, width, height) or "
"(device, width, height, content)): %s",
rb_cairo__inspect (rb_ary_new4 (argc, argv)));
break;
}
surface = cairo_gl_surface_create (device, content, width, height);
cr_surface_check_status (surface);
DATA_PTR (self) = surface;
if (rb_block_given_p ())
yield_and_finish (self);
return Qnil;
}
|
Instance Method Details
#height ⇒ Object
1765
1766
1767
1768
1769
|
# File 'ext/cairo/rb_cairo_surface.c', line 1765
static VALUE
cr_gl_surface_get_height (VALUE self)
{
return INT2NUM (cairo_gl_surface_get_height (_SELF));
}
|
#set_size ⇒ Object
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
|
# File 'ext/cairo/rb_cairo_surface.c', line 1748
static VALUE
cr_gl_surface_set_size (VALUE self, VALUE width, VALUE height)
{
cairo_surface_t *surface = NULL;
surface = _SELF;
cairo_gl_surface_set_size (surface, NUM2INT (width), NUM2INT (height));
cr_surface_check_status (surface);
return Qnil;
}
|
#swap_buffers ⇒ Object
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
|
# File 'ext/cairo/rb_cairo_surface.c', line 1771
static VALUE
cr_gl_surface_swap_buffers (VALUE self)
{
cairo_surface_t *surface = NULL;
surface = _SELF;
cairo_gl_surface_swapbuffers (surface);
cr_surface_check_status (surface);
return Qnil;
}
|
#width ⇒ Object
1759
1760
1761
1762
1763
|
# File 'ext/cairo/rb_cairo_surface.c', line 1759
static VALUE
cr_gl_surface_get_width (VALUE self)
{
return INT2NUM (cairo_gl_surface_get_width (_SELF));
}
|