Sha256: 612d443141044c29416e46dd4c8796bf4b87e36b765cb971ea7e233db31b3cd3
Contents?: true
Size: 1.8 KB
Versions: 5
Compression:
Stored size: 1.8 KB
Contents
#include "reflex/ruby/event.h" #include <rucy.h> #include "reflex/ruby/view.h" #include "defs.h" using namespace Rucy; RUCY_DEFINE_VALUE_FROM_TO(Reflex::ContactEvent) #define THIS to<Reflex::ContactEvent*>(self) #define CHECK RUCY_CHECK_OBJ(Reflex::ContactEvent, self) static VALUE alloc(VALUE klass) { return new_type<Reflex::ContactEvent>(klass); } static VALUE initialize(VALUE self) { CHECK; check_arg_count(__FILE__, __LINE__, "ContactEvent#initialize", argc, 0, 2); THIS->type = (argc >= 1) ? (Reflex::ContactEvent::Type) to<int>(argv[0]) : Reflex::ContactEvent::NONE; THIS->view = (argc >= 2) ? to<Reflex::View*>(argv[1]) : NULL; return rb_call_super(0, NULL); } static VALUE initialize_copy(VALUE self, VALUE obj) { CHECK; *THIS = to<Reflex::ContactEvent&>(obj); return self; } static VALUE get_type(VALUE self) { CHECK; return value(THIS->type); } static VALUE get_view(VALUE self) { CHECK; return value(THIS->view); } static Class cContactEvent; void Init_contact_event () { Module mReflex = rb_define_module("Reflex"); cContactEvent = mReflex.define_class("ContactEvent", Reflex::event_class()); rb_define_alloc_func(cContactEvent, alloc); rb_define_private_method(cContactEvent, "initialize", RUBY_METHOD_FUNC(initialize), -1); rb_define_private_method(cContactEvent, "initialize_copy", RUBY_METHOD_FUNC(initialize_copy), 1); rb_define_method(cContactEvent, "get_type", RUBY_METHOD_FUNC(get_type), 0); rb_define_method(cContactEvent, "view", RUBY_METHOD_FUNC(get_view), 0); cContactEvent.define_const("TYPE_NONE", Reflex::ContactEvent::NONE); cContactEvent.define_const("TYPE_BEGIN", Reflex::ContactEvent::BEGIN); cContactEvent.define_const("TYPE_END", Reflex::ContactEvent::END); } namespace Reflex { Class contact_event_class () { return cContactEvent; } }// Reflex
Version data entries
5 entries across 5 versions & 1 rubygems