Sha256: 39be2c1680effed230fe35d7707fb0a13334d97884f223fcdf1b5de3e26cb783

Contents?: true

Size: 1.14 KB

Versions: 5

Compression:

Stored size: 1.14 KB

Contents

#include "reflex/ruby/image_view.h"


#include <rays/ruby/point.h>
#include "reflex/ruby/view.h"
#include "defs.h"


RUCY_DEFINE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ImageView)

#define THIS      to<Reflex::ImageView*>(self)

#define CHECK     RUCY_CHECK_OBJECT(Reflex::ImageView, self)

#define CALL(fun) RUCY_WRAPPER_CALL(Reflex::ImageView, THIS, fun)


static
RUCY_DEF_ALLOC(alloc, klass)
{
	return value(new Reflex::RubyView<Reflex::ImageView>, klass);
}
RUCY_END

static
RUCY_DEF0(get_image)
{
	CHECK;
	Rays::Image image = THIS->get_image();
	return image ? value(image) : nil();
}
RUCY_END

static
RUCY_DEF1(set_image, image)
{
	CHECK;
	THIS->set_image(image ? to<Rays::Image&>(image) : Rays::Image());
	return image;
}
RUCY_END


static Class cImageView;

void
Init_reflex_image_view ()
{
	Module mReflex = define_module("Reflex");

	cImageView = mReflex.define_class("ImageView", Reflex::view_class());
	cImageView.define_alloc_func(alloc);
	cImageView.define_private_method("set_image", set_image);
	cImageView.define_method(            "image", get_image);
}


namespace Reflex
{


	Class
	image_view_class ()
	{
		return cImageView;
	}


}// Reflex

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
reflexion-0.3.4 ext/reflex/image_view.cpp
reflexion-0.3.3 ext/reflex/image_view.cpp
reflexion-0.3.2 ext/reflex/image_view.cpp
reflexion-0.3.1 ext/reflex/image_view.cpp
reflexion-0.3 ext/reflex/image_view.cpp