Ephoto: Make sure to change info label on crop.
This commit is contained in:
parent
06aea55c17
commit
813805118c
|
@ -461,6 +461,39 @@ _last_entry_find(Ephoto_Single_Browser *sb)
|
||||||
return eina_list_last_data_get(sb->ephoto->entries);
|
return eina_list_last_data_get(sb->ephoto->entries);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static const char *
|
||||||
|
_ephoto_get_file_size(const char *path)
|
||||||
|
{
|
||||||
|
char isize[PATH_MAX];
|
||||||
|
Eina_File *f = eina_file_open(path, EINA_FALSE);
|
||||||
|
size_t size = eina_file_size_get(f);
|
||||||
|
eina_file_close(f);
|
||||||
|
double dsize = (double)size;
|
||||||
|
if (dsize < 1024.0) snprintf(isize, sizeof(isize), "%'.0f bytes", dsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dsize /= 1024.0;
|
||||||
|
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.0f KB", dsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dsize /= 1024.0;
|
||||||
|
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.1f MB", dsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dsize /= 1024.0;
|
||||||
|
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.1f GB", dsize);
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dsize /= 1024.0;
|
||||||
|
snprintf(isize, sizeof(isize), "%'.1f TB", dsize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return strdup(isize);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
_ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
||||||
{
|
{
|
||||||
|
@ -486,40 +519,15 @@ _ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
||||||
if (sb->viewer)
|
if (sb->viewer)
|
||||||
{
|
{
|
||||||
char image_info[PATH_MAX];
|
char image_info[PATH_MAX];
|
||||||
char isize[PATH_MAX];
|
|
||||||
Evas_Coord w, h;
|
Evas_Coord w, h;
|
||||||
Evas_Object *botbox;
|
Evas_Object *botbox;
|
||||||
Ephoto_Viewer *v = evas_object_data_get(sb->viewer, "viewer");
|
Ephoto_Viewer *v = evas_object_data_get(sb->viewer, "viewer");
|
||||||
Eina_File *f = eina_file_open(sb->entry->path, EINA_FALSE);
|
|
||||||
size_t size = eina_file_size_get(f);
|
|
||||||
eina_file_close(f);
|
|
||||||
|
|
||||||
double dsize = (double)size;
|
|
||||||
if (dsize < 1024.0) snprintf(isize, sizeof(isize), "%'.0f bytes", dsize);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dsize /= 1024.0;
|
|
||||||
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.0f KB", dsize);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dsize /= 1024.0;
|
|
||||||
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.1f MB", dsize);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dsize /= 1024.0;
|
|
||||||
if (dsize < 1024) snprintf(isize, sizeof(isize), "%'.1f GB", dsize);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dsize /= 1024.0;
|
|
||||||
snprintf(isize, sizeof(isize), "%'.1f TB", dsize);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
evas_object_image_size_get(elm_image_object_get(v->image), &w, &h);
|
evas_object_image_size_get(elm_image_object_get(v->image), &w, &h);
|
||||||
snprintf(image_info, PATH_MAX,
|
snprintf(image_info, PATH_MAX,
|
||||||
"<b>Type:</b> %s <b>Resolution:</b> %dx%d <b>File Size: </b>%s",
|
"<b>Type:</b> %s <b>Resolution:</b> %dx%d <b>File Size: </b>%s",
|
||||||
efreet_mime_type_get(sb->entry->path), w, h, isize);
|
efreet_mime_type_get(sb->entry->path), w, h,
|
||||||
|
_ephoto_get_file_size(sb->entry->path));
|
||||||
|
|
||||||
elm_table_pack(sb->table, sb->viewer, 0, 1, 4, 1);
|
elm_table_pack(sb->table, sb->viewer, 0, 1, 4, 1);
|
||||||
evas_object_show(sb->viewer);
|
evas_object_show(sb->viewer);
|
||||||
|
@ -685,7 +693,7 @@ static void _apply_crop(void *data, Evas_Object *obj EINA_UNUSED, void *event_in
|
||||||
Ephoto_Single_Browser *sb = evas_object_data_get(win, "single_browser");
|
Ephoto_Single_Browser *sb = evas_object_data_get(win, "single_browser");
|
||||||
Ephoto_Viewer *v = evas_object_data_get(sb->viewer, "viewer");
|
Ephoto_Viewer *v = evas_object_data_get(sb->viewer, "viewer");
|
||||||
const char *path, *key, *type;;
|
const char *path, *key, *type;;
|
||||||
char tmp_path[PATH_MAX];
|
char tmp_path[PATH_MAX], info[PATH_MAX];
|
||||||
int x, y, w, h, cx, cy, cw, ch, iw, ih, sw, sh;
|
int x, y, w, h, cx, cy, cw, ch, iw, ih, sw, sh;
|
||||||
int nx, ny, nw, nh, i, j, tmpx, tmpy, ind, index;
|
int nx, ny, nw, nh, i, j, tmpx, tmpy, ind, index;
|
||||||
double scalex, scaley, scalew, scaleh;
|
double scalex, scaley, scalew, scaleh;
|
||||||
|
@ -737,10 +745,17 @@ static void _apply_crop(void *data, Evas_Object *obj EINA_UNUSED, void *event_in
|
||||||
|
|
||||||
elm_image_file_set(v->image, tmp_path, NULL);
|
elm_image_file_set(v->image, tmp_path, NULL);
|
||||||
evas_object_geometry_get(sb->table, 0, 0, &sw, &sh);
|
evas_object_geometry_get(sb->table, 0, 0, &sw, &sh);
|
||||||
|
|
||||||
|
snprintf(info, PATH_MAX,
|
||||||
|
"<b>Type:</b> %s <b>Resolutions</b>: %dx%d <b>Size</b>: %s",
|
||||||
|
efreet_mime_type_get(tmp_path), nw, nh, _ephoto_get_file_size(tmp_path));
|
||||||
|
elm_object_text_set(sb->infolabel, info);
|
||||||
|
|
||||||
if (nw < sw && nh < sh)
|
if (nw < sw && nh < sh)
|
||||||
_zoom_set(sb, 1.0);
|
_zoom_set(sb, 1.0);
|
||||||
else
|
else
|
||||||
_zoom_fit(sb);
|
_zoom_fit(sb);
|
||||||
|
|
||||||
evas_object_del(win);
|
evas_object_del(win);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue