X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=src%2Fecore%2Frb_ecore.c;h=06fa0bb929cf3698263db17ca97a3957737d13c4;hb=4f2835571a13e31777b36def3056547b997e0599;hp=342d0230f997d50efc972625140f5c445fe6feef;hpb=9e5cf3d5264809329877985ffa3b19b6e28b956e;p=ruby-ecore.git diff --git a/src/ecore/rb_ecore.c b/src/ecore/rb_ecore.c index 342d023..06fa0bb 100644 --- a/src/ecore/rb_ecore.c +++ b/src/ecore/rb_ecore.c @@ -1,5 +1,5 @@ /* - * $Id: rb_ecore.c 147 2004-11-27 15:42:34Z tilman $ + * $Id: rb_ecore.c 365 2006-02-14 21:50:47Z tilman $ * * Copyright (C) 2004 ruby-ecore team (see AUTHORS) * @@ -27,6 +27,7 @@ #include "rb_timer.h" #include "rb_animator.h" #include "rb_idler.h" +#include "rb_idle_enterer.h" #include "rb_event_handler.h" #include "rb_fd_handler.h" @@ -76,6 +77,7 @@ static VALUE m_time_get (VALUE self) return rb_float_new (ecore_time_get ()); } +#if 0 static VALUE c_ev_exe_exit_init (VALUE self, VALUE event) { VALUE c = CLASS_OF (self); @@ -95,6 +97,7 @@ static VALUE c_ev_exe_exit_init (VALUE self, VALUE event) return self; } +#endif static VALUE c_ev_sig_user_init (VALUE self, VALUE event) { @@ -134,10 +137,19 @@ static VALUE c_ev_sig_rt_init (VALUE self, VALUE event) return self; } +static void at_exit () +{ + ecore_shutdown (); +} + void Init_ecore (void) { VALUE c; + ecore_init (); + + atexit (at_exit); + mEcore = rb_define_module ("Ecore"); rb_define_module_function (mEcore, "main_loop_begin", @@ -151,35 +163,36 @@ void Init_ecore (void) Init_Timer (); Init_Animator (); Init_Idler (); + Init_IdleEnterer (); Init_EventHandler (); Init_FdHandler (); /* SIGNAL_HUP */ - ADD_EVENT (mEcore, ECORE_EVENT_, SIGNAL_HUP, + ADD_EVENT (mEcore, ECORE_EVENT_SIGNAL_HUP, "SignalHup", c); - rb_define_private_method (c, "initialize", c_ev_generic_init, 1); /* SIGNAL_POWER */ - ADD_EVENT (mEcore, ECORE_EVENT_, SIGNAL_POWER, + ADD_EVENT (mEcore, ECORE_EVENT_SIGNAL_POWER, "SignalPower", c); - rb_define_private_method (c, "initialize", c_ev_generic_init, 1); +#if 0 /* EXE_EXIT */ - ADD_EVENT (mEcore, ECORE_EVENT_, EXE_EXIT, "ExeExit", c); + ADD_EVENT (mEcore, ECORE_EVENT_EXE_EXIT, "ExeExit", c); rb_define_private_method (c, "initialize", c_ev_exe_exit_init, 1); +#endif /* SIGNAL_USER */ - ADD_EVENT (mEcore, ECORE_EVENT_, SIGNAL_USER, + ADD_EVENT (mEcore, ECORE_EVENT_SIGNAL_USER, "SignalUser", c); rb_define_private_method (c, "initialize", c_ev_sig_user_init, 1); /* SIGNAL_EXIT */ - ADD_EVENT (mEcore, ECORE_EVENT_, SIGNAL_EXIT, + ADD_EVENT (mEcore, ECORE_EVENT_SIGNAL_EXIT, "SignalExit", c); rb_define_private_method (c, "initialize", c_ev_sig_exit_init, 1); /* SIGNAL_REALTIME */ - ADD_EVENT (mEcore, ECORE_EVENT_, SIGNAL_REALTIME, + ADD_EVENT (mEcore, ECORE_EVENT_SIGNAL_REALTIME, "SignalRealtime", c); rb_define_private_method (c, "initialize", c_ev_sig_rt_init, 1); }