void tableBindingInit() { INIT_TYPE(Table); VALUE klass = rb_define_class("Table", rb_cObject); rb_define_alloc_func(klass, classAllocate<&TableType>); serializableBindingInit<Table>(klass); rb_define_class_method(klass, "_load", TableLoad); _rb_define_method(klass, "initialize", tableInitialize); _rb_define_method(klass, "resize", tableResize); _rb_define_method(klass, "xsize", tableXSize); _rb_define_method(klass, "ysize", tableYSize); _rb_define_method(klass, "zsize", tableZSize); _rb_define_method(klass, "[]", tableGetAt); _rb_define_method(klass, "[]=", tableSetAt); }
void fontBindingInit() { VALUE klass = rb_define_class("Font", rb_cObject); rb_define_alloc_func(klass, classAllocate<&FontType>); Font::initDefaultDynAttribs(); wrapProperty(klass, &Font::getDefaultColor(), "default_color", ColorType); rb_iv_set(klass, "default_name", rb_str_new_cstr(Font::getDefaultName())); if (rgssVer >= 3) wrapProperty(klass, &Font::getDefaultOutColor(), "default_out_color", ColorType); INIT_KLASS_PROP_BIND(Font, DefaultName, "default_name"); INIT_KLASS_PROP_BIND(Font, DefaultSize, "default_size"); INIT_KLASS_PROP_BIND(Font, DefaultBold, "default_bold"); INIT_KLASS_PROP_BIND(Font, DefaultItalic, "default_italic"); INIT_KLASS_PROP_BIND(Font, DefaultColor, "default_color"); if (rgssVer >= 2) { INIT_KLASS_PROP_BIND(Font, DefaultShadow, "default_shadow"); } if (rgssVer >= 3) { INIT_KLASS_PROP_BIND(Font, DefaultOutline, "default_outline"); INIT_KLASS_PROP_BIND(Font, DefaultOutColor, "default_out_color"); } rb_define_class_method(klass, "exist?", fontDoesExist); _rb_define_method(klass, "initialize", fontInitialize); _rb_define_method(klass, "initialize_copy", fontInitializeCopy); INIT_PROP_BIND(Font, Name, "name"); INIT_PROP_BIND(Font, Size, "size"); INIT_PROP_BIND(Font, Bold, "bold"); INIT_PROP_BIND(Font, Italic, "italic"); INIT_PROP_BIND(Font, Color, "color"); if (rgssVer >= 2) { INIT_PROP_BIND(Font, Shadow, "shadow"); } if (rgssVer >= 3) { INIT_PROP_BIND(Font, Outline, "outline"); INIT_PROP_BIND(Font, OutColor, "out_color"); } if (rgssVer >= 2) { VALUE defNames = rb_ary_new2(3); rb_ary_push(defNames, rb_str_new2("Verdana")); rb_ary_push(defNames, rb_str_new2("Arial")); rb_ary_push(defNames, rb_str_new2("Courier New")); FontSetDefaultName(1, &defNames, klass); } }