X-Git-Url: http://git.code-monkey.de/?p=ruby-edje.git;a=blobdiff_plain;f=src%2Frb_edje_main.c;h=b8699bad24bcddadc83cd9434ca7a0c2b3810a2c;hp=9c075de74727125961e28f6945efe61e8d342454;hb=de08e354b9785a7416c6ee1ab770fd9fff1ea3bb;hpb=887790d08e623c56ce01230fb2889b2555f21ed2 diff --git a/src/rb_edje_main.c b/src/rb_edje_main.c index 9c075de..b8699ba 100644 --- a/src/rb_edje_main.c +++ b/src/rb_edje_main.c @@ -1,5 +1,5 @@ /* - * $Id: rb_edje_main.c 139 2004-10-30 09:41:17Z tilman $ + * $Id: rb_edje_main.c 345 2005-05-08 17:03:21Z tilman $ * * Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de) * @@ -25,7 +25,6 @@ #include "rb_edje_main.h" #include "rb_edje.h" #include "rb_part.h" -#include "rb_messages.h" /* * call-seq: @@ -35,7 +34,9 @@ */ static VALUE m_freeze (VALUE self) { + edje_init (); edje_freeze (); + edje_shutdown (); return Qnil; } @@ -48,7 +49,9 @@ static VALUE m_freeze (VALUE self) */ static VALUE m_thaw (VALUE self) { + edje_init (); edje_thaw (); + edje_shutdown (); return Qnil; } @@ -61,7 +64,13 @@ static VALUE m_thaw (VALUE self) */ static VALUE m_frametime_get (VALUE self) { - return rb_float_new (edje_frametime_get ()); + VALUE ret; + + edje_init (); + ret = rb_float_new (edje_frametime_get ()); + edje_shutdown (); + + return ret; } /* @@ -74,11 +83,37 @@ static VALUE m_frametime_set (VALUE self, VALUE val) { Check_Type (val, T_FLOAT); + edje_init (); edje_frametime_set (NUM2DBL (val)); + edje_shutdown (); return Qnil; } +static VALUE m_collections_get (VALUE self, VALUE file) +{ + VALUE ary; + Evas_List *list, *l; + + Check_Type (file, T_STRING); + + ary = rb_ary_new (); + + edje_init (); + + list = edje_file_collection_list (StringValuePtr (file)); + if (list) { + for (l = list; l; l = l->next) + rb_ary_push (ary, rb_str_new2 (l->data)); + + edje_file_collection_list_free (list); + } + + edje_shutdown (); + + return ary; +} + void Init_edje (void) { rb_require ("evas"); @@ -89,9 +124,9 @@ void Init_edje (void) rb_define_module_function (mEdje, "thaw", m_thaw, 0); rb_define_module_function (mEdje, "frametime", m_frametime_get, 0); rb_define_module_function (mEdje, "frametime=", m_frametime_set, 1); + rb_define_module_function (mEdje, "collections", m_collections_get, 1); Init_Edje (); Init_Part (); - Init_Messages (); }