enventor - code refactoring before implementing futher group switching feature.

This commit is contained in:
ChunEon Park 2013-09-19 02:05:46 +09:00
parent 15b6b18bf5
commit cdbfb514f8
2 changed files with 15 additions and 10 deletions

View File

@ -25,8 +25,9 @@ struct editor_s
Ecore_Idler *syntax_color_timer;
void (*part_changed_cb)(void *data, const char *part_name);
void *part_changed_cb_data;
void (*view_sync_cb)(void *data, Eina_Stringshare *part_name,
Eina_Stringshare *group_name);
void *view_sync_cb_data;
Eina_Bool edit_changed : 1;
Eina_Bool linenumber : 1;
@ -596,8 +597,9 @@ cur_name_get_cb(void *data, Eina_Stringshare *part_name,
Eina_Stringshare *group_name)
{
edit_data *ed = data;
if (ed->part_changed_cb)
ed->part_changed_cb(ed->part_changed_cb_data, part_name);
if (ed->view_sync_cb)
ed->view_sync_cb(ed->view_sync_cb_data, part_name, group_name);
}
void
@ -618,10 +620,12 @@ edit_cursor_changed_cb(void *data, Evas_Object *obj EINA_UNUSED,
}
void
edit_part_changed_cb_set(edit_data *ed, void (*cb)(void *data, const char *part_name), void *data)
edit_view_sync_cb_set(edit_data *ed,
void (*cb)(void *data, Eina_Stringshare *part_name,
Eina_Stringshare *group_name), void *data)
{
ed->part_changed_cb = cb;
ed->part_changed_cb_data = data;
ed->view_sync_cb = cb;
ed->view_sync_cb_data = data;
}
static Eina_Bool

View File

@ -404,7 +404,8 @@ main_key_down_cb(void *data, int type EINA_UNUSED, void *ev)
}
static void
part_changed_cb(void *data, const char *part_name)
view_sync_cb(void *data, Eina_Stringshare *part_name,
Eina_Stringshare *group_name)
{
app_data *ad = data;
view_part_highlight_set(ad->vd, part_name);
@ -416,7 +417,7 @@ edc_edit_set(app_data *ad, stats_data *sd, config_data *cd)
edit_data *ed = edit_init(ad->panes, sd, cd);
edit_edc_read(ed, config_edc_path_get(cd));
elm_object_part_content_set(ad->panes, "right", edit_obj_get(ed));
edit_part_changed_cb_set(ed, part_changed_cb, ad);
edit_view_sync_cb_set(ed, view_sync_cb, ad);
ad->ed = ed;
}
@ -457,7 +458,7 @@ config_update_cb(void *data, config_data *cd)
rebuild_edc();
edit_changed_set(ad->ed, EINA_FALSE);
view_new(ad->vd, stats_group_name_get(ad->sd));
part_changed_cb(ad, NULL);
view_sync_cb(ad, NULL, NULL);
if (ad->edc_monitor) eio_monitor_del(ad->edc_monitor);
ad->edc_monitor = eio_monitor_add(config_edc_path_get(ad->cd));
}