billiob pushed a commit to branch master.

http://git.enlightenment.org/apps/terminology.git/commit/?id=144053f882053cb755144b8d2c1a1a76cc0e5607

commit 144053f882053cb755144b8d2c1a1a76cc0e5607
Author: Boris Faure <bill...@gmail.com>
Date:   Wed Mar 18 17:10:44 2015 +0100

    have the "xterm" cursor on the textgrid
---
 src/bin/win.c | 73 ++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 37 insertions(+), 36 deletions(-)

diff --git a/src/bin/win.c b/src/bin/win.c
index d07e444..177cdc9 100644
--- a/src/bin/win.c
+++ b/src/bin/win.c
@@ -39,7 +39,7 @@ struct _Term
    Win         *wn;
    Config      *config;
    Evas_Object *bg;
-   Evas_Object *base;
+   Evas_Object *base; // elm_layout
    Evas_Object *term;
    Evas_Object *media;
    Evas_Object *popmedia;
@@ -189,7 +189,7 @@ _cb_win_focus_in(void *data, Evas_Object *obj EINA_UNUSED, 
void *event EINA_UNUS
              if (term)
                {
                   edje_object_signal_emit(term->bg, "focus,out", 
"terminology");
-                  edje_object_signal_emit(term->base, "focus,out", 
"terminology");
+                  elm_layout_signal_emit(term->base, "focus,out", 
"terminology");
                   if (!wn->cmdbox_up) elm_object_focus_set(term->term, 
EINA_FALSE);
                }
              term = term_mouse;
@@ -205,7 +205,7 @@ _cb_win_focus_in(void *data, Evas_Object *obj EINA_UNUSED, 
void *event EINA_UNUS
    else
      {
         edje_object_signal_emit(term->bg, "focus,in", "terminology");
-        edje_object_signal_emit(term->base, "focus,in", "terminology");
+        elm_layout_signal_emit(term->base, "focus,in", "terminology");
         if (!wn->cmdbox_up) elm_object_focus_set(term->term, EINA_TRUE);
      }
 }
@@ -223,7 +223,7 @@ _cb_win_focus_out(void *data, Evas_Object *obj EINA_UNUSED,
    term = win_focused_term_get(wn);
    if (!term) return;
    edje_object_signal_emit(term->bg, "focus,out", "terminology");
-   edje_object_signal_emit(term->base, "focus,out", "terminology");
+   elm_layout_signal_emit(term->base, "focus,out", "terminology");
    if (!wn->cmdbox_up) elm_object_focus_set(term->term, EINA_FALSE);
 }
 
@@ -296,7 +296,7 @@ _win_trans(Win *wn, Term *term, Eina_Bool trans)
    else
      msg.val = 100;
    edje_object_message_send(term->bg, EDJE_MESSAGE_INT, 1, &msg);
-   edje_object_message_send(term->base, EDJE_MESSAGE_INT, 1, &msg);
+   edje_object_message_send(elm_layout_edje_get(term->base), EDJE_MESSAGE_INT, 
1, &msg);
 
    if (trans)
      {
@@ -771,7 +771,7 @@ _cb_size_hint(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj, void *event EIN
 
    evas_object_size_hint_min_get(obj, &mw, &mh);
    evas_object_size_hint_request_get(obj, &rw, &rh);
-   edje_object_size_min_calc(term->base, &w, &h);
+   edje_object_size_min_calc(elm_layout_edje_get(term->base), &w, &h);
    evas_object_size_hint_min_set(term->base, w, h);
    edje_object_size_min_calc(term->bg, &w, &h);
    evas_object_size_hint_min_set(term->bg, w, h);
@@ -1425,14 +1425,14 @@ _term_focus(Term *term)
                {
                   term2->focused = EINA_FALSE;
                   edje_object_signal_emit(term2->bg, "focus,out", 
"terminology");
-                  edje_object_signal_emit(term2->base, "focus,out", 
"terminology");
+                  elm_layout_signal_emit(term2->base, "focus,out", 
"terminology");
                   elm_object_focus_set(term2->term, EINA_FALSE);
                }
           }
      }
    term->focused = EINA_TRUE;
    edje_object_signal_emit(term->bg, "focus,in", "terminology");
-   edje_object_signal_emit(term->base, "focus,in", "terminology");
+   elm_layout_signal_emit(term->base, "focus,in", "terminology");
    if (term->wn->cmdbox) elm_object_focus_set(term->wn->cmdbox, EINA_FALSE);
    elm_object_focus_set(term->term, EINA_TRUE);
    elm_win_title_set(term->wn->win, termio_title_get(term->term));
@@ -2241,7 +2241,7 @@ _cb_media_del(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED, voi
    if (term->bg)
      {
         edje_object_signal_emit(term->bg, "media,off", "terminology");
-        edje_object_signal_emit(term->base, "media,off", "terminology");
+        elm_layout_signal_emit(term->base, "media,off", "terminology");
      }
    if (!config) return;
    if (config->temporary)
@@ -2269,26 +2269,26 @@ _term_media_update(Term *term, const Config *config)
                                     MEDIA_BG, type);
         evas_object_event_callback_add(o, EVAS_CALLBACK_DEL,
                                        _cb_media_del, term);
-        edje_object_part_swallow(term->base, "terminology.background", o);
+        elm_layout_content_set(term->base, "terminology.background", o);
         evas_object_show(o);
         term->mediatype = type;
         switch (type)
           {
            case MEDIA_TYPE_IMG:
               edje_object_signal_emit(term->bg, "media,image", "terminology");
-              edje_object_signal_emit(term->base, "media,image", 
"terminology");
+              elm_layout_signal_emit(term->base, "media,image", "terminology");
               break;
            case MEDIA_TYPE_SCALE:
               edje_object_signal_emit(term->bg, "media,scale", "terminology");
-              edje_object_signal_emit(term->base, "media,scale", 
"terminology");
+              elm_layout_signal_emit(term->base, "media,scale", "terminology");
               break;
            case MEDIA_TYPE_EDJE:
               edje_object_signal_emit(term->bg, "media,edje", "terminology");
-              edje_object_signal_emit(term->base, "media,edje", "terminology");
+              elm_layout_signal_emit(term->base, "media,edje", "terminology");
               break;
            case MEDIA_TYPE_MOV:
               edje_object_signal_emit(term->bg, "media,movie", "terminology");
-              edje_object_signal_emit(term->base, "media,movie", 
"terminology");
+              elm_layout_signal_emit(term->base, "media,movie", "terminology");
               break;
            case MEDIA_TYPE_UNKNOWN:
            default:
@@ -2303,7 +2303,7 @@ _term_media_update(Term *term, const Config *config)
                                             EVAS_CALLBACK_DEL,
                                             _cb_media_del);
              edje_object_signal_emit(term->bg, "media,off", "terminology");
-             edje_object_signal_emit(term->base, "media,off", "terminology");
+             elm_layout_signal_emit(term->base, "media,off", "terminology");
              evas_object_del(term->media);
              term->media = NULL;
           }
