Ejemplo n.º 1
0
static unsigned int
start_timeout_func (Camera *camera, unsigned int timeout,
                    CameraTimeoutFunc func, void *data)
{
        TimeoutData *td;

        td = g_new0 (TimeoutData, 1);
        td->camera = camera;
        td->func = func;

        return (gtk_timeout_add_full (timeout * 1000, timeout_func, NULL,
                                      td, timeout_destroy_notify));
}
Ejemplo n.º 2
0
static VALUE
rg_m_timeout_add(VALUE self, VALUE interval)
{
    VALUE func, rb_id;
    callback_info_t *info;
    guint id;

    func = rb_block_proc();
    info = ALLOC(callback_info_t);
    info->callback = func;
    info->key = id__timeout_callbacks__;
    id = gtk_timeout_add_full(NUM2UINT(interval), (GtkFunction)gtk_m_function,
                              NULL, (gpointer)info, g_free);
    info->id = id;
    rb_id = UINT2NUM(id);
    G_RELATIVE2(self, func, id__timeout_callbacks__, rb_id);
    return rb_id;
}