Some fixes in external Photocam. By Fidencio
authorTiago Rezende Campos Falcao <developer@tiagofalcao.com>
Tue, 6 Apr 2010 14:01:08 +0000 (14:01 +0000)
committerTiago Rezende Campos Falcao <developer@tiagofalcao.com>
Tue, 6 Apr 2010 14:01:08 +0000 (14:01 +0000)
Author:    Fabiano FidĂȘncio <fidencio at profusion.mobi>

SVN revision: 47785

src/edje_externals/elm_genlist.c
src/edje_externals/elm_photocam.c
src/lib/Elementary.h.in

index abaade3..3c9b710 100644 (file)
@@ -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)
          {
index 1d6f0bd..97236f0 100644 (file)
@@ -1,3 +1,5 @@
+#include <assert.h>
+
 #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'",
index b156a84..f3416b8 100644 (file)
@@ -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);