forked from enlightenment/edi
autosuggest: Move formatting to 1 place
Also correctly handle fonts with spaces @fix
This commit is contained in:
parent
f9b8129724
commit
9cef5db6c5
|
@ -110,36 +110,22 @@ _edi_editor_current_word_get(Edi_Editor *editor, unsigned int row, unsigned int
|
||||||
return curword;
|
return curword;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static const char *
|
||||||
_suggest_item_return_get(Suggest_Item *item)
|
_suggest_item_return_get(Suggest_Item *item)
|
||||||
{
|
{
|
||||||
char *ret_str;
|
|
||||||
int retlen;
|
|
||||||
|
|
||||||
if (!item->ret)
|
if (!item->ret)
|
||||||
return strdup("");
|
return "";
|
||||||
|
|
||||||
retlen = strlen(item->ret) + 6;
|
return item->ret;
|
||||||
ret_str = malloc(sizeof(char) * retlen);
|
|
||||||
snprintf(ret_str, retlen, " %s<br>", item->ret);
|
|
||||||
|
|
||||||
return ret_str;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static char *
|
static const char *
|
||||||
_suggest_item_parameter_get(Suggest_Item *item)
|
_suggest_item_parameter_get(Suggest_Item *item)
|
||||||
{
|
{
|
||||||
char *param_str;
|
|
||||||
int paramlen;
|
|
||||||
|
|
||||||
if (!item->param)
|
if (!item->param)
|
||||||
return strdup("");
|
return "";
|
||||||
|
|
||||||
paramlen = strlen(item->param) + 6;
|
return item->param;
|
||||||
param_str = malloc(sizeof(char) * paramlen);
|
|
||||||
snprintf(param_str, paramlen, "<br>%s", item->param);
|
|
||||||
|
|
||||||
return param_str;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -172,7 +158,7 @@ _suggest_list_content_get(void *data, Evas_Object *obj, const char *part)
|
||||||
editor = (Edi_Editor *)evas_object_data_get(item->view, "editor");
|
editor = (Edi_Editor *)evas_object_data_get(item->view, "editor");
|
||||||
elm_code_widget_font_get(editor->entry, &font, &font_size);
|
elm_code_widget_font_get(editor->entry, &font, &font_size);
|
||||||
|
|
||||||
format = "<align=left><font=%s><font_size=%d> %s</font_size></font></align>";
|
format = "<align=left><font=\"%s\"><font_size=%d> %s</font_size></font></align>";
|
||||||
displen = strlen(suggest_it->name) + strlen(format) + strlen(font);
|
displen = strlen(suggest_it->name) + strlen(format) + strlen(font);
|
||||||
display = malloc(sizeof(char) * displen);
|
display = malloc(sizeof(char) * displen);
|
||||||
snprintf(display, displen, format, font, font_size, suggest_it->name);
|
snprintf(display, displen, format, font, font_size, suggest_it->name);
|
||||||
|
@ -194,8 +180,8 @@ _suggest_list_cb_selected(void *data, Evas_Object *obj EINA_UNUSED, void *event_
|
||||||
Edi_Mainview_Item *item;
|
Edi_Mainview_Item *item;
|
||||||
Suggest_Item *suggest_it;
|
Suggest_Item *suggest_it;
|
||||||
Evas_Object *label = data;
|
Evas_Object *label = data;
|
||||||
char *format, *display, *ret_str, *param_str;
|
char *format, *display;
|
||||||
const char *font;
|
const char *font, *ret_str, *param_str;
|
||||||
int font_size, displen;
|
int font_size, displen;
|
||||||
|
|
||||||
suggest_it = elm_object_item_data_get(event_info);
|
suggest_it = elm_object_item_data_get(event_info);
|
||||||
|
@ -211,7 +197,7 @@ _suggest_list_cb_selected(void *data, Evas_Object *obj EINA_UNUSED, void *event_
|
||||||
ret_str = _suggest_item_return_get(suggest_it);
|
ret_str = _suggest_item_return_get(suggest_it);
|
||||||
param_str = _suggest_item_parameter_get(suggest_it);
|
param_str = _suggest_item_parameter_get(suggest_it);
|
||||||
|
|
||||||
format = "<align=left><font=%s><font_size=%d>%s<b> %s</b>%s</font_size></font></align>";
|
format = "<align=left><font=\"%s\"><font_size=%d>%s<br><b>%s</b><br> %s</font_size></font></align>";
|
||||||
displen = strlen(ret_str) + strlen(param_str) + strlen(suggest_it->name)
|
displen = strlen(ret_str) + strlen(param_str) + strlen(suggest_it->name)
|
||||||
+ strlen(format) + strlen(font);
|
+ strlen(format) + strlen(font);
|
||||||
display = malloc(sizeof(char) * displen);
|
display = malloc(sizeof(char) * displen);
|
||||||
|
@ -220,8 +206,6 @@ _suggest_list_cb_selected(void *data, Evas_Object *obj EINA_UNUSED, void *event_
|
||||||
|
|
||||||
elm_object_text_set(label, display);
|
elm_object_text_set(label, display);
|
||||||
free(display);
|
free(display);
|
||||||
free(ret_str);
|
|
||||||
free(param_str);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in New Issue