From 86002b6b121e469b29ae9c26f67757ec8e134c66 Mon Sep 17 00:00:00 2001 From: Gwang O Lee Date: Sat, 20 Sep 2014 11:05:32 +0200 Subject: [PATCH] Add "Miniview" and "Close Terminal" controls Miniview button and icon are added. Thank you! Reviewers: seoz, raster, billiob Subscribers: seoz Differential Revision: https://phab.enlightenment.org/D1442 --- data/themes/default.edc | 1 + data/themes/images/icon_miniview.png | Bin 0 -> 523 bytes src/bin/controls.c | 60 ++++++++++++++++++--------- 3 files changed, 42 insertions(+), 19 deletions(-) create mode 100644 data/themes/images/icon_miniview.png diff --git a/data/themes/default.edc b/data/themes/default.edc index 5616114b..66970b27 100644 --- a/data/themes/default.edc +++ b/data/themes/default.edc @@ -3544,6 +3544,7 @@ target: "0.clip"; target: "1.clip"; target: "2.clip"; target: "3.clip"; target: ICON("new", "icon_new.png"); ICON("split-h", "icon_split_h.png"); ICON("split-v", "icon_split_v.png"); + ICON("mini-view", "icon_miniview.png"); ICON("close", "icon_close.png"); ICON("copy", "icon_copy.png"); ICON("paste", "icon_paste.png"); diff --git a/data/themes/images/icon_miniview.png b/data/themes/images/icon_miniview.png new file mode 100644 index 0000000000000000000000000000000000000000..e68ef0a625a52776a72a25d94170101e7f98309a GIT binary patch literal 523 zcmeAS@N?(olHy`uVBq!ia0vp^CP3`L!3HFE&bSuHz`%IP)5S3)gdG`rgnt4V}6Z88`6C zFo_?KEMUpG8FBrY+uEF+3-0ckc7|^Q`yA%oW^ctL7{4D_tUA@~W?3Ak>b11P49pw& zbC_P6E&te(bUb@S{@T#Bj2AXr_TEpm719cRb>q{?)Q-!>;>11;2v7XIW0u zv08N|QB>&HW+4xSMi!!p6>AsRRGi%}abCMPdVavp7i-dVqMLGMHCoOzMxLD`d9;jC zd`9?b-JFMyXMHq08rFDJYfH?Gb1W6hDt_!)!~UQ(>HlFHkCn9x9-RE4rPL`)`{r r;SIERS^IC=R;e4Cq&r^i{>75@VcL@I!K^~SNM`VK^>bP0l+XkK6ny1$ literal 0 HcmV?d00001 diff --git a/src/bin/controls.c b/src/bin/controls.c index d18320ee..365cd3a9 100644 --- a/src/bin/controls.c +++ b/src/bin/controls.c @@ -7,8 +7,8 @@ #include "termio.h" #include "main.h" -static Evas_Object *ct_frame = NULL, *ct_boxh = NULL, *ct_box = NULL; -static Evas_Object *ct_box2 = NULL, *ct_over = NULL; +static Evas_Object *ct_frame = NULL, *ct_boxh = NULL, *ct_boxv = NULL; +static Evas_Object *ct_box = NULL, *ct_box2 = NULL, *ct_box3 = NULL, *ct_over = NULL; static Eina_Bool ct_out = EINA_FALSE; static Ecore_Timer *ct_del_timer = NULL; static Evas_Object *ct_win = NULL, *ct_bg = NULL, *ct_term = NULL; @@ -85,6 +85,12 @@ _cb_ct_split_h(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event main_split_h(ct_win, ct_term, NULL); } +static void +_cb_ct_miniview(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) +{ + term_miniview_toggle(termio_term_get(ct_term)); +} + static void _cb_ct_close(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) { @@ -240,36 +246,41 @@ controls_toggle(Evas_Object *win, Evas_Object *bg, Evas_Object *term, evas_object_size_hint_align_set(o, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_object_text_set(o, _("Controls")); - ct_boxh = o = elm_box_add(win); - elm_box_horizontal_set(o, EINA_TRUE); + ct_boxv = o = elm_box_add(win); + elm_box_horizontal_set(o, EINA_FALSE); elm_object_content_set(ct_frame, o); evas_object_show(o); - ct_box2 = o = elm_box_add(win); + ct_boxh = o = elm_box_add(win); + elm_box_pack_end(ct_boxv, o); + elm_box_horizontal_set(o, EINA_TRUE); + evas_object_show(o); + + ct_box = o = elm_box_add(win); elm_box_pack_end(ct_boxh, o); evas_object_show(o); o = _button_add(win, _("New"), "new", _cb_ct_new, NULL); - elm_box_pack_end(ct_box2, o); + elm_box_pack_end(ct_box, o); o = _sep_add_h(win); - elm_box_pack_end(ct_box2, o); + elm_box_pack_end(ct_box, o); o = _button_add(win, _("Split V"), "split-h", _cb_ct_split_v, NULL); - elm_box_pack_end(ct_box2, o); + elm_box_pack_end(ct_box, o); o = _button_add(win, _("Split H"), "split-v", _cb_ct_split_h, NULL); - elm_box_pack_end(ct_box2, o); + elm_box_pack_end(ct_box, o); o = _sep_add_h(win); - elm_box_pack_end(ct_box2, o); + elm_box_pack_end(ct_box, o); - o = _button_add(win, _("Close"), "close", _cb_ct_close, NULL); - elm_box_pack_end(ct_box2, o); + o = _button_add(win, _("Miniview"), "mini-view", _cb_ct_miniview, NULL); + elm_box_pack_end(ct_box, o); o = _sep_add_v(win); elm_box_pack_end(ct_boxh, o); - ct_box = o = elm_box_add(win); + ct_box2 = o = elm_box_add(win); elm_box_pack_end(ct_boxh, o); evas_object_show(o); @@ -277,21 +288,32 @@ controls_toggle(Evas_Object *win, Evas_Object *bg, Evas_Object *term, evas_object_data_set(ct_frame, "bt_copy", o); if (!termio_selection_exists(term)) elm_object_disabled_set(o, EINA_TRUE); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); + o = _button_add(win, _("Paste"), "paste", _cb_ct_paste, NULL); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); o = _sep_add_h(win); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); o = _button_add(win, _("Settings"), "settings", _cb_ct_options, NULL); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); o = _sep_add_h(win); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); o = _button_add(win, _("About"), "about", _cb_ct_about, NULL); - elm_box_pack_end(ct_box, o); + elm_box_pack_end(ct_box2, o); + + o = _sep_add_h(win); + elm_box_pack_end(ct_boxv, o); + + ct_box3 = o = elm_box_add(win); + elm_box_pack_end(ct_boxv, o); + evas_object_show(o); + + o = _button_add(win, _("Close Terminal"), "close", _cb_ct_close, NULL); + elm_box_pack_end(ct_box3, o); evas_object_event_callback_add(ct_frame, EVAS_CALLBACK_DEL, _cb_frame_del, NULL);