summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorFabio Mello <fabio.mello@intel.com>2014-02-14 10:35:57 -0200
committerSemun Lee <sm79.lee@samsung.com>2014-03-07 13:56:03 +0900
commit084d912cb688c5a9257b3446b2f5f40260d16c6f (patch)
tree313e9ac9cb29eec80883f89781e62553d40e920d /include
parent92210284ef62357b7a08fbd973d291ee1afe04ec (diff)
downloadui-gadget-1-084d912cb688c5a9257b3446b2f5f40260d16c6f.tar.gz
ui-gadget-1-084d912cb688c5a9257b3446b2f5f40260d16c6f.tar.bz2
ui-gadget-1-084d912cb688c5a9257b3446b2f5f40260d16c6f.zip
Apps should not require ecore_x.
The current UG_INIT_EFL() macro forces the applications who uses it to depend on ecore_x. This patch uses a higher level of abstraction in this macro, this approach lets ui-gadget-1 handle the display server without expose this to its dependents. Signed-off-by: Leandro Dorileo <leandro.maciel.dorileo@intel.com> Signed-off-by: Fabio Mello <fabio.mello@intel.com> Conflicts: CMakeLists.txt Change-Id: I9a1683df1ee64b2d997b0edfedc6bfc695aed9e7
Diffstat (limited to 'include')
-rw-r--r--include/ug-manager.h3
-rw-r--r--include/ui-gadget.h35
2 files changed, 34 insertions, 4 deletions
diff --git a/include/ug-manager.h b/include/ug-manager.h
index f5ac47e..7c7e059 100644
--- a/include/ug-manager.h
+++ b/include/ug-manager.h
@@ -26,6 +26,7 @@
#include <utilX.h>
#endif
+#include <Evas.h>
#include "ug.h"
int ugman_ug_add(ui_gadget_h parent, ui_gadget_h ug);
@@ -41,6 +42,8 @@ int ugman_ug_del_all(void);
int ugman_init(Display *disp, Window xid, void *win, enum ug_option opt);
#endif
+int ugman_init_efl(Evas_Object *win, enum ug_option opt);
+
int ugman_resume(void);
int ugman_pause(void);
int ugman_send_event(enum ug_event event);
diff --git a/include/ui-gadget.h b/include/ui-gadget.h
index 41f5637..bc4a1e8 100644
--- a/include/ui-gadget.h
+++ b/include/ui-gadget.h
@@ -58,6 +58,7 @@
#include <X11/Xlib.h>
#endif
+#include <Evas.h>
#include <app.h>
#ifdef __cplusplus
@@ -163,11 +164,8 @@ struct ug_cbs {
* Easy-to-use macro of ug_init() for EFL
* @see ug_init()
*/
-#ifndef WAYLAND
#define UG_INIT_EFL(win, opt) \
- ug_init((Display *)ecore_x_display_get(), elm_win_xwindow_get(win), \
- win, opt)
-#endif
+ ug_init_efl(win, opt)
/**
* Easy-to-use macro of ug_init() for GTK
@@ -222,6 +220,35 @@ struct ug_cbs {
#ifndef WAYLAND
int ug_init(Display *disp, Window xid, void *win, enum ug_option opt);
#endif
+
+/**
+ * \par Description:
+ * This function initializes default window and indicator state.
+ *
+ * @param[in] win A pointer to window evas object.
+ * @param[in] opt Default indicator state to restore application's indicator state
+ * @return 0 on success, -1 on error
+ *
+ * \pre None
+ * \post None
+ * \see UG_INIT_EFL()
+ * \remarks None
+ *
+ * \par Sample code:
+ * \code
+ * #include <ui-gadget.h>
+ * ...
+ * Evas_Object *win;
+ * ...
+ * // create window
+ * ...
+ * ug_init_efl(win, UG_OPT_INDICATOR_ENABLE);
+ * // for convenience you can use following macro: ELM_INIT_EFL(win, UG_OPT_INDICATOR_ENABLE);
+ * ...
+ * \endcode
+ */
+int ug_init_efl(Evas_Object *win, enum ug_option opt);
+
/**
* \par Description:
* This function creates a UI gadget