diff options
Diffstat (limited to 'src/lib/elementary/elm_photo.c')
-rw-r--r-- | src/lib/elementary/elm_photo.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_photo.c b/src/lib/elementary/elm_photo.c index 0d6e94652a..53300f9d0e 100644 --- a/src/lib/elementary/elm_photo.c +++ b/src/lib/elementary/elm_photo.c @@ -325,6 +325,12 @@ _elm_photo_efl_object_constructor(Eo *obj, Elm_Photo_Data *_pd EINA_UNUSED) return obj; } +EOLIAN static void +_elm_photo_efl_file_file_get(const Eo *obj EINA_UNUSED, Elm_Photo_Data *sd, const char **file, const char **key EINA_UNUSED) +{ + efl_file_get(sd->icon, file, NULL); +} + EOLIAN static Eina_Bool _elm_photo_efl_file_file_set(Eo *obj, Elm_Photo_Data *sd, const char *file, const char *key EINA_UNUSED) { @@ -342,6 +348,29 @@ _elm_photo_efl_file_file_set(Eo *obj, Elm_Photo_Data *sd, const char *file, cons return EINA_TRUE; } +EOLIAN static void +_elm_photo_efl_file_mmap_get(const Eo *obj EINA_UNUSED, Elm_Photo_Data *sd, const Eina_File **file, const char **key EINA_UNUSED) +{ + efl_file_mmap_get(sd->icon, file, key); +} + +EOLIAN static Eina_Bool +_elm_photo_efl_file_mmap_set(Eo *obj, Elm_Photo_Data *sd, const Eina_File *file, const char *key EINA_UNUSED) +{ + if (!file) + { + if (!elm_icon_standard_set(sd->icon, "no_photo")) return EINA_FALSE; + } + else + { + if (!efl_file_mmap_set(sd->icon, file, NULL)) return EINA_FALSE; + } + + _sizing_eval(obj); + + return EINA_TRUE; +} + static void _elm_photo_class_constructor(Efl_Class *klass) { |