@@ -2479,18 +2479,18 @@ main_term_bg_config(Term *term)
      msg.val = 100;
 
    edje_object_message_send(term->bg, EDJE_MESSAGE_INT, 1, &msg);
-   edje_object_message_send(term->base, EDJE_MESSAGE_INT, 1, &msg);
+   edje_object_message_send(elm_layout_edje_get(term->base), EDJE_MESSAGE_INT, 
1, &msg);
 
    termio_theme_set(term->term, term->bg);
    edje_object_signal_callback_add(term->bg, "popmedia,done", "terminology",
-                                   _cb_popmedia_done, term); 
+                                   _cb_popmedia_done, term);
    edje_object_signal_callback_add(term->bg, "tabcount,go", "terminology",
                                    _cb_tabcount_go, term);
    edje_object_signal_callback_add(term->bg, "tabcount,prev", "terminology",
                                    _cb_tabcount_prev, term);
    edje_object_signal_callback_add(term->bg, "tabcount,next", "terminology",
                                    _cb_tabcount_next, term);
-   edje_object_part_swallow(term->base, "terminology.content", term->term);
+   elm_layout_content_set(term->base, "terminology.content", term->term);
    edje_object_part_swallow(term->bg, "terminology.content", term->base);
    edje_object_part_swallow(term->bg, "terminology.miniview", term->miniview);
    if (term->popmedia)
