Ephoto: lineup info label and hide button, change panel from single browser to top toolbar.
This commit is contained in:
parent
3c02d02b75
commit
e57ff81632
|
@ -99,8 +99,6 @@ struct _Ephoto_Config
|
||||||
const char *editor;
|
const char *editor;
|
||||||
int window_width;
|
int window_width;
|
||||||
int window_height;
|
int window_height;
|
||||||
int thumb_browser_panel;
|
|
||||||
int single_browser_panel;
|
|
||||||
Evas_Object *window;
|
Evas_Object *window;
|
||||||
Evas_Object *slide_time;
|
Evas_Object *slide_time;
|
||||||
Evas_Object *slide_trans;
|
Evas_Object *slide_trans;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#include "ephoto.h"
|
#include "ephoto.h"
|
||||||
|
|
||||||
#define CONFIG_VERSION 8
|
#define CONFIG_VERSION 9
|
||||||
|
|
||||||
static int _ephoto_config_load(Ephoto *ephoto);
|
static int _ephoto_config_load(Ephoto *ephoto);
|
||||||
static Eina_Bool _ephoto_on_config_save(void *data);
|
static Eina_Bool _ephoto_on_config_save(void *data);
|
||||||
|
@ -38,8 +38,6 @@ ephoto_config_init(Ephoto *ephoto)
|
||||||
C_VAL(D, T, editor, EET_T_STRING);
|
C_VAL(D, T, editor, EET_T_STRING);
|
||||||
C_VAL(D, T, window_width, EET_T_INT);
|
C_VAL(D, T, window_width, EET_T_INT);
|
||||||
C_VAL(D, T, window_height, EET_T_INT);
|
C_VAL(D, T, window_height, EET_T_INT);
|
||||||
C_VAL(D, T, thumb_browser_panel, EET_T_INT);
|
|
||||||
C_VAL(D, T, single_browser_panel, EET_T_INT);
|
|
||||||
|
|
||||||
switch (_ephoto_config_load(ephoto))
|
switch (_ephoto_config_load(ephoto))
|
||||||
{
|
{
|
||||||
|
@ -51,8 +49,6 @@ ephoto_config_init(Ephoto *ephoto)
|
||||||
ephoto->config->editor = eina_stringshare_add("gimp %s");
|
ephoto->config->editor = eina_stringshare_add("gimp %s");
|
||||||
ephoto->config->window_width = 900;
|
ephoto->config->window_width = 900;
|
||||||
ephoto->config->window_height = 600;
|
ephoto->config->window_height = 600;
|
||||||
ephoto->config->thumb_browser_panel = 0;
|
|
||||||
ephoto->config->single_browser_panel = 0;
|
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return EINA_TRUE;
|
return EINA_TRUE;
|
||||||
|
|
|
@ -13,7 +13,6 @@ struct _Ephoto_Single_Browser
|
||||||
Evas_Object *main;
|
Evas_Object *main;
|
||||||
Evas_Object *bar;
|
Evas_Object *bar;
|
||||||
Evas_Object *table;
|
Evas_Object *table;
|
||||||
Evas_Object *panel;
|
|
||||||
Evas_Object *viewer;
|
Evas_Object *viewer;
|
||||||
Evas_Object *infolabel;
|
Evas_Object *infolabel;
|
||||||
Evas_Object *nolabel;
|
Evas_Object *nolabel;
|
||||||
|
@ -521,7 +520,7 @@ _ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
||||||
"<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, isize);
|
||||||
|
|
||||||
elm_table_pack(sb->table, sb->viewer, 0, 0, 4, 1);
|
elm_table_pack(sb->table, sb->viewer, 0, 1, 4, 1);
|
||||||
evas_object_show(sb->viewer);
|
evas_object_show(sb->viewer);
|
||||||
evas_object_event_callback_add
|
evas_object_event_callback_add
|
||||||
(sb->viewer, EVAS_CALLBACK_MOUSE_WHEEL, _mouse_wheel, sb);
|
(sb->viewer, EVAS_CALLBACK_MOUSE_WHEEL, _mouse_wheel, sb);
|
||||||
|
@ -531,7 +530,7 @@ _ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
||||||
elm_object_text_set(sb->infolabel, image_info);
|
elm_object_text_set(sb->infolabel, image_info);
|
||||||
evas_object_size_hint_weight_set(sb->infolabel, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
|
evas_object_size_hint_weight_set(sb->infolabel, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
|
||||||
evas_object_size_hint_align_set(sb->infolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
evas_object_size_hint_align_set(sb->infolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
elm_table_pack(sb->table, sb->infolabel, 0, 1, 4, 1);
|
elm_table_pack(sb->table, sb->infolabel, 0, 2, 4, 1);
|
||||||
evas_object_show(sb->infolabel);
|
evas_object_show(sb->infolabel);
|
||||||
|
|
||||||
ephoto_title_set(sb->ephoto, bname);
|
ephoto_title_set(sb->ephoto, bname);
|
||||||
|
@ -543,11 +542,11 @@ _ephoto_single_browser_recalc(Ephoto_Single_Browser *sb)
|
||||||
elm_object_text_set(sb->nolabel, "This image does not exist or is corrupted");
|
elm_object_text_set(sb->nolabel, "This image does not exist or is corrupted");
|
||||||
evas_object_size_hint_weight_set(sb->nolabel, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
evas_object_size_hint_weight_set(sb->nolabel, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
evas_object_size_hint_align_set(sb->nolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
evas_object_size_hint_align_set(sb->nolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
elm_table_pack(sb->table, sb->nolabel, 0, 0, 4, 1);
|
elm_table_pack(sb->table, sb->nolabel, 0, 1, 4, 1);
|
||||||
evas_object_show(sb->nolabel);
|
evas_object_show(sb->nolabel);
|
||||||
ephoto_title_set(sb->ephoto, "Bad Image");
|
ephoto_title_set(sb->ephoto, "Bad Image");
|
||||||
}
|
}
|
||||||
elm_table_pack(sb->table, sb->panel, 0, 0, 1, 2);
|
elm_table_pack(sb->table, sb->bar, 0, 0, 4, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
elm_object_focus_set(sb->main, EINA_TRUE);
|
elm_object_focus_set(sb->main, EINA_TRUE);
|
||||||
|
@ -826,11 +825,6 @@ _main_del(void *data, Evas *e EINA_UNUSED, Evas_Object *o EINA_UNUSED, void *eve
|
||||||
Ephoto_Single_Browser *sb = data;
|
Ephoto_Single_Browser *sb = data;
|
||||||
Ecore_Event_Handler *handler;
|
Ecore_Event_Handler *handler;
|
||||||
|
|
||||||
if (elm_panel_hidden_get(sb->panel))
|
|
||||||
sb->ephoto->config->single_browser_panel = 1;
|
|
||||||
else
|
|
||||||
sb->ephoto->config->single_browser_panel = 0;
|
|
||||||
|
|
||||||
EINA_LIST_FREE(sb->handlers, handler)
|
EINA_LIST_FREE(sb->handlers, handler)
|
||||||
ecore_event_handler_del(handler);
|
ecore_event_handler_del(handler);
|
||||||
if (sb->entry)
|
if (sb->entry)
|
||||||
|
@ -894,24 +888,13 @@ ephoto_single_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
||||||
elm_box_pack_end(sb->main, sb->table);
|
elm_box_pack_end(sb->main, sb->table);
|
||||||
evas_object_show(sb->table);
|
evas_object_show(sb->table);
|
||||||
|
|
||||||
sb->panel = elm_panel_add(sb->table);
|
sb->bar = elm_toolbar_add(sb->table);
|
||||||
EINA_SAFETY_ON_NULL_GOTO(sb->panel, error);
|
|
||||||
elm_panel_orient_set(sb->panel, ELM_PANEL_ORIENT_LEFT);
|
|
||||||
evas_object_size_hint_weight_set(sb->panel, 0.0, EVAS_HINT_EXPAND);
|
|
||||||
evas_object_size_hint_align_set(sb->panel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
|
||||||
if (sb->ephoto->config->single_browser_panel)
|
|
||||||
elm_panel_hidden_set(sb->panel, EINA_TRUE);
|
|
||||||
else
|
|
||||||
elm_panel_hidden_set(sb->panel, EINA_FALSE);
|
|
||||||
elm_table_pack(sb->table, sb->panel, 0, 0, 1, 2);
|
|
||||||
evas_object_show(sb->panel);
|
|
||||||
|
|
||||||
sb->bar = elm_toolbar_add(sb->panel);
|
|
||||||
EINA_SAFETY_ON_NULL_GOTO(sb->bar, error);
|
EINA_SAFETY_ON_NULL_GOTO(sb->bar, error);
|
||||||
elm_toolbar_horizontal_set(sb->bar, EINA_FALSE);
|
elm_toolbar_horizontal_set(sb->bar, EINA_TRUE);
|
||||||
|
elm_toolbar_homogeneous_set(sb->bar, EINA_FALSE);
|
||||||
elm_toolbar_shrink_mode_set(sb->bar, ELM_TOOLBAR_SHRINK_SCROLL);
|
elm_toolbar_shrink_mode_set(sb->bar, ELM_TOOLBAR_SHRINK_SCROLL);
|
||||||
elm_toolbar_select_mode_set(sb->bar, ELM_OBJECT_SELECT_MODE_NONE);
|
elm_toolbar_select_mode_set(sb->bar, ELM_OBJECT_SELECT_MODE_NONE);
|
||||||
evas_object_size_hint_weight_set(sb->bar, 0.0, EVAS_HINT_EXPAND);
|
evas_object_size_hint_weight_set(sb->bar, EVAS_HINT_EXPAND, 0.0);
|
||||||
evas_object_size_hint_align_set(sb->bar, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
evas_object_size_hint_align_set(sb->bar, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
|
|
||||||
icon = elm_toolbar_item_append(sb->bar, "go-home", "Back", _back, sb);
|
icon = elm_toolbar_item_append(sb->bar, "go-home", "Back", _back, sb);
|
||||||
|
@ -970,7 +953,7 @@ ephoto_single_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
||||||
icon = elm_toolbar_item_append(sb->bar, "help-about", "About", _about, sb);
|
icon = elm_toolbar_item_append(sb->bar, "help-about", "About", _about, sb);
|
||||||
elm_toolbar_item_priority_set(icon, 0);
|
elm_toolbar_item_priority_set(icon, 0);
|
||||||
|
|
||||||
elm_object_content_set(sb->panel, sb->bar);
|
elm_table_pack(sb->table, sb->bar, 0, 0, 4, 1);
|
||||||
evas_object_show(sb->bar);
|
evas_object_show(sb->bar);
|
||||||
|
|
||||||
sb->handlers = eina_list_append
|
sb->handlers = eina_list_append
|
||||||
|
|
|
@ -759,8 +759,8 @@ Evas_Object *
|
||||||
ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
||||||
{
|
{
|
||||||
Evas_Object *box = elm_box_add(parent);
|
Evas_Object *box = elm_box_add(parent);
|
||||||
Evas_Object *icon, *min, *max, *hbox, *but, *sep, *ic;
|
Evas_Object *icon, *min, *max, *hbox, *botbox, *but, *sep, *ic;
|
||||||
Evas_Coord w;
|
Evas_Coord w, h;
|
||||||
Ephoto_Thumb_Browser *tb;
|
Ephoto_Thumb_Browser *tb;
|
||||||
|
|
||||||
EINA_SAFETY_ON_NULL_RETURN_VAL(box, NULL);
|
EINA_SAFETY_ON_NULL_RETURN_VAL(box, NULL);
|
||||||
|
@ -876,6 +876,7 @@ ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
||||||
evas_object_smart_callback_add(but, "clicked", _ephoto_dir_hide_folders, tb);
|
evas_object_smart_callback_add(but, "clicked", _ephoto_dir_hide_folders, tb);
|
||||||
elm_box_pack_end(tb->leftbox, but);
|
elm_box_pack_end(tb->leftbox, but);
|
||||||
evas_object_show(but);
|
evas_object_show(but);
|
||||||
|
evas_object_size_hint_min_get(but, 0, &h);
|
||||||
|
|
||||||
tb->table = elm_table_add(tb->main);
|
tb->table = elm_table_add(tb->main);
|
||||||
evas_object_size_hint_weight_set(tb->table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
evas_object_size_hint_weight_set(tb->table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
@ -905,11 +906,20 @@ ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent)
|
||||||
evas_object_show(tb->grid);
|
evas_object_show(tb->grid);
|
||||||
elm_table_pack(tb->table, tb->grid, 0, 0, 4, 1);
|
elm_table_pack(tb->table, tb->grid, 0, 0, 4, 1);
|
||||||
|
|
||||||
|
botbox = evas_object_rectangle_add(evas_object_evas_get(tb->table));
|
||||||
|
evas_object_color_set(botbox, 255, 255, 255, 0);
|
||||||
|
evas_object_size_hint_min_set(botbox, 0, h);
|
||||||
|
evas_object_size_hint_weight_set(botbox, EVAS_HINT_EXPAND, 0.0);
|
||||||
|
evas_object_size_hint_fill_set(botbox, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
|
elm_table_pack(tb->table, botbox, 0, 1, 4, 1);
|
||||||
|
evas_object_show(botbox);
|
||||||
|
|
||||||
tb->infolabel = elm_label_add(tb->table);
|
tb->infolabel = elm_label_add(tb->table);
|
||||||
elm_label_line_wrap_set(tb->infolabel, ELM_WRAP_NONE);
|
elm_label_line_wrap_set(tb->infolabel, ELM_WRAP_WORD);
|
||||||
elm_object_text_set(tb->infolabel, "Info Label");
|
elm_object_text_set(tb->infolabel, "Info Label");
|
||||||
evas_object_size_hint_weight_set(tb->infolabel, EVAS_HINT_EXPAND, 0.0);
|
evas_object_size_hint_weight_set(tb->infolabel, EVAS_HINT_EXPAND, 0.0);
|
||||||
evas_object_size_hint_align_set(tb->infolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
evas_object_size_hint_align_set(tb->infolabel, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
|
evas_object_size_hint_aspect_set(tb->infolabel, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
|
||||||
elm_table_pack(tb->table, tb->infolabel, 0, 1, 4, 1);
|
elm_table_pack(tb->table, tb->infolabel, 0, 1, 4, 1);
|
||||||
evas_object_show(tb->infolabel);
|
evas_object_show(tb->infolabel);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue