Sha256: 10f76cceac832751a3518f231d6ae52bfd145db1aa28dd822163ee3e9dc83e16

Contents?: true

Size: 1.21 KB

Versions: 9

Compression:

Stored size: 1.21 KB

Contents

#include "reflex/ruby/event.h"


#include "rays/ruby/point.h"
#include "defs.h"


RUCY_DEFINE_VALUE_FROM_TO(Reflex::MotionEvent)

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

#define CHECK RUCY_CHECK_OBJ(Reflex::MotionEvent, self)


static
VALUE alloc(VALUE klass)
{
	return new_type<Reflex::MotionEvent>(klass);
}

static
VALUE initialize(VALUE self, VALUE gravity)
{
	CHECK;

	THIS->gravity = to<Rays::Point>(gravity);

	return rb_call_super(0, NULL);
}

static
VALUE initialize_copy(VALUE self, VALUE obj)
{
	CHECK;
	*THIS = to<Reflex::MotionEvent&>(obj);
	return self;
}

static
VALUE gravity(VALUE self)
{
	CHECK;
	return value(THIS->gravity);
}


static Class cMotionEvent;

void
Init_reflex_motion_event ()
{
	Module mReflex = rb_define_module("Reflex");

	cMotionEvent = mReflex.define_class("MotionEvent", Reflex::event_class());
	rb_define_alloc_func(cMotionEvent, alloc);
	rb_define_private_method(cMotionEvent, "initialize", RUBY_METHOD_FUNC(initialize), 1);
	rb_define_private_method(cMotionEvent, "initialize_copy", RUBY_METHOD_FUNC(initialize_copy), 1);
	rb_define_method(cMotionEvent, "gravity", RUBY_METHOD_FUNC(gravity), 0);
}


namespace Reflex
{


	Class
	motion_event_class ()
	{
		return cMotionEvent;
	}


}// Reflex

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
reflexion-0.1.38 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.37 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.36 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.35 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.34 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.33 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.32 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.31 .doc/ext/reflex/motion_event.cpp
reflexion-0.1.30 .doc/ext/reflex/motion_event.cpp