From 451c8e679177327cda818d94a7b1896f778203c5 Mon Sep 17 00:00:00 2001 From: Gustavo Lima Chaves Date: Mon, 30 Jul 2012 22:36:19 +0000 Subject: [PATCH] [elm] Image now (better) inheritable. SVN revision: 74607 --- legacy/elementary/src/lib/elm_image.c | 31 ++------------------ legacy/elementary/src/lib/elm_widget_image.h | 26 ++++++++++++++++ 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/legacy/elementary/src/lib/elm_image.c b/legacy/elementary/src/lib/elm_image.c index 910baebc2c..c9aae5c942 100644 --- a/legacy/elementary/src/lib/elm_image.c +++ b/legacy/elementary/src/lib/elm_image.c @@ -8,32 +8,7 @@ # define FMT_SIZE_T "%zu" #endif -static const char IMAGE_SMART_NAME[] = "elm_image"; - -#define ELM_IMAGE_DATA_GET(o, sd) \ - Elm_Image_Smart_Data * sd = evas_object_smart_data_get(o) - -#define ELM_IMAGE_DATA_GET_OR_RETURN(o, ptr) \ - ELM_IMAGE_DATA_GET(o, ptr); \ - if (!ptr) \ - { \ - CRITICAL("No widget data for object %p (%s)", \ - o, evas_object_type_get(o)); \ - return; \ - } - -#define ELM_IMAGE_DATA_GET_OR_RETURN_VAL(o, ptr, val) \ - ELM_IMAGE_DATA_GET(o, ptr); \ - if (!ptr) \ - { \ - CRITICAL("No widget data for object %p (%s)", \ - o, evas_object_type_get(o)); \ - return val; \ - } - -#define ELM_IMAGE_CHECK(obj) \ - if (!obj || !elm_widget_type_check((obj), IMAGE_SMART_NAME, __func__)) \ - return +EAPI const char ELM_IMAGE_SMART_NAME[] = "elm_image"; static const char SIG_DND[] = "drop"; static const char SIG_CLICKED[] = "clicked"; @@ -44,7 +19,7 @@ static const Evas_Smart_Cb_Description _smart_callbacks[] = { }; EVAS_SMART_SUBCLASS_NEW - (IMAGE_SMART_NAME, _elm_image, Elm_Image_Smart_Class, + (ELM_IMAGE_SMART_NAME, _elm_image, Elm_Image_Smart_Class, Elm_Widget_Smart_Class, elm_widget_smart_class_get, _smart_callbacks); static void @@ -1061,7 +1036,7 @@ EAPI const Elm_Image_Smart_Class * elm_image_smart_class_get(void) { static Elm_Image_Smart_Class _sc = - ELM_IMAGE_SMART_CLASS_INIT_NAME_VERSION(IMAGE_SMART_NAME); + ELM_IMAGE_SMART_CLASS_INIT_NAME_VERSION(ELM_IMAGE_SMART_NAME); static const Elm_Image_Smart_Class *class = NULL; Evas_Smart_Class *esc = (Evas_Smart_Class *)&_sc; diff --git a/legacy/elementary/src/lib/elm_widget_image.h b/legacy/elementary/src/lib/elm_widget_image.h index 8b2c151b0f..f0f5e3a715 100644 --- a/legacy/elementary/src/lib/elm_widget_image.h +++ b/legacy/elementary/src/lib/elm_widget_image.h @@ -216,6 +216,32 @@ struct _Elm_Image_Smart_Data * @} */ +EAPI extern const char ELM_IMAGE_SMART_NAME[]; EAPI const Elm_Image_Smart_Class *elm_image_smart_class_get(void); +#define ELM_IMAGE_DATA_GET(o, sd) \ + Elm_Image_Smart_Data * sd = evas_object_smart_data_get(o) + +#define ELM_IMAGE_DATA_GET_OR_RETURN(o, ptr) \ + ELM_IMAGE_DATA_GET(o, ptr); \ + if (!ptr) \ + { \ + CRITICAL("No widget data for object %p (%s)", \ + o, evas_object_type_get(o)); \ + return; \ + } + +#define ELM_IMAGE_DATA_GET_OR_RETURN_VAL(o, ptr, val) \ + ELM_IMAGE_DATA_GET(o, ptr); \ + if (!ptr) \ + { \ + CRITICAL("No widget data for object %p (%s)", \ + o, evas_object_type_get(o)); \ + return val; \ + } + +#define ELM_IMAGE_CHECK(obj) \ + if (!obj || !elm_widget_type_check((obj), ELM_IMAGE_SMART_NAME, __func__)) \ + return + #endif