Esempio n. 1
0
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);

}
Esempio n. 2
0
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);
	}
}