aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/elementary/src/lib/elm_photo.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--libraries/elementary/src/lib/elm_photo.h113
1 files changed, 113 insertions, 0 deletions
diff --git a/libraries/elementary/src/lib/elm_photo.h b/libraries/elementary/src/lib/elm_photo.h
new file mode 100644
index 0000000..b5e9d78
--- /dev/null
+++ b/libraries/elementary/src/lib/elm_photo.h
@@ -0,0 +1,113 @@
1/**
2 * @defgroup Photo Photo
3 * @ingroup Elementary
4 *
5 * For displaying a photo, for ex., a person (contact). Simple, yet
6 * with a very specific purpose.
7 *
8 * Signals that you can add callbacks for are:
9 *
10 * "clicked" - This is called when a user has clicked the photo
11 * "drag,start" - dragging the image out of the photo object
12 * "drag,end" - Drop the dragged item
13 *
14 * @{
15 */
16
17/**
18 * Add a new photo to the parent
19 *
20 * @param parent The parent object
21 * @return The new object or NULL if it cannot be created
22 *
23 * @ingroup Photo
24 */
25EAPI Evas_Object *elm_photo_add(Evas_Object *parent);
26
27/**
28 * Set the file that will be used as photo
29 *
30 * @param obj The photo object
31 * @param file The path to file that will be used as photo
32 *
33 * @return (1 = success, 0 = error)
34 *
35 * @ingroup Photo
36 */
37EAPI Eina_Bool elm_photo_file_set(Evas_Object *obj, const char *file);
38
39/**
40 * Set the file that will be used as thumbnail in the photo.
41 *
42 * @param obj The photo object.
43 * @param file The path to file that will be used as thumbnail.
44 * @param group The key used in case of an EET file.
45 *
46 * @ingroup Photo
47 */
48EAPI void elm_photo_thumb_set(const Evas_Object *obj, const char *file, const char *group);
49
50/**
51 * Set the size that will be used on the photo
52 *
53 * @param obj The photo object
54 * @param size The size of the photo
55 *
56 * @ingroup Photo
57 */
58EAPI void elm_photo_size_set(Evas_Object *obj, int size);
59
60/**
61 * Set if the photo should be completely visible or not.
62 *
63 * @param obj The photo object
64 * @param fill if true the photo will be completely visible
65 *
66 * @ingroup Photo
67 */
68EAPI void elm_photo_fill_inside_set(Evas_Object *obj, Eina_Bool fill);
69
70/**
71 * Set editability of the photo.
72 *
73 * An editable photo can be dragged to or from, and can be cut or
74 * pasted too. Note that pasting an image or dropping an item on
75 * the image will delete the existing content.
76 *
77 * @param obj The photo object.
78 * @param set To set of clear editability.
79 */
80EAPI void elm_photo_editable_set(Evas_Object *obj, Eina_Bool set);
81
82/**
83 * Set whether the original aspect ratio of the photo should be kept on resize.
84 *
85 * @param obj The photo object.
86 * @param fixed @c EINA_TRUE if the photo should fix the aspect,
87 * @c EINA_FALSE otherwise.
88 *
89 * The original aspect ratio (width / height) of the photo is usually
90 * distorted to match the object's size. Enabling this option will fix
91 * this original aspect, and the way that the photo is fit into
92 * the object's area
93 *
94 * @see elm_photo_aspect_fixed_get()
95 *
96 * @ingroup Photo
97 */
98EAPI void elm_photo_aspect_fixed_set(Evas_Object *obj, Eina_Bool fixed);
99
100/**
101 * Get if the object keeps the original aspect ratio.
102 *
103 * @param obj The photo object.
104 * @return @c EINA_TRUE if the object keeps the original aspect, @c EINA_FALSE
105 * otherwise.
106 *
107 * @ingroup Photo
108 */
109EAPI Eina_Bool elm_photo_aspect_fixed_get(const Evas_Object *obj);
110
111/**
112 * @}
113 */