~~Title: Efl.Text_Cursor~~ ====== Efl.Text_Cursor (interface) ====== ===== Description ===== %%Cursor API%% {{page>:develop:api-include:efl:text_cursor:description&nouser&nolink&nodate}} ===== Members ===== **[[:develop:api:efl:text_cursor:method:cursor_char_delete|cursor_char_delete]]**\\ > %%Deletes a single character from position pointed by given cursor.%% void efl_text_cursor_char_delete(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_char_next|cursor_char_next]]**\\ > %%Advances to the next character%% void efl_text_cursor_char_next(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_char_prev|cursor_char_prev]]**\\ > %%Advances to the previous character%% void efl_text_cursor_char_prev(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_cluster_coord_set|cursor_cluster_coord_set]]**\\ > %%Set cursor coordinates according to grapheme clusters. It does not allow to put a cursor to the middle of a grapheme cluster.%% void efl_text_cursor_cluster_coord_set(Eo *obj, Efl_Text_Cursor_Cursor *cur, int x, int y); \\ **[[:develop:api:efl:text_cursor:method:cursor_cluster_next|cursor_cluster_next]]**\\ > %%Advances to the next grapheme cluster%% void efl_text_cursor_cluster_next(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_cluster_prev|cursor_cluster_prev]]**\\ > %%Advances to the previous grapheme cluster%% void efl_text_cursor_cluster_prev(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_compare|cursor_compare]]**\\ > %%Compare two cursors%% int efl_text_cursor_compare(Eo *obj, const Efl_Text_Cursor_Cursor *cur1, const Efl_Text_Cursor_Cursor *cur2); \\ **[[:develop:api:efl:text_cursor:property:cursor_content|cursor_content]]** //**(get)**//\\ > Eina_Unicode efl_text_cursor_content_get(const Eo *obj, const Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_coord_set|cursor_coord_set]]**\\ > %%Set cursor coordinates%% void efl_text_cursor_coord_set(Eo *obj, Efl_Text_Cursor_Cursor *cur, int x, int y); \\ **[[:develop:api:efl:text_cursor:method:cursor_copy|cursor_copy]]**\\ > %%Copy existing cursor%% void efl_text_cursor_copy(Eo *obj, Efl_Text_Cursor_Cursor *dst, const Efl_Text_Cursor_Cursor *src); \\ **[[:develop:api:efl:text_cursor:method:cursor_equal|cursor_equal]]**\\ > %%Check if two cursors are equal%% Eina_Bool efl_text_cursor_equal(Eo *obj, const Efl_Text_Cursor_Cursor *cur1, const Efl_Text_Cursor_Cursor *cur2); \\ **[[:develop:api:efl:text_cursor:method:cursor_free|cursor_free]]**\\ > %%Free existing cursor%% void efl_text_cursor_free(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:property:cursor_geometry|cursor_geometry]]** //**(get)**//\\ > Eina_Bool efl_text_cursor_geometry_get(const Eo *obj, const Efl_Text_Cursor_Cursor *cur, Efl_Text_Cursor_Type ctype, int *cx, int *cy, int *cw, int *ch, int *cx2, int *cy2, int *cw2, int *ch2); \\ **[[:develop:api:efl:text_cursor:method:cursor_line_char_first|cursor_line_char_first]]**\\ > %%Advance to current line first character%% void efl_text_cursor_line_char_first(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_line_char_last|cursor_line_char_last]]**\\ > %%Advance to current line last character%% void efl_text_cursor_line_char_last(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_line_jump_by|cursor_line_jump_by]]**\\ > %%Jump the cursor by the given number of lines%% void efl_text_cursor_line_jump_by(Eo *obj, Efl_Text_Cursor_Cursor *cur, int by); \\ **[[:develop:api:efl:text_cursor:method:cursor_new|cursor_new]]**\\ > %%Create new cursor%% Efl_Text_Cursor_Cursor *efl_text_cursor_new(Eo *obj); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_char_first|cursor_paragraph_char_first]]**\\ > %%Advances to the first character in this paragraph%% void efl_text_cursor_paragraph_char_first(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_char_last|cursor_paragraph_char_last]]**\\ > %%Advances to the last character in this paragraph%% void efl_text_cursor_paragraph_char_last(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_first|cursor_paragraph_first]]**\\ > %%Advance to current paragraph first character%% void efl_text_cursor_paragraph_first(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_last|cursor_paragraph_last]]**\\ > %%Advance to current paragraph last character%% void efl_text_cursor_paragraph_last(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_next|cursor_paragraph_next]]**\\ > %%Advances to the start of the next text node%% void efl_text_cursor_paragraph_next(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_paragraph_prev|cursor_paragraph_prev]]**\\ > %%Advances to the end of the previous text node%% void efl_text_cursor_paragraph_prev(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:property:cursor_position|cursor_position]]** //**(get, set)**//\\ > %%Cursor position%% int efl_text_cursor_position_get(const Eo *obj, Efl_Text_Cursor_Cursor *cur); void efl_text_cursor_position_set(Eo *obj, Efl_Text_Cursor_Cursor *cur, int position); \\ **[[:develop:api:efl:text_cursor:method:cursor_text_insert|cursor_text_insert]]**\\ > %%Adds text to the current cursor position and set the cursor to *after* the start of the text just added.%% int efl_text_cursor_text_insert(Eo *obj, Efl_Text_Cursor_Cursor *cur, const char *text); \\ **[[:develop:api:efl:text_cursor:method:cursor_word_end|cursor_word_end]]**\\ > %%Advance to current word end%% void efl_text_cursor_word_end(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:method:cursor_word_start|cursor_word_start]]**\\ > %%Advance to current word start%% void efl_text_cursor_word_start(Eo *obj, Efl_Text_Cursor_Cursor *cur); \\ **[[:develop:api:efl:text_cursor:property:text_cursor|text_cursor]]** //**(get)**//\\ > Efl_Text_Cursor_Cursor *efl_text_cursor_get(const Eo *obj, Efl_Text_Cursor_Get_Type get_type); \\ ===== Events =====