Enlightenment CVS committal Author : titan Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_eap_editor.c e_int_config_wallpaper_import.c e_widget_fsel.c e_widget_preview.c e_widget_preview.h Log Message: Authors++ Allow an e_thumb api for e_widget_preview. Fixup the file selector preview to use this new api. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_eap_editor.c,v retrieving revision 1.38 retrieving revision 1.39 diff -u -3 -r1.38 -r1.39 --- e_eap_editor.c 14 Aug 2006 15:22:44 -0000 1.38 +++ e_eap_editor.c 14 Aug 2006 17:42:45 -0000 1.39 @@ -426,7 +426,7 @@ o = e_widget_fsel_add(dia->win->evas, "~/", "/", NULL, NULL, _e_eap_edit_select_cb, cfdata, - _e_eap_edit_change_cb, cfdata, 0); + _e_eap_edit_change_cb, cfdata, 1); evas_object_show(o); e_widget_min_size_get(o, &mw, &mh); e_dialog_content_set(dia, o, mw, mh); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_wallpaper_import.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- e_int_config_wallpaper_import.c 14 Aug 2006 11:08:40 -0000 1.10 +++ e_int_config_wallpaper_import.c 14 Aug 2006 17:42:45 -0000 1.11 @@ -138,7 +138,7 @@ } ofm = e_widget_fsel_add(evas, fdev, fpath, NULL, NULL, _import_cb_sel_selected, import, - _import_cb_sel_change, import, 0 + _import_cb_sel_change, import, 1 ); import->fsel_obj = ofm; e_widget_list_object_append(o, ofm, 1, 1, 0.5); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_fsel.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- e_widget_fsel.c 14 Aug 2006 11:08:40 -0000 1.11 +++ e_widget_fsel.c 14 Aug 2006 17:42:45 -0000 1.12 @@ -450,6 +450,7 @@ static void _e_wid_fsel_preview_file(E_Widget_Data *wd) { + Evas_Coord mw = 0, mh = 0; char *size, *owner, *perms, *time; struct stat st; @@ -459,7 +460,16 @@ owner = _e_wid_file_user_get(st.st_uid); perms = _e_wid_file_perms_get(st.st_mode, st.st_uid, st.st_gid); time = _e_wid_file_time_get(st.st_mtime); - + + e_widget_preview_thumb_set(wd->o_preview_preview, wd->path, "background", 120, 120); + + /*e_table_unpack(wd->o_preview_preview); + e_table_pack(wd->o_preview_preview_table, wd->o_preview_preview, 0, 0, 1, 1); + e_widget_min_size_get(wd->o_preview_preview, &mw, &mh); + e_table_pack_options_set(wd->o_preview_preview, 1, 1, 1, 1, 0.5, 0.5, mw, mh, 99999, 99999); + e_table_min_size_get(wd->o_preview_preview_table, &mw, &mh); + e_widget_min_size_set(wd->o_preview_preview_table, mw, mh);*/ + e_widget_entry_text_set(wd->o_preview_size_entry, size); e_widget_entry_text_set(wd->o_preview_owner_entry, owner); e_widget_entry_text_set(wd->o_preview_perms_entry, perms); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_preview.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_widget_preview.c 1 Apr 2006 09:24:56 -0000 1.2 +++ e_widget_preview.c 14 Aug 2006 17:42:45 -0000 1.3 @@ -10,7 +10,7 @@ }; static void _e_wid_del_hook(Evas_Object *obj); - +static void _e_wid_preview_thumb_gen(void *data, Evas_Object *obj, void *event_info); /* local subsystem functions */ /* externally accessible functions */ @@ -56,12 +56,47 @@ E_Widget_Data *wd; wd = e_widget_data_get(obj); - if (wd->o_thumb) evas_object_del(wd->o_thumb); + + if (wd->o_thumb) + evas_object_del(wd->o_thumb); + wd->o_thumb = e_icon_add(e_livethumb_evas_get(wd->img)); e_icon_file_key_set(wd->o_thumb, file, key); evas_object_show(wd->o_thumb); e_livethumb_thumb_set(wd->img, wd->o_thumb); return 1; +} + +EAPI int +e_widget_preview_thumb_set(Evas_Object *obj, const char *file, const char *key, int w, int h) +{ + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + + if (wd->img) + evas_object_del(wd->img); + + wd->img = e_thumb_icon_add(evas_object_evas_get(obj)); + e_thumb_icon_file_set(wd->img, file, key); + e_thumb_icon_size_set(wd->img, w, h); + e_thumb_icon_begin(wd->img); + evas_object_smart_callback_add(wd->img, "e_thumb_gen", _e_wid_preview_thumb_gen, wd); + + edje_object_part_swallow(wd->o_frame, "item", wd->img); + evas_object_show(wd->img); + return 1; +} + +static void +_e_wid_preview_thumb_gen(void *data, Evas_Object *obj, void *event_info) +{ + Evas_Coord w, h; + E_Widget_Data *wd; + wd = data; + + e_icon_size_get(wd->img, &w, &h); + evas_object_resize(wd->o_frame, w, h); } EAPI int =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_preview.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- e_widget_preview.h 1 Apr 2006 09:24:56 -0000 1.2 +++ e_widget_preview.h 14 Aug 2006 17:42:45 -0000 1.3 @@ -8,6 +8,7 @@ EAPI Evas_Object *e_widget_preview_add(Evas *evas, int minw, int minh); EAPI int e_widget_preview_file_set(Evas_Object *obj, const char *file, const char *key); +EAPI int e_widget_preview_thumb_set(Evas_Object *obj, const char *file, const char *key, int w, int h); EAPI int e_widget_preview_edje_set(Evas_Object *obj, const char *file, const char *group); #endif ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs