From 3147acf03b42d3e4bf799a472d96762c514be114 Mon Sep 17 00:00:00 2001 From: Tiago Rezende Campos Falcao Date: Tue, 6 Apr 2010 14:01:08 +0000 Subject: [PATCH] Some fixes in external Photocam. By Fidencio MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Author: Fabiano Fidêncio SVN revision: 47785 --- src/edje_externals/elm_genlist.c | 4 ++-- src/edje_externals/elm_photocam.c | 35 +++++++++++++++++++++++++++-------- src/lib/Elementary.h.in | 5 +++-- 3 files changed, 32 insertions(+), 12 deletions(-) diff --git a/src/edje_externals/elm_genlist.c b/src/edje_externals/elm_genlist.c index abaade3..3c9b710 100644 --- a/src/edje_externals/elm_genlist.c +++ b/src/edje_externals/elm_genlist.c @@ -133,7 +133,7 @@ external_genlist_param_set(void *data __UNUSED__, Evas_Object *obj, const Edje_E return EINA_TRUE; } } - else if (!strcmp(param->name, "policy horizontal")) + else if (!strcmp(param->name, "scroll horizontal")) { if (param->type == EDJE_EXTERNAL_PARAM_TYPE_STRING) { @@ -146,7 +146,7 @@ external_genlist_param_set(void *data __UNUSED__, Evas_Object *obj, const Edje_E return EINA_TRUE; } } - else if (!strcmp(param->name, "policy vertical")) + else if (!strcmp(param->name, "scroll vertical")) { if (param->type == EDJE_EXTERNAL_PARAM_TYPE_STRING) { diff --git a/src/edje_externals/elm_photocam.c b/src/edje_externals/elm_photocam.c index 1d6f0bd..97236f0 100644 --- a/src/edje_externals/elm_photocam.c +++ b/src/edje_externals/elm_photocam.c @@ -1,3 +1,5 @@ +#include + #include "private.h" typedef struct _Elm_Params_Photocam @@ -17,12 +19,14 @@ _zoom_mode_setting_get(const char *zoom_mode_str) { unsigned int i; + assert(sizeof(choices)/sizeof(choices[0]) == ELM_PHOTOCAM_ZOOM_MODE_LAST); + for (i = 0; i < sizeof(choices); i++) { if (!strcmp(zoom_mode_str, choices[i])) return i; } - return 0; + return ELM_PHOTOCAM_ZOOM_MODE_LAST; } static void @@ -41,6 +45,7 @@ external_photocam_state_set(void *data __UNUSED__, Evas_Object *obj, const void if (p->zoom_mode) { Elm_Photocam_Zoom_Mode set = _zoom_mode_setting_get(p->zoom_mode); + if (set == ELM_PHOTOCAM_ZOOM_MODE_LAST) return; elm_photocam_zoom_mode_set(obj, set); } if (p->paused_exists) @@ -71,6 +76,7 @@ external_photocam_param_set(void *data __UNUSED__, Evas_Object *obj, const Edje_ if (param->type == EDJE_EXTERNAL_PARAM_TYPE_STRING) { Elm_Photocam_Zoom_Mode set = _zoom_mode_setting_get(param->s); + if (set == ELM_PHOTOCAM_ZOOM_MODE_LAST) return EINA_FALSE; elm_photocam_zoom_mode_set(obj, set); return EINA_TRUE; } @@ -103,19 +109,32 @@ external_photocam_param_get(void *data __UNUSED__, const Evas_Object *obj, Edje_ } else if (!strcmp(param->name, "zoom")) { - param->d = elm_photocam_zoom_get(obj); - return EINA_TRUE; + if (param->type == EDJE_EXTERNAL_PARAM_TYPE_DOUBLE) + { + param->d = elm_photocam_zoom_get(obj); + return EINA_TRUE; + } } else if (!strcmp(param->name, "zoom mode")) { - Elm_Photocam_Zoom_Mode zoom_mode_set = elm_photocam_zoom_mode_get(obj); - param->s = choices[zoom_mode_set]; - return EINA_TRUE; + if (param->type == EDJE_EXTERNAL_PARAM_TYPE_STRING) + { + Elm_Photocam_Zoom_Mode zoom_mode_set = elm_photocam_zoom_mode_get(obj); + + if (zoom_mode_set == ELM_PHOTOCAM_ZOOM_MODE_LAST) + return EINA_FALSE; + + param->s = choices[zoom_mode_set]; + return EINA_TRUE; + } } else if(!strcmp(param->name, "paused")) { - param->i = elm_photocam_paused_get(obj); - return EINA_TRUE; + if (param->type == EDJE_EXTERNAL_PARAM_TYPE_BOOL) + { + param->i = elm_photocam_paused_get(obj); + return EINA_TRUE; + } } ERR("unknown parameter '%s' of type '%s'", diff --git a/src/lib/Elementary.h.in b/src/lib/Elementary.h.in index b156a84..f3416b8 100644 --- a/src/lib/Elementary.h.in +++ b/src/lib/Elementary.h.in @@ -1141,9 +1141,10 @@ extern "C" { typedef enum _Elm_Photocam_Zoom_Mode { - ELM_PHOTOCAM_ZOOM_MODE_MANUAL, + ELM_PHOTOCAM_ZOOM_MODE_MANUAL = 0, ELM_PHOTOCAM_ZOOM_MODE_AUTO_FIT, - ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL + ELM_PHOTOCAM_ZOOM_MODE_AUTO_FILL, + ELM_PHOTOCAM_ZOOM_MODE_LAST } Elm_Photocam_Zoom_Mode; EAPI Evas_Object *elm_photocam_add(Evas_Object *parent); EAPI int elm_photocam_file_set(Evas_Object *obj, const char *file); -- 2.7.4