Resolve cWindow reference on init.
authorTilman Sauerbeck <tilman@code-monkey.de>
Sat, 11 Nov 2006 12:10:09 +0000 (12:10 +0000)
committerTilman Sauerbeck <tilman@code-monkey.de>
Sat, 11 Nov 2006 12:10:09 +0000 (12:10 +0000)
src/esmart_trans_x11/rb_esmart_trans_x11.c

index a06f168b4d7e66b4e6260effc5e7375327b50439..fa8a9da48e71d8f3c589cad314dc8979464b7536 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * $Id: rb_esmart_trans_x11.c 356 2006-02-10 18:27:31Z tilman $
+ * $Id: rb_esmart_trans_x11.c 390 2006-11-11 12:10:09Z tilman $
  *
  * Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
  *
  *
  * Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
  *
@@ -27,6 +27,8 @@
 
 #include "../rb_esmart.h"
 
 
 #include "../rb_esmart.h"
 
+static VALUE cWindow;
+
 static VALUE c_init (VALUE self, VALUE evas)
 {
        CHECK_CLASS (evas, cEvas);
 static VALUE c_init (VALUE self, VALUE evas)
 {
        CHECK_CLASS (evas, cEvas);
@@ -87,11 +89,15 @@ static VALUE c_freshen (VALUE self, VALUE x, VALUE y, VALUE w, VALUE h)
 
 void Init_esmart_trans_x11 (void)
 {
 
 void Init_esmart_trans_x11 (void)
 {
-       VALUE c;
+       VALUE m, c;
 
        rb_require ("esmart");
        rb_require ("ecore_x");
 
 
        rb_require ("esmart");
        rb_require ("ecore_x");
 
+       m = rb_const_get (rb_cModule, rb_intern ("Ecore"));
+       m = rb_const_get (m, rb_intern ("X"));
+       cWindow = rb_const_get (m, rb_intern ("Window"));
+
        c = rb_define_class_under (mEsmart, "TransX11", cEvasObject);
 
        rb_define_method (c, "initialize", c_init, 1);
        c = rb_define_class_under (mEsmart, "TransX11", cEvasObject);
 
        rb_define_method (c, "initialize", c_init, 1);