forked from enlightenment/efl
Add the Toolbar 9. It's expand mode using "item_centered" style.
If the sum of item min values is larger than the length of window, the scroll of toolbar works. And if the length of window is larger than the sum of item min values, items are expanded. SVN revision: 79263
This commit is contained in:
parent
2c018f252e
commit
d8ac3c0872
|
@ -1,7 +1,7 @@
|
||||||
#define ITEM_STATE_ENABLED 0
|
#define ITEM_STATE_ENABLED 0
|
||||||
#define ITEM_STATE_DISABLED 1
|
#define ITEM_STATE_DISABLED 1
|
||||||
|
|
||||||
#define BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC 16 16
|
#define TOOLBAR_ITEM_ICON_SIZE 26 26
|
||||||
|
|
||||||
group { name: "elm/toolbar/base/default";
|
group { name: "elm/toolbar/base/default";
|
||||||
images {
|
images {
|
||||||
|
@ -1005,8 +1005,10 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
part { name: "bg";
|
part { name: "bg";
|
||||||
|
scale: 1;
|
||||||
mouse_events: 0;
|
mouse_events: 0;
|
||||||
description { state: "default" 0.0;
|
description { state: "default" 0.0;
|
||||||
|
min: 100 60;
|
||||||
visible: 0;
|
visible: 0;
|
||||||
color: 255 255 255 0;
|
color: 255 255 255 0;
|
||||||
rel1 {
|
rel1 {
|
||||||
|
@ -1082,7 +1084,7 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
color: 0 0 0 0;
|
color: 0 0 0 0;
|
||||||
}
|
}
|
||||||
description { state: "visible" 0.0;
|
description { state: "visible" 0.0;
|
||||||
min: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
min: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
fixed: 0 1;
|
fixed: 0 1;
|
||||||
rel1 {
|
rel1 {
|
||||||
relative: 1.0 1.0;
|
relative: 1.0 1.0;
|
||||||
|
@ -1112,7 +1114,7 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
}
|
}
|
||||||
rel2.to: "icon_rect";
|
rel2.to: "icon_rect";
|
||||||
fixed: 0 1;
|
fixed: 0 1;
|
||||||
min: 0 0;
|
min: 0 15;
|
||||||
color: 0 0 0 0;
|
color: 0 0 0 0;
|
||||||
}
|
}
|
||||||
description { state: "visible" 0.0;
|
description { state: "visible" 0.0;
|
||||||
|
@ -1139,7 +1141,7 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
to_y: "elm.text";
|
to_y: "elm.text";
|
||||||
}
|
}
|
||||||
fixed: 0 1;
|
fixed: 0 1;
|
||||||
min: 0 0;
|
min: 0 15;
|
||||||
color: 0 0 0 0;
|
color: 0 0 0 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1159,12 +1161,11 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
to_x: "padding_right_bottom";
|
to_x: "padding_right_bottom";
|
||||||
to_y: "padding_left_top";
|
to_y: "padding_left_top";
|
||||||
}
|
}
|
||||||
// fixed: 1 1;
|
fixed: 0 1;
|
||||||
}
|
}
|
||||||
description { state: "visible" 0.0;
|
description { state: "visible" 0.0;
|
||||||
// fixed: 1 1;
|
min: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
min: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
max: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
max: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
|
||||||
rel1 {
|
rel1 {
|
||||||
relative: 1.0 1.0;
|
relative: 1.0 1.0;
|
||||||
to: "padding_left_top";
|
to: "padding_left_top";
|
||||||
|
@ -1179,8 +1180,8 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
aspect_preference: BOTH;
|
aspect_preference: BOTH;
|
||||||
}
|
}
|
||||||
description { state: "icononly" 0.0;
|
description { state: "icononly" 0.0;
|
||||||
min: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
min: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
max: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
max: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
rel1 {
|
rel1 {
|
||||||
relative: 1.0 1.0;
|
relative: 1.0 1.0;
|
||||||
to: "padding_left_top";
|
to: "padding_left_top";
|
||||||
|
@ -1209,12 +1210,11 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
to_x: "padding_right_bottom";
|
to_x: "padding_right_bottom";
|
||||||
to_y: "padding_left_top";
|
to_y: "padding_left_top";
|
||||||
}
|
}
|
||||||
// fixed: 1 1;
|
fixed: 0 1;
|
||||||
}
|
}
|
||||||
description { state: "visible" 0.0;
|
description { state: "visible" 0.0;
|
||||||
// fixed: 1 1;
|
min: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
min: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
max: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
max: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
|
||||||
rel1 {
|
rel1 {
|
||||||
relative: 1.0 1.0;
|
relative: 1.0 1.0;
|
||||||
to: "padding_left_top";
|
to: "padding_left_top";
|
||||||
|
@ -1229,8 +1229,8 @@ group { name: "elm/toolbar/item/item_centered";
|
||||||
aspect_preference: BOTH;
|
aspect_preference: BOTH;
|
||||||
}
|
}
|
||||||
description { state: "icononly" 0.0;
|
description { state: "icononly" 0.0;
|
||||||
min: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
min: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
max: BUTTON_CONTROLBAR_ITEM_BUTTON_ICON_SIZE_INC;
|
max: TOOLBAR_ITEM_ICON_SIZE;
|
||||||
rel1 {
|
rel1 {
|
||||||
relative: 1.0 1.0;
|
relative: 1.0 1.0;
|
||||||
to: "padding_left_top";
|
to: "padding_left_top";
|
||||||
|
|
|
@ -63,6 +63,7 @@ void test_toolbar5(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_toolbar6(void *data, Evas_Object *obj, void *event_info);
|
void test_toolbar6(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_toolbar7(void *data, Evas_Object *obj, void *event_info);
|
void test_toolbar7(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_toolbar8(void *data, Evas_Object *obj, void *event_info);
|
void test_toolbar8(void *data, Evas_Object *obj, void *event_info);
|
||||||
|
void test_toolbar9(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_hoversel(void *data, Evas_Object *obj, void *event_info);
|
void test_hoversel(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_list(void *data, Evas_Object *obj, void *event_info);
|
void test_list(void *data, Evas_Object *obj, void *event_info);
|
||||||
void test_list_horizontal(void *data, Evas_Object *obj, void *event_info);
|
void test_list_horizontal(void *data, Evas_Object *obj, void *event_info);
|
||||||
|
@ -553,6 +554,7 @@ add_tests:
|
||||||
ADD_TEST(NULL, "Toolbars", "Toolbar 6", test_toolbar6);
|
ADD_TEST(NULL, "Toolbars", "Toolbar 6", test_toolbar6);
|
||||||
ADD_TEST(NULL, "Toolbars", "Toolbar 7", test_toolbar7);
|
ADD_TEST(NULL, "Toolbars", "Toolbar 7", test_toolbar7);
|
||||||
ADD_TEST(NULL, "Toolbars", "Toolbar 8", test_toolbar8);
|
ADD_TEST(NULL, "Toolbars", "Toolbar 8", test_toolbar8);
|
||||||
|
ADD_TEST(NULL, "Toolbars", "Toolbar 9", test_toolbar9);
|
||||||
|
|
||||||
//------------------------------//
|
//------------------------------//
|
||||||
ADD_TEST(NULL, "Lists", "List", test_list);
|
ADD_TEST(NULL, "Lists", "List", test_list);
|
||||||
|
|
|
@ -950,4 +950,95 @@ test_toolbar8(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_in
|
||||||
evas_object_resize(win, 420, 250);
|
evas_object_resize(win, 420, 250);
|
||||||
evas_object_show(win);
|
evas_object_show(win);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
test_toolbar9(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__)
|
||||||
|
{
|
||||||
|
Evas_Object *win, *bx, *tb, *ph, *sl;
|
||||||
|
Evas_Object *ph1, *ph2, *ph3, *ph4;
|
||||||
|
Elm_Object_Item *tb_it;
|
||||||
|
char buf[PATH_MAX];
|
||||||
|
|
||||||
|
win = elm_win_util_standard_add("toolbar9", "Toolbar 9");
|
||||||
|
elm_win_autodel_set(win, EINA_TRUE);
|
||||||
|
|
||||||
|
bx = elm_box_add(win);
|
||||||
|
elm_win_resize_object_add(win, bx);
|
||||||
|
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_show(bx);
|
||||||
|
|
||||||
|
tb = elm_toolbar_add(win);
|
||||||
|
elm_toolbar_homogeneous_set(tb, EINA_FALSE);
|
||||||
|
elm_toolbar_shrink_mode_set(tb, ELM_TOOLBAR_SHRINK_EXPAND);
|
||||||
|
elm_toolbar_transverse_expanded_set(tb, EINA_TRUE);
|
||||||
|
elm_toolbar_reorder_mode_set(tb, EINA_TRUE);
|
||||||
|
elm_toolbar_select_mode_set(tb, ELM_OBJECT_SELECT_MODE_ALWAYS);
|
||||||
|
elm_object_style_set(tb, "item_centered");
|
||||||
|
evas_object_size_hint_weight_set(tb, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_align_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
|
|
||||||
|
ph1 = elm_photo_add(win);
|
||||||
|
ph2 = elm_photo_add(win);
|
||||||
|
ph3 = elm_photo_add(win);
|
||||||
|
ph4 = elm_photo_add(win);
|
||||||
|
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "document-print", "Hello", _tb_sel1_cb, ph1);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "folder-new", "World", _tb_sel2_cb, ph1);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "object-rotate-right", "H", _tb_sel3_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "mail-send", "Comes", _tb_sel4_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "edit-cut", "Shrink", _tb_sel4_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "edit-copy", "Mode", _tb_sel4_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "edit-paste", "is set to", _tb_sel4_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "edit-delete", "Menu", _tb_sel4_cb, ph4);
|
||||||
|
tb_it = elm_toolbar_item_append(tb, "clock", "Elementary", _tb_sel5_cb, ph4);
|
||||||
|
|
||||||
|
evas_object_smart_callback_add(tb, "clicked", toolbar_clicked_cb, NULL);
|
||||||
|
|
||||||
|
elm_box_pack_end(bx, tb);
|
||||||
|
evas_object_show(tb);
|
||||||
|
|
||||||
|
tb = elm_table_add(win);
|
||||||
|
evas_object_size_hint_weight_set(tb, 0.0, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_fill_set(tb, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||||
|
|
||||||
|
ph = ph1;
|
||||||
|
elm_photo_size_set(ph, 80);
|
||||||
|
snprintf(buf, sizeof(buf), "%s/images/plant_01.jpg", elm_app_data_dir_get());
|
||||||
|
elm_photo_file_set(ph, buf);
|
||||||
|
evas_object_size_hint_weight_set(ph, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_align_set(ph, 0.5, 0.5);
|
||||||
|
elm_table_pack(tb, ph, 0, 0, 1, 1);
|
||||||
|
evas_object_show(ph);
|
||||||
|
|
||||||
|
ph = ph2;
|
||||||
|
elm_photo_size_set(ph, 160);
|
||||||
|
evas_object_size_hint_weight_set(ph, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_align_set(ph, 0.5, 0.5);
|
||||||
|
elm_table_pack(tb, ph, 1, 0, 1, 1);
|
||||||
|
evas_object_show(ph);
|
||||||
|
|
||||||
|
ph = ph3;
|
||||||
|
elm_photo_size_set(ph, 40);
|
||||||
|
snprintf(buf, sizeof(buf), "%s/images/sky_01.jpg", elm_app_data_dir_get());
|
||||||
|
elm_photo_file_set(ph, buf);
|
||||||
|
evas_object_size_hint_weight_set(ph, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_align_set(ph, 0.5, 0.5);
|
||||||
|
elm_table_pack(tb, ph, 0, 1, 1, 1);
|
||||||
|
evas_object_show(ph);
|
||||||
|
|
||||||
|
ph = ph4;
|
||||||
|
elm_photo_size_set(ph, 120);
|
||||||
|
snprintf(buf, sizeof(buf), "%s/images/sky_02.jpg", elm_app_data_dir_get());
|
||||||
|
elm_photo_file_set(ph, buf);
|
||||||
|
evas_object_size_hint_weight_set(ph, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||||
|
evas_object_size_hint_align_set(ph, 0.5, 0.5);
|
||||||
|
elm_table_pack(tb, ph, 1, 1, 1, 1);
|
||||||
|
evas_object_show(ph);
|
||||||
|
|
||||||
|
elm_box_pack_end(bx, tb);
|
||||||
|
evas_object_show(tb);
|
||||||
|
|
||||||
|
evas_object_resize(win, 420, 250);
|
||||||
|
evas_object_show(win);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue