aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/elementary/src/lib/elm_scroll.h
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-04-22 09:20:32 +1000
committerDavid Walter Seikel2012-04-22 09:20:32 +1000
commit3ad3455551be0d7859ecb02290376206d5e66498 (patch)
tree497917e12b4d7f458dff9765d9b53f64c4e03fc3 /libraries/elementary/src/lib/elm_scroll.h
parentUpdate EFL to latest beta. (diff)
downloadSledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.zip
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.gz
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.bz2
SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.xz
And actually include new files, plus elementary libraries.
Diffstat (limited to 'libraries/elementary/src/lib/elm_scroll.h')
-rw-r--r--libraries/elementary/src/lib/elm_scroll.h114
1 files changed, 114 insertions, 0 deletions
diff --git a/libraries/elementary/src/lib/elm_scroll.h b/libraries/elementary/src/lib/elm_scroll.h
new file mode 100644
index 0000000..51a2d4f
--- /dev/null
+++ b/libraries/elementary/src/lib/elm_scroll.h
@@ -0,0 +1,114 @@
1/**
2 * @defgroup Scrollhints Scrollhints
3 * @ingroup Elementary
4 *
5 * Objects when inside a scroller can scroll, but this may not always be
6 * desirable in certain situations. This allows an object to hint to itself
7 * and parents to "not scroll" in one of 2 ways. If any child object of a
8 * scroller has pushed a scroll freeze or hold then it affects all parent
9 * scrollers until all children have released them.
10 *
11 * 1. To hold on scrolling. This means just flicking and dragging may no
12 * longer scroll, but pressing/dragging near an edge of the scroller will
13 * still scroll. This is automatically used by the entry object when
14 * selecting text.
15 *
16 * 2. To totally freeze scrolling. This means it stops. until
17 * popped/released.
18 *
19 * @{
20 */
21
22/**
23 * Push the scroll hold by 1
24 *
25 * This increments the scroll hold count by one. If it is more than 0 it will
26 * take effect on the parents of the indicated object.
27 *
28 * @param obj The object
29 * @ingroup Scrollhints
30 */
31EAPI void elm_object_scroll_hold_push(Evas_Object *obj);
32
33/**
34 * Pop the scroll hold by 1
35 *
36 * This decrements the scroll hold count by one. If it is more than 0 it will
37 * take effect on the parents of the indicated object.
38 *
39 * @param obj The object
40 * @ingroup Scrollhints
41 */
42EAPI void elm_object_scroll_hold_pop(Evas_Object *obj);
43
44/**
45 * Push the scroll freeze by 1
46 *
47 * This increments the scroll freeze count by one. If it is more
48 * than 0 it will take effect on the parents of the indicated
49 * object.
50 *
51 * @param obj The object
52 * @ingroup Scrollhints
53 */
54EAPI void elm_object_scroll_freeze_push(Evas_Object *obj);
55
56/**
57 * Pop the scroll freeze by 1
58 *
59 * This decrements the scroll freeze count by one. If it is more
60 * than 0 it will take effect on the parents of the indicated
61 * object.
62 *
63 * @param obj The object
64 * @ingroup Scrollhints
65 */
66EAPI void elm_object_scroll_freeze_pop(Evas_Object *obj);
67
68/**
69 * Lock the scrolling of the given widget (and thus all parents)
70 *
71 * This locks the given object from scrolling in the X axis (and implicitly
72 * also locks all parent scrollers too from doing the same).
73 *
74 * @param obj The object
75 * @param lock The lock state (1 == locked, 0 == unlocked)
76 * @ingroup Scrollhints
77 */
78EAPI void elm_object_scroll_lock_x_set(Evas_Object *obj, Eina_Bool lock);
79
80/**
81 * Lock the scrolling of the given widget (and thus all parents)
82 *
83 * This locks the given object from scrolling in the Y axis (and implicitly
84 * also locks all parent scrollers too from doing the same).
85 *
86 * @param obj The object
87 * @param lock The lock state (1 == locked, 0 == unlocked)
88 * @ingroup Scrollhints
89 */
90EAPI void elm_object_scroll_lock_y_set(Evas_Object *obj, Eina_Bool lock);
91
92/**
93 * Get the scrolling lock of the given widget
94 *
95 * This gets the lock for X axis scrolling.
96 *
97 * @param obj The object
98 * @ingroup Scrollhints
99 */
100EAPI Eina_Bool elm_object_scroll_lock_x_get(const Evas_Object *obj);
101
102/**
103 * Get the scrolling lock of the given widget
104 *
105 * This gets the lock for Y axis scrolling.
106 *
107 * @param obj The object
108 * @ingroup Scrollhints
109 */
110EAPI Eina_Bool elm_object_scroll_lock_y_get(const Evas_Object *obj);
111
112/**
113 * @}
114 */