/*
- * $Id: rb_smart.c 380 2006-05-21 14:54:58Z tilman $
- *
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
* This library is free software; you can redistribute it and/or
static ID id; \
\
if (!id) \
- id = rb_intern ("on_"#name); \
+ id = rb_intern ("smart_"#name); \
\
if (!rb_respond_to (self, id)) \
return;
#define SMART_CB(name) \
- static void on_##name (Evas_Object *o) \
+ static void smart_##name (Evas_Object *o) \
{ \
SMART_CB_BODY (name); \
rb_funcall (self, id, 0); \
}
#define SMART_CB_OBJ(name) \
- static void on_##name (Evas_Object *o, Evas_Object *other) \
+ static void smart_##name (Evas_Object *o, Evas_Object *other) \
{ \
SMART_CB_BODY (name); \
rb_funcall (self, id, 1, TO_EVAS_OBJECT (other)); \
}
#define SMART_CB_COORD(name) \
- static void on_##name (Evas_Object *o, Evas_Coord a, Evas_Coord b) \
+ static void smart_##name (Evas_Object *o, Evas_Coord a, Evas_Coord b) \
{ \
SMART_CB_BODY (name); \
rb_funcall (self, id, 2, INT2FIX ((int) a), INT2FIX ((int) b)); \
static ID id_smart_object;
SMART_CB (delete);
-SMART_CB (raise);
-SMART_CB (lower);
SMART_CB (show);
SMART_CB (hide);
SMART_CB (clip_unset);
-SMART_CB_OBJ (stack_above);
-SMART_CB_OBJ (stack_below);
SMART_CB_OBJ (clip_set);
SMART_CB_COORD (move);
SMART_CB_COORD (resize);
-static void on_layer_set (Evas_Object *o, int layer)
-{
- SMART_CB_BODY (layer_set);
-
- rb_funcall (self, id, 1, FIX2INT (layer));
-}
-
-static void on_color_set (Evas_Object *o, int r, int g, int b, int a)
+static void smart_color_set (Evas_Object *o, int r, int g, int b, int a)
{
SMART_CB_BODY (color_set);
smart = Data_Make_Struct (rb_cObject, Evas_Smart *, NULL, NULL, s);
*s = evas_smart_new (StringValuePtr (name),
- NULL, on_delete, on_layer_set,
- on_raise, on_lower, on_stack_above,
- on_stack_below, on_move, on_resize,
- on_show, on_hide, on_color_set,
- on_clip_set, on_clip_unset, NULL);
+ NULL, smart_delete, NULL,
+ NULL, NULL, NULL, NULL,
+ smart_move, smart_resize,
+ smart_show, smart_hide,
+ smart_color_set,
+ smart_clip_set, smart_clip_unset,
+ NULL);
rb_mod_remove_const(klass, ID2SYM (id_smart_object));
rb_const_set (klass, id_smart_object, smart);