forked from enlightenment/efl
edje/dragable - Docs and example for dragable parts API.
SVN revision: 62076
This commit is contained in:
parent
bfca423e7e
commit
9d039d3641
|
@ -11,6 +11,7 @@
|
||||||
* @li @ref Example_Edje_Signals_Messages
|
* @li @ref Example_Edje_Signals_Messages
|
||||||
* @li @ref tutorial_edje_box
|
* @li @ref tutorial_edje_box
|
||||||
* @li @ref tutorial_edje_box2
|
* @li @ref tutorial_edje_box2
|
||||||
|
* @li @ref tutorial_edje_drag
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -399,6 +400,88 @@
|
||||||
* @example edje-box2.c
|
* @example edje-box2.c
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @page tutorial_edje_drag Dragable parts example
|
||||||
|
*
|
||||||
|
* This example shows how to manipulate a dragable part through the
|
||||||
|
* edje_object_part_drag API.
|
||||||
|
*
|
||||||
|
* First, in the edc code, we are declaring a part which will be our movable
|
||||||
|
* part, called "knob". It is a normal rectangle, which contains a block called
|
||||||
|
* "dragable", that will define the area where this rectangle can be moved, and
|
||||||
|
* in which axis it can be moved.
|
||||||
|
*
|
||||||
|
* This is our part:
|
||||||
|
*
|
||||||
|
* @dontinclude drag.edc
|
||||||
|
* @skip // drag_area
|
||||||
|
* @skip part
|
||||||
|
* @until example/knob
|
||||||
|
* @until example/knob
|
||||||
|
*
|
||||||
|
* Notice that it defines, through its @c "x:" and @c "y:' properties, that the
|
||||||
|
* part will be only moved on the y axis (vertical). Check the edc reference
|
||||||
|
* docs for more info about this.
|
||||||
|
*
|
||||||
|
* Now, in our example C code, we just do the same as on the other examples,
|
||||||
|
* setting some global data on a structure, load the edje file and so:
|
||||||
|
*
|
||||||
|
* @dontinclude edje-drag.c
|
||||||
|
* @skip value changed
|
||||||
|
* @skip }
|
||||||
|
* @skip int
|
||||||
|
* @until evas_object_show(app.edje)
|
||||||
|
*
|
||||||
|
* We want to use the drag_page and drag_step functions, and in order to do so we
|
||||||
|
* need to define the step size and page size of our dragable part. They are
|
||||||
|
* defined as float values which represent a portion of the entire size of the
|
||||||
|
* dragable area:
|
||||||
|
*
|
||||||
|
* @until drag page step
|
||||||
|
*
|
||||||
|
* We are going to use the keyboard to move the @c knob part, through the key
|
||||||
|
* down callback @c _bg_key_down, but we also want to know when the user has
|
||||||
|
* moved the knob by using the mouse (which is possible, since we defined that
|
||||||
|
* this part will receive mouse events). Thus, we set a callback for the signal
|
||||||
|
* "drag", which comes from the dragable part:
|
||||||
|
*
|
||||||
|
* @until _knob_moved_cb
|
||||||
|
*
|
||||||
|
* Now, let's take a look at our key down callback:
|
||||||
|
*
|
||||||
|
* @dontinclude edje-drag.c
|
||||||
|
* @skip _canvas_resize_cb
|
||||||
|
* @skip static
|
||||||
|
* @until unhandled key
|
||||||
|
* @until }
|
||||||
|
*
|
||||||
|
* On this callback we define that the user will use the "up" and "down" arrows
|
||||||
|
* to move the dragable part, respectively, -1.0 and 1.0 times the step size.
|
||||||
|
* And that the "Page Up" (Prior) and "Page Down" (Next) keys will move -1.0 and
|
||||||
|
* 1.0 times the page size. Both of these will occur on the vertical axis, since
|
||||||
|
* we pass 0.0 as value to the respective horizontal axis parameters. And our
|
||||||
|
* dragable part also only supports being moved in the vertical axis (defined in
|
||||||
|
* the edc).
|
||||||
|
*
|
||||||
|
* We also define that the "m" key will be used to explicitly position the knob
|
||||||
|
* part in the middle of the dragable area.
|
||||||
|
*
|
||||||
|
* And here is the callback for the @c "drag" signal that is received from the
|
||||||
|
* theme:
|
||||||
|
*
|
||||||
|
* @until }
|
||||||
|
*
|
||||||
|
* The example's window should look like this picture:
|
||||||
|
*
|
||||||
|
* @image html edje-drag-example.png
|
||||||
|
* @image rtf edje-drag-example.png
|
||||||
|
* @image latex edje-drag-example.eps
|
||||||
|
*
|
||||||
|
* The full source code follows:
|
||||||
|
* @include edje-drag.c
|
||||||
|
* @example edje-drag.c
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @page Example_Edje_Signals_Messages Edje signals and messages
|
* @page Example_Edje_Signals_Messages Edje signals and messages
|
||||||
*
|
*
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
Binary file not shown.
After Width: | Height: | Size: 3.8 KiB |
|
@ -8,6 +8,7 @@ EDCS = basic.edc \
|
||||||
text.edc \
|
text.edc \
|
||||||
table.edc \
|
table.edc \
|
||||||
box.edc \
|
box.edc \
|
||||||
|
drag.edc \
|
||||||
signals-messages.edc \
|
signals-messages.edc \
|
||||||
color-class.edc
|
color-class.edc
|
||||||
|
|
||||||
|
@ -37,6 +38,7 @@ pkglib_PROGRAMS += \
|
||||||
edje-table \
|
edje-table \
|
||||||
edje-box \
|
edje-box \
|
||||||
edje-box2 \
|
edje-box2 \
|
||||||
|
edje-drag\
|
||||||
edje-signals-messages \
|
edje-signals-messages \
|
||||||
edje-color-class
|
edje-color-class
|
||||||
|
|
||||||
|
@ -64,6 +66,7 @@ files_DATA += \
|
||||||
$(srcdir)/edje-table.c \
|
$(srcdir)/edje-table.c \
|
||||||
$(srcdir)/edje-box.c \
|
$(srcdir)/edje-box.c \
|
||||||
$(srcdir)/edje-box2.c \
|
$(srcdir)/edje-box2.c \
|
||||||
|
$(srcdir)/edje-drag.c \
|
||||||
$(srcdir)/edje-signals-messages.c \
|
$(srcdir)/edje-signals-messages.c \
|
||||||
$(srcdir)/edje-color-class.c
|
$(srcdir)/edje-color-class.c
|
||||||
endif
|
endif
|
||||||
|
@ -76,5 +79,6 @@ EXTRA_DIST = $(EDCS) \
|
||||||
$(srcdir)/edje-table.c \
|
$(srcdir)/edje-table.c \
|
||||||
$(srcdir)/edje-box.c \
|
$(srcdir)/edje-box.c \
|
||||||
$(srcdir)/edje-box2.c \
|
$(srcdir)/edje-box2.c \
|
||||||
|
$(srcdir)/edje-drag.c \
|
||||||
$(srcdir)/edje-signals-messages.c \
|
$(srcdir)/edje-signals-messages.c \
|
||||||
$(srcdir)/edje-color-class.c
|
$(srcdir)/edje-color-class.c
|
||||||
|
|
|
@ -0,0 +1,91 @@
|
||||||
|
collections {
|
||||||
|
group {
|
||||||
|
name: "example/group";
|
||||||
|
|
||||||
|
min: 160 160;
|
||||||
|
|
||||||
|
parts {
|
||||||
|
part {
|
||||||
|
name: "bg";
|
||||||
|
type: RECT;
|
||||||
|
|
||||||
|
mouse_events: 0;
|
||||||
|
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
}
|
||||||
|
} // bg
|
||||||
|
|
||||||
|
part {
|
||||||
|
name: "title";
|
||||||
|
type: TEXT;
|
||||||
|
mouse_events: 0;
|
||||||
|
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
color: 0 0 0 255;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.0 0.0;
|
||||||
|
offset: 0 0;
|
||||||
|
to: "bg";
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 1.0 0.2;
|
||||||
|
offset: -1 -1;
|
||||||
|
to: "bg";
|
||||||
|
}
|
||||||
|
text {
|
||||||
|
text: "Drag Example";
|
||||||
|
size: 16;
|
||||||
|
font: "sans";
|
||||||
|
min: 1 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
part {
|
||||||
|
name: "drag_area";
|
||||||
|
type: RECT;
|
||||||
|
|
||||||
|
mouse_events: 0;
|
||||||
|
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
color: 0 0 0 255;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.5 0.3;
|
||||||
|
offset: -5 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
rel2 {
|
||||||
|
relative: 0.5 0.9;
|
||||||
|
offset: 4 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // drag_area
|
||||||
|
|
||||||
|
part {
|
||||||
|
name: "example/knob";
|
||||||
|
type: RECT;
|
||||||
|
|
||||||
|
mouse_events: 1;
|
||||||
|
|
||||||
|
dragable {
|
||||||
|
confine: "drag_area";
|
||||||
|
x: 0 0 0;
|
||||||
|
y: 1 1 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
|
||||||
|
color: 255 0 0 200;
|
||||||
|
|
||||||
|
min: 10 30;
|
||||||
|
max: 10 30;
|
||||||
|
}
|
||||||
|
} // example/knob
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,155 @@
|
||||||
|
/**
|
||||||
|
* Simple Edje example illustrating drag functions.
|
||||||
|
*
|
||||||
|
* You'll need at least one Evas engine built for it (excluding the
|
||||||
|
* buffer one). See stdout/stderr for output.
|
||||||
|
*
|
||||||
|
* @verbatim
|
||||||
|
* edje_cc drag.edc && gcc -o drag-box drag-box.c `pkg-config --libs --cflags evas ecore ecore-evas edje`
|
||||||
|
* @endverbatim
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
#include "config.h"
|
||||||
|
#else
|
||||||
|
#define PACKAGE_EXAMPLES_DIR "."
|
||||||
|
#define __UNUSED__
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <Ecore.h>
|
||||||
|
#include <Ecore_Evas.h>
|
||||||
|
#include <Edje.h>
|
||||||
|
|
||||||
|
#define WIDTH 300
|
||||||
|
#define HEIGHT 300
|
||||||
|
|
||||||
|
#define RECTW 30
|
||||||
|
#define RECTH 30
|
||||||
|
|
||||||
|
#define NRECTS 20
|
||||||
|
|
||||||
|
static const char *PARTNAME = "example/knob";
|
||||||
|
|
||||||
|
static const char *edje_file_path = PACKAGE_EXAMPLES_DIR "/drag.edj";
|
||||||
|
|
||||||
|
struct _App {
|
||||||
|
Ecore_Evas *ee;
|
||||||
|
Evas_Object *edje;
|
||||||
|
Evas_Object *bg;
|
||||||
|
};
|
||||||
|
|
||||||
|
static void
|
||||||
|
_on_destroy(Ecore_Evas *ee __UNUSED__)
|
||||||
|
{
|
||||||
|
ecore_main_loop_quit();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* here just to keep our example's window size and background image's
|
||||||
|
* size in synchrony */
|
||||||
|
static void
|
||||||
|
_canvas_resize_cb(Ecore_Evas *ee)
|
||||||
|
{
|
||||||
|
int w, h;
|
||||||
|
struct _App *app = ecore_evas_data_get(ee, "app");
|
||||||
|
|
||||||
|
ecore_evas_geometry_get(ee, NULL, NULL, &w, &h);
|
||||||
|
evas_object_resize(app->bg, w, h);
|
||||||
|
evas_object_resize(app->edje, w, h);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_bg_key_down(void *data, Evas *e, Evas_Object *o __UNUSED__, void *event_info)
|
||||||
|
{
|
||||||
|
struct _App *app = data;
|
||||||
|
Evas_Event_Key_Down *ev = event_info;
|
||||||
|
Evas_Object *rect;
|
||||||
|
Eina_Bool r;
|
||||||
|
|
||||||
|
|
||||||
|
if (!strcmp(ev->keyname, "Down"))
|
||||||
|
{
|
||||||
|
edje_object_part_drag_step(app->edje, PARTNAME, 0, 1.0);
|
||||||
|
}
|
||||||
|
else if (!strcmp(ev->keyname, "Up"))
|
||||||
|
{
|
||||||
|
edje_object_part_drag_step(app->edje, PARTNAME, 0, -1.0);
|
||||||
|
}
|
||||||
|
else if (!strcmp(ev->keyname, "m"))
|
||||||
|
{
|
||||||
|
edje_object_part_drag_value_set(app->edje, PARTNAME, 0.0, 0.5);
|
||||||
|
}
|
||||||
|
else if (!strcmp(ev->keyname, "Prior"))
|
||||||
|
{
|
||||||
|
edje_object_part_drag_page(app->edje, PARTNAME, 0.0, -1.0);
|
||||||
|
}
|
||||||
|
else if (!strcmp(ev->keyname, "Next"))
|
||||||
|
{
|
||||||
|
edje_object_part_drag_page(app->edje, PARTNAME, 0.0, 1.0);
|
||||||
|
}
|
||||||
|
else if (!strcmp(ev->keyname, "Escape"))
|
||||||
|
ecore_main_loop_quit();
|
||||||
|
else
|
||||||
|
printf("unhandled key: %s\n", ev->keyname);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_knob_moved_cb(void *data, Evas_Object *o, const char *emission, const char *source)
|
||||||
|
{
|
||||||
|
double val;
|
||||||
|
edje_object_part_drag_value_get(o, PARTNAME, NULL, &val);
|
||||||
|
printf("value changed to: %0.3f\n", val);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main(void)
|
||||||
|
{
|
||||||
|
Evas *evas;
|
||||||
|
struct _App app;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
ecore_evas_init();
|
||||||
|
edje_init();
|
||||||
|
|
||||||
|
/* this will give you a window with an Evas canvas under the first
|
||||||
|
* engine available */
|
||||||
|
app.ee = ecore_evas_new(NULL, 0, 0, WIDTH, HEIGHT, NULL);
|
||||||
|
|
||||||
|
ecore_evas_callback_destroy_set(app.ee, _on_destroy);
|
||||||
|
ecore_evas_callback_resize_set(app.ee, _canvas_resize_cb);
|
||||||
|
ecore_evas_title_set(app.ee, "Edje Box Example");
|
||||||
|
ecore_evas_show(app.ee);
|
||||||
|
|
||||||
|
ecore_evas_data_set(app.ee, "app", &app);
|
||||||
|
|
||||||
|
evas = ecore_evas_get(app.ee);
|
||||||
|
|
||||||
|
app.bg = evas_object_rectangle_add(evas);
|
||||||
|
evas_object_color_set(app.bg, 255, 255, 255, 255);
|
||||||
|
evas_object_resize(app.bg, WIDTH, HEIGHT);
|
||||||
|
evas_object_focus_set(app.bg, EINA_TRUE);
|
||||||
|
evas_object_show(app.bg);
|
||||||
|
|
||||||
|
evas_object_event_callback_add(app.bg, EVAS_CALLBACK_KEY_DOWN, _bg_key_down, &app);
|
||||||
|
|
||||||
|
app.edje = edje_object_add(evas);
|
||||||
|
|
||||||
|
edje_object_file_set(app.edje, edje_file_path, "example/group");
|
||||||
|
evas_object_move(app.edje, 0, 0);
|
||||||
|
evas_object_resize(app.edje, WIDTH, HEIGHT);
|
||||||
|
evas_object_show(app.edje);
|
||||||
|
|
||||||
|
if (!edje_object_part_drag_step_set(app.edje, PARTNAME, 0.0, 0.1))
|
||||||
|
printf("error when setting drag step size.\n");
|
||||||
|
|
||||||
|
if (!edje_object_part_drag_page_set(app.edje, PARTNAME, 0.0, 0.3))
|
||||||
|
printf("error when setting drag page step size.\n");
|
||||||
|
|
||||||
|
edje_object_signal_callback_add(app.edje, "drag", PARTNAME, _knob_moved_cb, &app);
|
||||||
|
|
||||||
|
ecore_main_loop_begin();
|
||||||
|
|
||||||
|
ecore_evas_free(app.ee);
|
||||||
|
ecore_evas_shutdown();
|
||||||
|
edje_shutdown();
|
||||||
|
return 0;
|
||||||
|
}
|
|
@ -2917,10 +2917,14 @@ EAPI const char *edje_object_part_state_get (const Evas_Object *obj, c
|
||||||
* @param obj A valid Evas_Object handle
|
* @param obj A valid Evas_Object handle
|
||||||
* @param part The part name
|
* @param part The part name
|
||||||
*
|
*
|
||||||
* @return 0: Not dragable\n
|
* The dragable directions are defined in the EDC file, inside the @c dragable
|
||||||
* 1: Dragable in X direction\n
|
* section, by the attributes @c x and @c y. See the @ref edcref for more
|
||||||
* 2: Dragable in Y direction\n
|
* information.
|
||||||
* 3: Dragable in X & Y directions
|
*
|
||||||
|
* @return #EDJE_DRAG_DIR_NONE: Not dragable\n
|
||||||
|
* #EDJE_DRAG_DIR_X: Dragable in X direction\n
|
||||||
|
* #EDJE_DRAG_DIR_Y: Dragable in Y direction\n
|
||||||
|
* #EDJE_DRAG_DIR_XY: Dragable in X & Y directions
|
||||||
*/
|
*/
|
||||||
EAPI Edje_Drag_Dir edje_object_part_drag_dir_get (const Evas_Object *obj, const char *part);
|
EAPI Edje_Drag_Dir edje_object_part_drag_dir_get (const Evas_Object *obj, const char *part);
|
||||||
|
|
||||||
|
@ -2933,6 +2937,18 @@ EAPI Edje_Drag_Dir edje_object_part_drag_dir_get (const Evas_Object *obj, c
|
||||||
* @param dy The y value
|
* @param dy The y value
|
||||||
*
|
*
|
||||||
* Places the dragable object at the given location.
|
* Places the dragable object at the given location.
|
||||||
|
*
|
||||||
|
* Values for @p dx and @p 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 @c 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 @c x in the
|
||||||
|
* dragable part theme is 1, and right if it is -1.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_value_get()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_value_set (Evas_Object *obj, const char *part, double dx, double dy);
|
EAPI Eina_Bool edje_object_part_drag_value_set (Evas_Object *obj, const char *part, double dx, double dy);
|
||||||
|
|
||||||
|
@ -2944,6 +2960,11 @@ EAPI Eina_Bool edje_object_part_drag_value_set (Evas_Object *obj, const c
|
||||||
* @param dx The X value pointer
|
* @param dx The X value pointer
|
||||||
* @param dy The Y value pointer
|
* @param dy The Y value pointer
|
||||||
*
|
*
|
||||||
|
* Values for @p dx and @p dy are real numbers that range from 0 to 1,
|
||||||
|
* representing the relative position to the dragable area on that axis.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_value_set()
|
||||||
|
*
|
||||||
* Gets the drag location values.
|
* Gets the drag location values.
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_value_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
EAPI Eina_Bool edje_object_part_drag_value_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
||||||
|
@ -2956,7 +2977,12 @@ EAPI Eina_Bool edje_object_part_drag_value_get (const Evas_Object *obj, c
|
||||||
* @param dw The drag width
|
* @param dw The drag width
|
||||||
* @param dh The drag height
|
* @param dh The drag height
|
||||||
*
|
*
|
||||||
|
* Values for @p dw and @p 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.
|
* Sets the size of the dragable object.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_size_get()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_size_set (Evas_Object *obj, const char *part, double dw, double dh);
|
EAPI Eina_Bool edje_object_part_drag_size_set (Evas_Object *obj, const char *part, double dw, double dh);
|
||||||
|
|
||||||
|
@ -2969,6 +2995,8 @@ EAPI Eina_Bool edje_object_part_drag_size_set (Evas_Object *obj, const c
|
||||||
* @param dh The drag height pointer
|
* @param dh The drag height pointer
|
||||||
*
|
*
|
||||||
* Gets the dragable object size.
|
* Gets the dragable object size.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_size_set()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_size_get (const Evas_Object *obj, const char *part, double *dw, double *dh);
|
EAPI Eina_Bool edje_object_part_drag_size_get (const Evas_Object *obj, const char *part, double *dw, double *dh);
|
||||||
|
|
||||||
|
@ -2981,6 +3009,12 @@ EAPI Eina_Bool edje_object_part_drag_size_get (const Evas_Object *obj, c
|
||||||
* @param dy The y step amount
|
* @param dy The y step amount
|
||||||
*
|
*
|
||||||
* Sets the x,y step increments for a dragable object.
|
* Sets the x,y step increments for a dragable object.
|
||||||
|
*
|
||||||
|
* Values for @p dx and @p 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 edje_object_part_drag_step_get()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_step_set (Evas_Object *obj, const char *part, double dx, double dy);
|
EAPI Eina_Bool edje_object_part_drag_step_set (Evas_Object *obj, const char *part, double dx, double dy);
|
||||||
|
|
||||||
|
@ -2993,6 +3027,9 @@ EAPI Eina_Bool edje_object_part_drag_step_set (Evas_Object *obj, const c
|
||||||
* @param dy The y step increment pointer
|
* @param dy The y step increment pointer
|
||||||
*
|
*
|
||||||
* Gets the x and y step increments for the dragable object.
|
* Gets the x and y step increments for the dragable object.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_step_set()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_step_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
EAPI Eina_Bool edje_object_part_drag_step_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
||||||
|
|
||||||
|
@ -3005,6 +3042,12 @@ EAPI Eina_Bool edje_object_part_drag_step_get (const Evas_Object *obj, c
|
||||||
* @param dy The y page step increment
|
* @param dy The y page step increment
|
||||||
*
|
*
|
||||||
* Sets the x,y page step increment values.
|
* Sets the x,y page step increment values.
|
||||||
|
*
|
||||||
|
* Values for @p dx and @p 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 edje_object_part_drag_page_get()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_page_set (Evas_Object *obj, const char *part, double dx, double dy);
|
EAPI Eina_Bool edje_object_part_drag_page_set (Evas_Object *obj, const char *part, double dx, double dy);
|
||||||
|
|
||||||
|
@ -3017,6 +3060,8 @@ EAPI Eina_Bool edje_object_part_drag_page_set (Evas_Object *obj, const c
|
||||||
* @param dy The dy page increment pointer
|
* @param dy The dy page increment pointer
|
||||||
*
|
*
|
||||||
* Gets the x,y page step increments for the dragable object.
|
* Gets the x,y page step increments for the dragable object.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_page_set()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_page_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
EAPI Eina_Bool edje_object_part_drag_page_get (const Evas_Object *obj, const char *part, double *dx, double *dy);
|
||||||
|
|
||||||
|
@ -3030,6 +3075,10 @@ EAPI Eina_Bool edje_object_part_drag_page_get (const Evas_Object *obj, c
|
||||||
*
|
*
|
||||||
* Steps x,y where the step increment is the amount set by
|
* Steps x,y where the step increment is the amount set by
|
||||||
* edje_object_part_drag_step_set.
|
* edje_object_part_drag_step_set.
|
||||||
|
*
|
||||||
|
* Values for @p dx and @p dy are real numbers that range from 0 to 1.
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_page()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_step (Evas_Object *obj, const char *part, double dx, double dy);
|
EAPI Eina_Bool edje_object_part_drag_step (Evas_Object *obj, const char *part, double dx, double dy);
|
||||||
|
|
||||||
|
@ -3042,7 +3091,13 @@ EAPI Eina_Bool edje_object_part_drag_step (Evas_Object *obj, const c
|
||||||
* @param dy The y step
|
* @param dy The y step
|
||||||
*
|
*
|
||||||
* Pages x,y where the increment is defined by
|
* Pages x,y where the increment is defined by
|
||||||
* edje_object_part_drag_page_set.\n WARNING: Paging is bugged!
|
* edje_object_part_drag_page_set.
|
||||||
|
*
|
||||||
|
* Values for @p dx and @p dy are real numbers that range from 0 to 1.
|
||||||
|
*
|
||||||
|
* @warning Paging is bugged!
|
||||||
|
*
|
||||||
|
* @see edje_object_part_drag_step()
|
||||||
*/
|
*/
|
||||||
EAPI Eina_Bool edje_object_part_drag_page (Evas_Object *obj, const char *part, double dx, double dy);
|
EAPI Eina_Bool edje_object_part_drag_page (Evas_Object *obj, const char *part, double dx, double dy);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue