projects
/
ruby-evas.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added Evas#font_hinting=.
[ruby-evas.git]
/
src
/
rb_evas.c
diff --git
a/src/rb_evas.c
b/src/rb_evas.c
index 96d26de1713dbd0196f9e3f73f4e97ab8252f075..b38082f549274d0e9ad22da4b0ac2e92e8510ee8 100644
(file)
--- a/
src/rb_evas.c
+++ b/
src/rb_evas.c
@@
-1,6
+1,4
@@
/*
/*
- * $Id: rb_evas.c 283 2005-03-15 17:59:03Z tilman $
- *
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
* This library is free software; you can redistribute it and/or
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
* This library is free software; you can redistribute it and/or
@@
-34,21
+32,27
@@
static void c_mark (RbEvas *e)
rb_gc_mark (e->parent);
}
rb_gc_mark (e->parent);
}
+static VALUE c_alloc (VALUE klass)
+{
+ RbEvas *evas = NULL;
+
+ return Data_Make_Struct (cEvas, RbEvas, c_mark, free, evas);
+}
+
VALUE TO_EVAS (VALUE parent, Evas *e)
{
VALUE self;
VALUE TO_EVAS (VALUE parent, Evas *e)
{
VALUE self;
- RbEvas *evas = NULL;
if (NIL_P (parent) || !e)
return Qnil;
if (NIL_P (parent) || !e)
return Qnil;
- self = Data_Make_Struct (cEvas, RbEvas,
- c_mark, free, evas);
+ self = rb_class_new_instance (0, NULL, cEvas);
+
+ GET_OBJ (self, RbEvas, evas);
+
evas->real = e;
evas->parent = parent;
evas->real = e;
evas->parent = parent;
- rb_obj_call_init (self, 0, NULL);
-
return self;
}
return self;
}
@@
-92,8
+96,6
@@
static VALUE c_font_path_append (VALUE self, VALUE path)
{
GET_OBJ (self, RbEvas, e);
{
GET_OBJ (self, RbEvas, e);
- Check_Type (path, T_STRING);
-
evas_font_path_append (e->real, StringValuePtr (path));
return Qnil;
evas_font_path_append (e->real, StringValuePtr (path));
return Qnil;
@@
-109,9
+111,7
@@
static VALUE c_font_path_prepend (VALUE self, VALUE path)
{
GET_OBJ (self, RbEvas, e);
{
GET_OBJ (self, RbEvas, e);
- Check_Type (path, T_STRING);
-
- evas_font_path_append (e->real, StringValuePtr (path));
+ evas_font_path_prepend (e->real, StringValuePtr (path));
return Qnil;
}
return Qnil;
}
@@
-292,8
+292,6
@@
static VALUE c_find_object (VALUE self, VALUE name)
GET_OBJ (self, RbEvas, e);
GET_OBJ (self, RbEvas, e);
- Check_Type (name, T_STRING);
-
if (!(o = evas_object_name_find (e->real, StringValuePtr (name))))
return Qnil;
if (!(o = evas_object_name_find (e->real, StringValuePtr (name))))
return Qnil;
@@
-325,10
+323,24
@@
static VALUE c_output_viewport_get (VALUE self)
INT2FIX (h));
}
INT2FIX (h));
}
+static VALUE
+c_font_hinting_set (VALUE self, VALUE val)
+{
+ GET_OBJ (self, RbEvas, e);
+
+ Check_Type (val, T_FIXNUM);
+
+ evas_font_hinting_set (e->real, FIX2INT (val));
+
+ return Qnil;
+}
+
void Init_Evas (void)
{
cEvas = rb_define_class_under (mEvas, "Evas", rb_cObject);
void Init_Evas (void)
{
cEvas = rb_define_class_under (mEvas, "Evas", rb_cObject);
+ rb_define_alloc_func (cEvas, c_alloc);
+
/* not publically instantiable yet */
rb_define_private_method (rb_singleton_class (cEvas),
"new", NULL, 0);
/* not publically instantiable yet */
rb_define_private_method (rb_singleton_class (cEvas),
"new", NULL, 0);
@@
-353,4
+365,9
@@
void Init_Evas (void)
rb_define_method (cEvas, "find_object", c_find_object, 1);
rb_define_method (cEvas, "output_size", c_output_size_get, 0);
rb_define_method (cEvas, "output_viewport", c_output_viewport_get, 0);
rb_define_method (cEvas, "find_object", c_find_object, 1);
rb_define_method (cEvas, "output_size", c_output_size_get, 0);
rb_define_method (cEvas, "output_viewport", c_output_viewport_get, 0);
+ rb_define_method (cEvas, "font_hinting=", c_font_hinting_set, 1);
+
+ DEF_CONST (cEvas, EVAS_FONT_HINTING_, NONE);
+ DEF_CONST (cEvas, EVAS_FONT_HINTING_, AUTO);
+ DEF_CONST (cEvas, EVAS_FONT_HINTING_, BYTECODE);
}
}