From e57ff8163217ea0d3b637d5b07c9c619a4352225 Mon Sep 17 00:00:00 2001 From: Stephen Houston Date: Sun, 25 Jan 2015 14:15:06 -0600 Subject: [PATCH] Ephoto: lineup info label and hide button, change panel from single browser to top toolbar. --- src/bin/ephoto.h | 2 -- src/bin/ephoto_config.c | 6 +----- src/bin/ephoto_single_browser.c | 35 +++++++++------------------------ src/bin/ephoto_thumb_browser.c | 18 +++++++++++++---- 4 files changed, 24 insertions(+), 37 deletions(-) diff --git a/src/bin/ephoto.h b/src/bin/ephoto.h index 0b645db..ad5d3e8 100644 --- a/src/bin/ephoto.h +++ b/src/bin/ephoto.h @@ -99,8 +99,6 @@ struct _Ephoto_Config const char *editor; int window_width; int window_height; - int thumb_browser_panel; - int single_browser_panel; Evas_Object *window; Evas_Object *slide_time; Evas_Object *slide_trans; diff --git a/src/bin/ephoto_config.c b/src/bin/ephoto_config.c index 76586e4..e7156fd 100644 --- a/src/bin/ephoto_config.c +++ b/src/bin/ephoto_config.c @@ -1,6 +1,6 @@ #include "ephoto.h" -#define CONFIG_VERSION 8 +#define CONFIG_VERSION 9 static int _ephoto_config_load(Ephoto *ephoto); 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, window_width, 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)) { @@ -51,8 +49,6 @@ ephoto_config_init(Ephoto *ephoto) ephoto->config->editor = eina_stringshare_add("gimp %s"); ephoto->config->window_width = 900; ephoto->config->window_height = 600; - ephoto->config->thumb_browser_panel = 0; - ephoto->config->single_browser_panel = 0; break; default: return EINA_TRUE; diff --git a/src/bin/ephoto_single_browser.c b/src/bin/ephoto_single_browser.c index 5717b01..1fc27c2 100644 --- a/src/bin/ephoto_single_browser.c +++ b/src/bin/ephoto_single_browser.c @@ -13,7 +13,6 @@ struct _Ephoto_Single_Browser Evas_Object *main; Evas_Object *bar; Evas_Object *table; - Evas_Object *panel; Evas_Object *viewer; Evas_Object *infolabel; Evas_Object *nolabel; @@ -521,7 +520,7 @@ _ephoto_single_browser_recalc(Ephoto_Single_Browser *sb) "Type: %s Resolution: %dx%d File Size: %s", 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_event_callback_add (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); 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); - 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); 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"); 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); - 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); 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); @@ -826,11 +825,6 @@ _main_del(void *data, Evas *e EINA_UNUSED, Evas_Object *o EINA_UNUSED, void *eve Ephoto_Single_Browser *sb = data; 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) ecore_event_handler_del(handler); if (sb->entry) @@ -894,24 +888,13 @@ ephoto_single_browser_add(Ephoto *ephoto, Evas_Object *parent) elm_box_pack_end(sb->main, sb->table); evas_object_show(sb->table); - sb->panel = elm_panel_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); + sb->bar = elm_toolbar_add(sb->table); 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_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); 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); 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); sb->handlers = eina_list_append diff --git a/src/bin/ephoto_thumb_browser.c b/src/bin/ephoto_thumb_browser.c index ab73e01..8276ce0 100644 --- a/src/bin/ephoto_thumb_browser.c +++ b/src/bin/ephoto_thumb_browser.c @@ -759,8 +759,8 @@ Evas_Object * ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent) { Evas_Object *box = elm_box_add(parent); - Evas_Object *icon, *min, *max, *hbox, *but, *sep, *ic; - Evas_Coord w; + Evas_Object *icon, *min, *max, *hbox, *botbox, *but, *sep, *ic; + Evas_Coord w, h; Ephoto_Thumb_Browser *tb; 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); elm_box_pack_end(tb->leftbox, but); evas_object_show(but); + evas_object_size_hint_min_get(but, 0, &h); tb->table = elm_table_add(tb->main); evas_object_size_hint_weight_set(tb->table, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); @@ -904,12 +905,21 @@ ephoto_thumb_browser_add(Ephoto *ephoto, Evas_Object *parent) evas_object_show(tb->grid); 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); - 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"); 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_aspect_set(tb->infolabel, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1); elm_table_pack(tb->table, tb->infolabel, 0, 1, 4, 1); evas_object_show(tb->infolabel);