sfml3.rb

Class: SFML::RenderWindow

Inherits:
Get_Klass_Window()
  • Object
show all
Defined in:
ext/graphics/render_window.c,
ext/graphics/render_window.c

Overview

A SFML::Window that is also a SFML::RenderTarget, so it can be handed directly to a drawable's #draw as well as drawn into with #draw. Creation, events and every window method come from Window (and WindowBase); the render-target surface is listed on SFML::RenderTarget.

Instance Method Summary collapse

Instance Method Details

#draw(drawable, state = nil) ⇒ self

Draws drawable into the window. Unlike Window#draw this hands self to the drawable, because a RenderWindow is a RenderTarget.

Returns:

  • (self)

Returns:

  • (self)

Raises:

  • (ArgumentError) —

    if given no arguments or more than 2



23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'ext/graphics/render_window.c', line 23

static VALUE RenderWindow_draw(int argc, VALUE* argv, VALUE self) {
    VALUE rb_drawable, rb_state;

    if (argc == 0 || argc > 2) {
        raise_invalid_arguments_excepted(-1, argc);
    }

    rb_drawable = argv[0];
    rb_state = (argc == 2) ? argv[1] : Get_New_RenderState();

    rb_funcall(rb_drawable, rb_intern("draw"), 2, self, rb_state);

    return self;
}