@@ -2516,24 +2516,24 @@ main_term_bg_config(Term *term)
      }
    if (term->media)
      {
-        edje_object_part_swallow(term->base, "terminology.background", 
term->media);
+        elm_layout_content_set(term->base, "terminology.background", 
term->media);
         switch (term->mediatype)
           {
            case MEDIA_TYPE_IMG:
               edje_object_signal_emit(term->bg, "media,image", "terminology");
-              edje_object_signal_emit(term->base, "media,image", 
"terminology");
+              elm_layout_signal_emit(term->base, "media,image", "terminology");
               break;
            case MEDIA_TYPE_SCALE:
               edje_object_signal_emit(term->bg, "media,scale", "terminology");
-              edje_object_signal_emit(term->base, "media,scale", 
"terminology");
+              elm_layout_signal_emit(term->base, "media,scale", "terminology");
               break;
            case MEDIA_TYPE_EDJE:
              edje_object_signal_emit(term->bg, "media,edje", "terminology");
-             edje_object_signal_emit(term->base, "media,edje", "terminology");
+             elm_layout_signal_emit(term->base, "media,edje", "terminology");
              break;
            case MEDIA_TYPE_MOV:
              edje_object_signal_emit(term->bg, "media,movie", "terminology");
-             edje_object_signal_emit(term->base, "media,movie", "terminology");
+             elm_layout_signal_emit(term->base, "media,movie", "terminology");
              break;
            case MEDIA_TYPE_UNKNOWN:
            default:
@@ -2544,7 +2544,7 @@ main_term_bg_config(Term *term)
    if ((term->focused) && (term->wn->focused))
      {
         edje_object_signal_emit(term->bg, "focus,in", "terminology");
-        edje_object_signal_emit(term->base, "focus,in", "terminology");
+        elm_layout_signal_emit(term->base, "focus,in", "terminology");
         if (term->wn->cmdbox)
           elm_object_focus_set(term->wn->cmdbox, EINA_FALSE);
         elm_object_focus_set(term->term, EINA_TRUE);
@@ -2561,7 +2561,7 @@ _cb_tabregion_change(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj, void *in
 
    evas_object_geometry_get(obj, NULL, NULL, &w, &h);
    evas_object_size_hint_min_set(term->tab_region_base, w, h);
-   edje_object_part_swallow(term->base, "terminology.tabregion", 
term->tab_region_base);
+   elm_layout_content_set(term->base, "terminology.tabregion", 
term->tab_region_base);
 }
 
 static void
@@ -2578,7 +2578,7 @@ _term_tabregion_setup(Term *term)
 
    term->tab_region_base = o = 
evas_object_rectangle_add(evas_object_evas_get(term->bg));
    evas_object_color_set(o, 0, 0, 0, 0);
-   edje_object_part_swallow(term->base, "terminology.tabregion", o);
+   elm_layout_content_set(term->base, "terminology.tabregion", o);
 }
 
 static void
@@ -2616,10 +2616,10 @@ _main_term_bg_redo(Term *term)
    evas_object_del(term->base);
    evas_object_del(term->bg);
 
-   term->base = o = edje_object_add(evas_object_evas_get(term->wn->win));
+   term->base = o = elm_layout_add(term->wn->win);
    theme_apply(o, term->config, "terminology/core");
 
-   theme_auto_reload_enable(o);
+   theme_auto_reload_enable(elm_layout_edje_get(o));
    evas_object_data_set(o, "theme_reload_func", main_term_bg_config);
    evas_object_data_set(o, "theme_reload_func_data", term);
    evas_object_show(o);
@@ -2686,11 +2686,11 @@ _cb_bell(void *data, Evas_Object *obj EINA_UNUSED, void 
*event EINA_UNUSED)
         Split *sp;
 
         edje_object_signal_emit(term->bg, "bell", "terminology");
-        edje_object_signal_emit(term->base, "bell", "terminology");
+        elm_layout_signal_emit(term->base, "bell", "terminology");
         if (config->bell_rings)
           {
              edje_object_signal_emit(term->bg, "bell,ring", "terminology");
-             edje_object_signal_emit(term->base, "bell,ring", "terminology");
+             elm_layout_signal_emit(term->base, "bell,ring", "terminology");
           }
         sp = _split_find(term->wn->win, term->term, NULL);
         if (sp)
@@ -2772,8 +2772,8 @@ term_new(Win *wn, Config *config, const char *cmd,
 {
    Term *term;
    Evas_Object *o;
-   Evas *canvas = evas_object_evas_get(wn->win);
    Edje_Message_Int msg;
+   Evas *canvas = evas_object_evas_get(wn->win);
 
    term = calloc(1, sizeof(Term));
    if (!term) return NULL;
@@ -2789,11 +2789,12 @@ term_new(Win *wn, Config *config, const char *cmd,
    term->wn = wn;
    term->hold = hold;
    term->config = config;
-   
-   term->base = o = edje_object_add(canvas);
+
+   term->base = o = elm_layout_add(wn->win);
    theme_apply(o, term->config, "terminology/core");
+   elm_object_cursor_set(o, "xterm");
 
-   theme_auto_reload_enable(o);
+   theme_auto_reload_enable(elm_layout_edje_get(term->base));
    evas_object_data_set(o, "theme_reload_func", main_term_bg_config);
    evas_object_data_set(o, "theme_reload_func_data", term);
    evas_object_show(o);
@@ -2822,7 +2823,7 @@ term_new(Win *wn, Config *config, const char *cmd,
      msg.val = 100;
 
    edje_object_message_send(term->bg, EDJE_MESSAGE_INT, 1, &msg);
-   edje_object_message_send(term->base, EDJE_MESSAGE_INT, 1, &msg);
+   edje_object_message_send(elm_layout_edje_get(term->base), EDJE_MESSAGE_INT, 
1, &msg);
 
    term->term = o = termio_add(wn->win, config, cmd, login_shell, cd,
                                size_w, size_h, term);
@@ -2857,7 +2858,7 @@ term_new(Win *wn, Config *config, const char *cmd,
    evas_object_size_hint_fill_set(o, 0, EVAS_HINT_FILL);
    evas_object_event_callback_add(o, EVAS_CALLBACK_CHANGED_SIZE_HINTS,
                                   _cb_size_hint, term);
-   edje_object_part_swallow(term->base, "terminology.content", o);
+   elm_layout_content_set(term->base, "terminology.content", o);
    edje_object_part_swallow(term->bg, "terminology.content", term->base);
    edje_object_part_swallow(term->bg, "terminology.miniview", term->miniview);
    evas_object_smart_callback_add(o, "options", _cb_options, term);

-- 


Reply via email to