forked from enlightenment/edi
settings: Line numbers (enable/disable).
Add an option for this as we support it.
This commit is contained in:
parent
7602963bd2
commit
1ae1048960
|
@ -285,6 +285,7 @@ _edi_config_init(void)
|
|||
EDI_CONFIG_VAL(D, T, gui.show_whitespace, EET_T_UCHAR);
|
||||
EDI_CONFIG_VAL(D, T, gui.width_marker, EET_T_UINT);
|
||||
EDI_CONFIG_VAL(D, T, gui.show_width_marker, EET_T_UCHAR);
|
||||
EDI_CONFIG_VAL(D, T, gui.show_line_numbers, EET_T_UCHAR);
|
||||
EDI_CONFIG_VAL(D, T, gui.tabstop, EET_T_UINT);
|
||||
EDI_CONFIG_VAL(D, T, gui.toolbar_hidden, EET_T_UCHAR);
|
||||
EDI_CONFIG_VAL(D, T, gui.toolbar_horizontal, EET_T_UCHAR);
|
||||
|
@ -523,6 +524,7 @@ _edi_project_config_load()
|
|||
|
||||
_edi_project_config->gui.width_marker = 80;
|
||||
_edi_project_config->gui.show_width_marker = EINA_TRUE;
|
||||
_edi_project_config->gui.show_line_numbers = EINA_TRUE;
|
||||
_edi_project_config->gui.tabstop = 8;
|
||||
_edi_project_config->gui.internal_icons = EINA_TRUE;
|
||||
_edi_project_config->gui.toolbar_hidden = EINA_FALSE;
|
||||
|
|
|
@ -96,6 +96,7 @@ struct _Edi_Project_Config
|
|||
|
||||
Eina_Bool tab_inserts_spaces;
|
||||
Eina_Bool show_width_marker;
|
||||
Eina_Bool show_line_numbers;
|
||||
} gui;
|
||||
|
||||
Edi_Project_Config_Launch launch;
|
||||
|
|
|
@ -1217,6 +1217,9 @@ _edi_editor_config_changed(void *data, int type EINA_UNUSED, void *event EINA_UN
|
|||
elm_code_widget_line_width_marker_set(widget, 0);
|
||||
else
|
||||
elm_code_widget_line_width_marker_set(widget, _edi_project_config->gui.width_marker);
|
||||
|
||||
elm_code_widget_line_numbers_set(widget, _edi_project_config->gui.show_line_numbers);
|
||||
|
||||
elm_code_widget_tabstop_set(widget, _edi_project_config->gui.tabstop);
|
||||
|
||||
return ECORE_CALLBACK_RENEW;
|
||||
|
|
|
@ -83,13 +83,22 @@ _edi_settings_display_tab_inserts_spaces_cb(void *data EINA_UNUSED, Evas_Object
|
|||
|
||||
static void
|
||||
_edi_settings_display_show_width_marker_cb(void *data EINA_UNUSED, Evas_Object *obj,
|
||||
void *event EINA_UNUSED)
|
||||
void *event EINA_UNUSED)
|
||||
{
|
||||
Evas_Object *check = (Evas_Object *)obj;
|
||||
_edi_project_config->gui.show_width_marker = elm_check_state_get(check);
|
||||
_edi_project_config_save();
|
||||
}
|
||||
|
||||
static void
|
||||
_edi_settings_display_line_numbers_cb(void *data EINA_UNUSED, Evas_Object *obj,
|
||||
void *event EINA_UNUSED)
|
||||
{
|
||||
Evas_Object *check = (Evas_Object *)obj;
|
||||
_edi_project_config->gui.show_line_numbers = elm_check_state_get(check);
|
||||
_edi_project_config_save();
|
||||
}
|
||||
|
||||
static void
|
||||
_edi_settings_display_width_marker_cb(void *data EINA_UNUSED, Evas_Object *obj,
|
||||
void *event EINA_UNUSED)
|
||||
|
@ -450,9 +459,24 @@ _edi_settings_display_create(Evas_Object *parent)
|
|||
evas_object_show(table);
|
||||
elm_box_pack_end(box, table);
|
||||
|
||||
label = elm_label_add(table);
|
||||
elm_object_text_set(label, _("Display line numbers"));
|
||||
evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0);
|
||||
evas_object_size_hint_align_set(label, EVAS_HINT_FILL, 0.5);
|
||||
elm_table_pack(table, label, 0, 0, 1, 1);
|
||||
evas_object_show(label);
|
||||
|
||||
check = elm_check_add(box);
|
||||
elm_check_state_set(check, _edi_project_config->gui.show_line_numbers);
|
||||
evas_object_size_hint_weight_set(check, 0.0, 0.0);
|
||||
evas_object_size_hint_align_set(check, 0.0, 0.5);
|
||||
evas_object_smart_callback_add(check, "changed",
|
||||
_edi_settings_display_line_numbers_cb, NULL);
|
||||
elm_table_pack(table, check, 1, 0, 1, 1);
|
||||
evas_object_show(check);
|
||||
|
||||
label = elm_label_add(table);
|
||||
elm_object_text_set(label, _("Display whitespace"));
|
||||
evas_object_size_hint_align_set(label, EVAS_HINT_EXPAND, 0.5);
|
||||
evas_object_size_hint_align_set(label, 0.0, 0.5);
|
||||
elm_table_pack(table, label, 3, 0, 1, 1);
|
||||
evas_object_show(label);
|
||||
|
|
Loading…
Reference in New Issue