forked from enlightenment/efl
Merge branch 'elmdnd'
Conflicts: trunk/TMP/st/elementary/.gitignore SVN revision: 51935
This commit is contained in:
parent
15ae42344e
commit
4bf9ee3df3
|
@ -719,7 +719,7 @@ _ecore_x_selection_parse(const char *target, void *data, int size, int format)
|
|||
if (!strcmp(prs->target, target))
|
||||
{
|
||||
sel = prs->parse(target, data, size, format);
|
||||
return sel;
|
||||
if (sel) return sel;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -851,6 +851,7 @@ _ecore_x_selection_parser_text(const char *target __UNUSED__,
|
|||
sel->text = (char *)data;
|
||||
ECORE_X_SELECTION_DATA(sel)->length = size;
|
||||
ECORE_X_SELECTION_DATA(sel)->content = ECORE_X_SELECTION_CONTENT_TEXT;
|
||||
ECORE_X_SELECTION_DATA(sel)->data = data;
|
||||
ECORE_X_SELECTION_DATA(sel)->free = _ecore_x_selection_data_text_free;
|
||||
return sel;
|
||||
} /* _ecore_x_selection_parser_text */
|
||||
|
|
|
@ -657,6 +657,13 @@ ecore_x_window_size_get(Ecore_X_Window win, int *w, int *h)
|
|||
|
||||
/**
|
||||
* Retrieves the geometry of the given window.
|
||||
*
|
||||
* Note that the x & y coordingates are relative to your parent. In
|
||||
* particular for reparenting window managers - relative to you window border.
|
||||
* If you want screen coordinates either walk the window tree to the root,
|
||||
* else for ecore_evas applications see ecore_evas_geometry_get(). Elementary
|
||||
* applications can use elm_win_screen_position_get().
|
||||
*
|
||||
* @param win The given window.
|
||||
* @param x Pointer to an integer in which the X position is to be stored.
|
||||
* @param y Pointer to an integer in which the Y position is to be stored.
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
*.o
|
||||
*.lo
|
||||
*.la
|
||||
.deps
|
||||
.libs
|
||||
.*.swp
|
||||
Makefile
|
||||
Makefile.in
|
||||
aclocal.m4
|
||||
autom4te.cache
|
||||
compile
|
||||
config.guess
|
||||
config.h
|
||||
config.h.in
|
||||
config.h.in~
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
cscope.out
|
||||
depcomp
|
||||
doc/edje.dox
|
||||
edje.pc
|
||||
edje.spec
|
||||
install-sh
|
||||
libtool
|
||||
ltmain.sh
|
||||
m4/libtool.m4
|
||||
m4/ltoptions.m4
|
||||
m4/ltsugar.m4
|
||||
m4/ltversion.m4
|
||||
m4/lt~obsolete.m4
|
||||
missing
|
||||
src/bin/edje_cc
|
||||
src/bin/edje_convert
|
||||
src/bin/edje_decc
|
||||
src/bin/edje_player
|
||||
stamp-h1
|
||||
tags
|
|
@ -164,7 +164,11 @@ enum _Edje_Cursor
|
|||
{
|
||||
EDJE_CURSOR_MAIN,
|
||||
EDJE_CURSOR_SELECTION_BEGIN,
|
||||
EDJE_CURSOR_SELECTION_END
|
||||
EDJE_CURSOR_SELECTION_END,
|
||||
EDJE_CURSOR_PREEDIT_START,
|
||||
EDJE_CURSOR_PREEDIT_END,
|
||||
EDJE_CURSOR_USER,
|
||||
EDJE_CURSOR_USER_EXTRA,
|
||||
// more later
|
||||
};
|
||||
typedef enum _Edje_Cursor Edje_Cursor;
|
||||
|
@ -515,15 +519,16 @@ typedef void (*Edje_Message_Handler_Cb) (void *data, Evas_Object *obj, Edje_Mess
|
|||
EAPI void edje_object_part_text_select_begin (const Evas_Object *obj, const char *part);
|
||||
EAPI void edje_object_part_text_select_extend (const Evas_Object *obj, const char *part);
|
||||
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_next (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_prev (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_up (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_down (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_begin_set (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_end_set (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_copy (const Evas_Object *obj, const char *part, Edje_Cursor src, Edje_Cursor dst);
|
||||
EAPI void edje_object_part_text_cursor_line_begin_set (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_line_end_set (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_next (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_prev (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_up (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_down (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_begin_set (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_end_set (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_copy (Evas_Object *obj, const char *part, Edje_Cursor src, Edje_Cursor dst);
|
||||
EAPI void edje_object_part_text_cursor_line_begin_set (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI void edje_object_part_text_cursor_line_end_set (Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_coord_set (Evas_Object *obj, const char *part, Edje_Cursor cur, Evas_Coord x, Evas_Coord y);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_is_format_get (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI Eina_Bool edje_object_part_text_cursor_is_visible_format_get(const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
EAPI const char *edje_object_part_text_cursor_content_get (const Evas_Object *obj, const char *part, Edje_Cursor cur);
|
||||
|
|
|
@ -544,8 +544,6 @@ edje_file_cache_get(void)
|
|||
/**
|
||||
* @brief Clean the file cache.
|
||||
*
|
||||
* @return The file cache size.
|
||||
*
|
||||
* This function cleans the file cache entries, but keeps this cache's
|
||||
* size to the last value set.
|
||||
*
|
||||
|
@ -615,8 +613,6 @@ edje_collection_cache_get(void)
|
|||
/**
|
||||
* @brief Clean the collection cache.
|
||||
*
|
||||
* @return The collection cache size.
|
||||
*
|
||||
* This function cleans the collection cache, but keeps this cache's
|
||||
* size to the last value set.
|
||||
*
|
||||
|
|
|
@ -44,6 +44,8 @@ struct _Entry
|
|||
Evas_Object *cursor_fg;
|
||||
Evas_Textblock_Cursor *cursor;
|
||||
Evas_Textblock_Cursor *sel_start, *sel_end;
|
||||
Evas_Textblock_Cursor *cursor_user, *cursor_user_extra;
|
||||
Evas_Textblock_Cursor *preedit_start, *preedit_end;
|
||||
Eina_List *sel;
|
||||
Eina_List *anchors;
|
||||
Eina_List *anchorlist;
|
||||
|
@ -2152,17 +2154,31 @@ _cursor_get(Edje_Real_Part *rp, Edje_Cursor cur)
|
|||
{
|
||||
Entry *en = rp->entry_data;
|
||||
if (!en) return NULL;
|
||||
|
||||
switch (cur)
|
||||
{
|
||||
case EDJE_CURSOR_MAIN:
|
||||
return en->cursor;
|
||||
break;
|
||||
case EDJE_CURSOR_SELECTION_BEGIN:
|
||||
return en->sel_start;
|
||||
break;
|
||||
case EDJE_CURSOR_SELECTION_END:
|
||||
return en->sel_end;
|
||||
break;
|
||||
case EDJE_CURSOR_PREEDIT_START:
|
||||
if (!en->preedit_start)
|
||||
en->preedit_start = evas_object_textblock_cursor_new(rp->object);
|
||||
return en->preedit_start;
|
||||
case EDJE_CURSOR_PREEDIT_END:
|
||||
if (!en->preedit_end)
|
||||
en->preedit_end = evas_object_textblock_cursor_new(rp->object);
|
||||
return en->preedit_end;
|
||||
case EDJE_CURSOR_USER:
|
||||
if (!en->cursor_user)
|
||||
en->cursor_user = evas_object_textblock_cursor_new(rp->object);
|
||||
return en->cursor_user;
|
||||
case EDJE_CURSOR_USER_EXTRA:
|
||||
if (!en->cursor_user_extra)
|
||||
en->cursor_user_extra = evas_object_textblock_cursor_new(rp->object);
|
||||
return en->cursor_user_extra;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -2418,6 +2434,16 @@ _edje_entry_cursor_line_end(Edje_Real_Part *rp, Edje_Cursor cur)
|
|||
_edje_entry_real_part_configure(rp);
|
||||
}
|
||||
|
||||
|
||||
Eina_Bool
|
||||
_edje_entry_cursor_coord_set(Edje_Real_Part *rp, Edje_Cursor cur,
|
||||
Evas_Coord x, Evas_Coord y)
|
||||
{
|
||||
Evas_Textblock_Cursor *c = _cursor_get(rp, cur);
|
||||
if (!c) return EINA_FALSE;
|
||||
return evas_textblock_cursor_char_coord_set(c, x, y);
|
||||
}
|
||||
|
||||
Eina_Bool
|
||||
_edje_entry_cursor_is_format_get(Edje_Real_Part *rp, Edje_Cursor cur)
|
||||
{
|
||||
|
@ -2603,3 +2629,5 @@ _edje_entry_imf_event_delete_surrounding_cb(void *data, int type __UNUSED__, voi
|
|||
return ECORE_CALLBACK_DONE;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/
|
||||
|
|
|
@ -1731,6 +1731,7 @@ void _edje_entry_cursor_begin(Edje_Real_Part *rp, Edje_Cursor cur);
|
|||
void _edje_entry_cursor_end(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
void _edje_entry_cursor_line_begin(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
void _edje_entry_cursor_line_end(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
Eina_Bool _edje_entry_cursor_coord_set(Edje_Real_Part *rp, Edje_Cursor cur, int x, int y);
|
||||
Eina_Bool _edje_entry_cursor_is_format_get(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
Eina_Bool _edje_entry_cursor_is_visible_format_get(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
const char *_edje_entry_cursor_content_get(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
|
|
|
@ -1854,7 +1854,7 @@ edje_object_part_text_select_extend(const Evas_Object *obj, const char *part)
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_next(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_next(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1877,7 +1877,7 @@ edje_object_part_text_cursor_next(const Evas_Object *obj, const char *part, Edje
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_prev(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_prev(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1900,7 +1900,7 @@ edje_object_part_text_cursor_prev(const Evas_Object *obj, const char *part, Edje
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_up(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_up(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1923,7 +1923,7 @@ edje_object_part_text_cursor_up(const Evas_Object *obj, const char *part, Edje_C
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_down(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_down(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1946,7 +1946,7 @@ edje_object_part_text_cursor_down(const Evas_Object *obj, const char *part, Edje
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI void
|
||||
edje_object_part_text_cursor_begin_set(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_begin_set(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1968,7 +1968,7 @@ edje_object_part_text_cursor_begin_set(const Evas_Object *obj, const char *part,
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI void
|
||||
edje_object_part_text_cursor_end_set(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_end_set(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -1990,7 +1990,7 @@ edje_object_part_text_cursor_end_set(const Evas_Object *obj, const char *part, E
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI void
|
||||
edje_object_part_text_cursor_copy(const Evas_Object *obj, const char *part, Edje_Cursor src, Edje_Cursor dst)
|
||||
edje_object_part_text_cursor_copy(Evas_Object *obj, const char *part, Edje_Cursor src, Edje_Cursor dst)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -2012,7 +2012,7 @@ edje_object_part_text_cursor_copy(const Evas_Object *obj, const char *part, Edje
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI void
|
||||
edje_object_part_text_cursor_line_begin_set(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_line_begin_set(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -2034,7 +2034,7 @@ edje_object_part_text_cursor_line_begin_set(const Evas_Object *obj, const char *
|
|||
* @param part The part name
|
||||
*/
|
||||
EAPI void
|
||||
edje_object_part_text_cursor_line_end_set(const Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
edje_object_part_text_cursor_line_end_set(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
@ -2049,6 +2049,36 @@ edje_object_part_text_cursor_line_end_set(const Evas_Object *obj, const char *pa
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Position the given cursor to a X,Y position.
|
||||
*
|
||||
* This is frequently used with the user cursor.
|
||||
*
|
||||
* @param obj An Edje object.
|
||||
* @param part The part containing the object.
|
||||
* @param cur The cursor to adjust.
|
||||
* @param x X Coordinate.
|
||||
* @param y Y Coordinate.
|
||||
* @return True on success, false on error.
|
||||
*/
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_coord_set(Evas_Object *obj, const char *part,
|
||||
Edje_Cursor cur, Evas_Coord x, Evas_Coord y)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
if ((!ed) || (!part)) return EINA_FALSE;
|
||||
rp = _edje_real_part_recursive_get(ed, (char *)part);
|
||||
if (!rp) return EINA_FALSE;
|
||||
if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
|
||||
{
|
||||
return _edje_entry_cursor_coord_set(rp, cur, x, y);
|
||||
}
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief XX
|
||||
*
|
||||
|
@ -2109,7 +2139,7 @@ edje_object_part_text_cursor_content_get(const Evas_Object *obj, const char *par
|
|||
|
||||
ed = _edje_fetch(obj);
|
||||
if ((!ed) || (!part)) return NULL;
|
||||
rp = _edje_real_part_recursive_get(ed, (char *)part);
|
||||
rp = _edje_real_part_recursive_get(ed, part);
|
||||
if (!rp) return NULL;
|
||||
if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
|
||||
{
|
||||
|
@ -4928,3 +4958,6 @@ edje_string_id_get(const Edje_String *es)
|
|||
if (!es) return NULL;
|
||||
return es->str;
|
||||
}
|
||||
|
||||
|
||||
/* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/
|
||||
|
|
Loading…
Reference in New Issue