Tizen Native API  7.0

Functions that deal with dragable parts.

To create a movable part it must be declared as dragable in EDC file. To do so, one must define a "dragable" block inside the "part" block.

These functions are used to set dragging properties to a part or get dragging information about it.

See also:
Dragable parts example *

Functions

Eina_Bool edje_object_part_drag_value_set (Evas_Object *obj, const char *part, double dx, double dy)
 Sets the dragable object location.
Eina_Bool edje_object_part_drag_value_get (const Evas_Object *obj, const char *part, double *dx, double *dy)
 Gets the dragable object location.
Eina_Bool edje_object_part_drag_size_set (Evas_Object *obj, const char *part, double dw, double dh)
 Sets the dragable object size.
Eina_Bool edje_object_part_drag_size_get (const Evas_Object *obj, const char *part, double *dw, double *dh)
 Gets the dragable object size.
Edje_Drag_Dir edje_object_part_drag_dir_get (const Evas_Object *obj, const char *part)
 Determines dragable directions.
Eina_Bool edje_object_part_drag_step_set (Evas_Object *obj, const char *part, double dx, double dy)
 Sets the drag step increment.
Eina_Bool edje_object_part_drag_step_get (const Evas_Object *obj, const char *part, double *dx, double *dy)
 Gets the drag step increment values.
Eina_Bool edje_object_part_drag_step (Evas_Object *obj, const char *part, double dx, double dy)
 Steps the dragable x,y steps.
Eina_Bool edje_object_part_drag_page_set (Evas_Object *obj, const char *part, double dx, double dy)
 Sets the page step increments.
Eina_Bool edje_object_part_drag_page_get (const Evas_Object *obj, const char *part, double *dx, double *dy)
 Gets the page step increments.
Eina_Bool edje_object_part_drag_page (Evas_Object *obj, const char *part, double dx, double dy)
 Pages x,y steps.

Typedefs

typedef enum _Edje_Drag_Dir Edje_Drag_Dir

Typedef Documentation

Directions in which a part can be dragged .


Enumeration Type Documentation

Directions in which a part can be dragged .

Enumerator:
EDJE_DRAG_DIR_NONE 

Part cannot be dragged.

EDJE_DRAG_DIR_X 

Part can be dragged in the horizontal direction.

EDJE_DRAG_DIR_Y 

Part can be dragged in the vertical direction.

EDJE_DRAG_DIR_XY 

Part can be dragged in every direction.


Function Documentation

Edje_Drag_Dir edje_object_part_drag_dir_get ( const Evas_Object obj,
const char *  part 
)

Determines dragable directions.

The dragable directions are defined in the EDC file, inside the "dragable" section, by the attributes x and y. See the edcref for more information.

Parameters:
[in]partThe part name
Returns:
EDJE_DRAG_DIR_NONE: Not dragable EDJE_DRAG_DIR_X: Dragable in X direction EDJE_DRAG_DIR_Y: Dragable in Y direction EDJE_DRAG_DIR_XY: Dragable in X & Y directions
Since :
2.3
Eina_Bool edje_object_part_drag_page ( Evas_Object obj,
const char *  part,
double  dx,
double  dy 
)

Pages x,y steps.

Pages x,y where the increment is defined by edje_object_part_drag_page_set().

Values for dx and dy are real numbers that range from 0 to 1.

Warning:
Paging is bugged!

See also edje_object_part_drag_step()

Parameters:
[in]partThe part name
[in]dxThe x step
[in]dyThe y step
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_page_get ( const Evas_Object obj,
const char *  part,
double *  dx,
double *  dy 
)

Gets the page step increments.

Gets the x,y page step increments for the dragable object.

See also edje_object_part_drag_page_set()

Parameters:
[in]partThe part name
[out]dxThe x page step increment
[out]dyThe y page step increment
Returns:
true on success, false otherwise
Since :
2.3
Eina_Bool edje_object_part_drag_page_set ( Evas_Object obj,
const char *  part,
double  dx,
double  dy 
)

Sets the page step increments.

Sets the x,y page step increment values.

Values for dx and dy are real numbers that range from 0 to 1, representing the relative size of the dragable area on that axis by which the part will be moved.

See also edje_object_part_drag_page_get()

Parameters:
[in]partThe part name
[in]dxThe x page step increment
[in]dyThe y page step increment
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_size_get ( const Evas_Object obj,
const char *  part,
double *  dw,
double *  dh 
)

Gets the dragable object size.

Gets the dragable object size.

See also edje_object_part_drag_size_set()

Parameters:
[in]partThe part name
[out]dwThe drag width
[out]dhThe drag height
Returns:
true on success, false otherwise
Since :
2.3
Eina_Bool edje_object_part_drag_size_set ( Evas_Object obj,
const char *  part,
double  dw,
double  dh 
)

Sets the dragable object size.

Values for dw and dh are real numbers that range from 0 to 1, representing the relative size of the dragable area on that axis.

Sets the size of the dragable object.

See also edje_object_part_drag_size_get()

Parameters:
[in]partThe part name
[in]dwThe drag width
[in]dhThe drag height
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_step ( Evas_Object obj,
const char *  part,
double  dx,
double  dy 
)

Steps the dragable x,y steps.

Steps x,y where the step increment is the amount set by edje_object_part_drag_step_set().

Values for dx and dy are real numbers that range from 0 to 1.

See also edje_object_part_drag_page()

Parameters:
[in]partThe part name
[in]dxThe x step
[in]dyThe y step
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_step_get ( const Evas_Object obj,
const char *  part,
double *  dx,
double *  dy 
)

Gets the drag step increment values.

Gets the x and y step increments for the dragable object.

See also edje_object_part_drag_step_set()

Parameters:
[in]partThe part name
[out]dxThe x step amount
[out]dyThe y step amount
Returns:
true on success, false otherwise
Since :
2.3
Eina_Bool edje_object_part_drag_step_set ( Evas_Object obj,
const char *  part,
double  dx,
double  dy 
)

Sets the drag step increment.

Sets the x,y step increments for a dragable object.

Values for dx and dy are real numbers that range from 0 to 1, representing the relative size of the dragable area on that axis by which the part will be moved.

See also edje_object_part_drag_step_get()

Parameters:
[in]partThe part name
[in]dxThe x step amount
[in]dyThe y step amount
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_value_get ( const Evas_Object obj,
const char *  part,
double *  dx,
double *  dy 
)

Gets the dragable object location.

Values for dx and dy are real numbers that range from 0 to 1, representing the relative position to the dragable area on that axis.

See also edje_object_part_drag_value_set()

Gets the drag location values.

Parameters:
[in]partThe part name
[out]dxThe x value
[out]dyThe y value
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.
Eina_Bool edje_object_part_drag_value_set ( Evas_Object obj,
const char *  part,
double  dx,
double  dy 
)

Sets the dragable object location.

Places the dragable object at the given location.

Values for dx and dy are real numbers that range from 0 to 1, representing the relative position to the dragable area on that axis.

This value means, for the vertical axis, that 0.0 will be at the top if the first parameter of y in the dragable part theme is 1, and at bottom if it is -1.

For the horizontal axis, 0.0 means left if the first parameter of x in the dragable part theme is 1, and right if it is -1.

See also edje_object_part_drag_value_get()

Parameters:
[in]partThe part name
[in]dxThe x value
[in]dyThe y value
Returns:
true on success, false otherwise
Since :
2.3
Examples:
edje-drag.c.