jackdanielz pushed a commit to branch master.
commit 75c67434d6a0e159808057b65e1fdadc0255aed0
Author: Daniel Zaoui <[email protected]>
Date: Sun Apr 28 09:56:42 2013 +0300
Elementary: Color Selector header split.
---
src/lib/elm_colorselector.h | 300 +------------------------------------
src/lib/elm_colorselector_common.h | 58 +++++++
src/lib/elm_colorselector_eo.h | 142 ++++++++++++++++++
src/lib/elm_colorselector_legacy.h | 107 +++++++++++++
4 files changed, 314 insertions(+), 293 deletions(-)
diff --git a/src/lib/elm_colorselector.h b/src/lib/elm_colorselector.h
index 7a1e96d..7b344c6 100644
--- a/src/lib/elm_colorselector.h
+++ b/src/lib/elm_colorselector.h
@@ -33,299 +33,13 @@
* @{
*/
-#define ELM_OBJ_COLORSELECTOR_CLASS elm_obj_colorselector_class_get()
-
-const Eo_Class *elm_obj_colorselector_class_get(void) EINA_CONST;
-
-extern EAPI Eo_Op ELM_OBJ_COLORSELECTOR_BASE_ID;
-
-enum
-{
- ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_SET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_GET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_SET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_GET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_COLOR_ADD,
- ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_CLEAR,
- ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_SET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_GET,
- ELM_OBJ_COLORSELECTOR_SUB_ID_LAST
-};
-
-#define ELM_OBJ_COLORSELECTOR_ID(sub_id) (ELM_OBJ_COLORSELECTOR_BASE_ID +
sub_id)
-
-
-/**
- * @def elm_obj_colorselector_color_set
- * @since 1.8
- *
- * Set color to colorselector
- *
- * @param[in] r
- * @param[in] g
- * @param[in] b
- * @param[in] a
- *
- * @see elm_colorselector_color_set
- */
-#define elm_obj_colorselector_color_set(r, g, b, a)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_SET),
EO_TYPECHECK(int, r), EO_TYPECHECK(int, g), EO_TYPECHECK(int, b),
EO_TYPECHECK(int, a)
-
-/**
- * @def elm_obj_colorselector_color_get
- * @since 1.8
- *
- * Get current color from colorselector
- *
- * @param[out] r
- * @param[out] g
- * @param[out] b
- * @param[out] a
- *
- * @see elm_colorselector_color_get
- */
-#define elm_obj_colorselector_color_get(r, g, b, a)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_GET),
EO_TYPECHECK(int *, r), EO_TYPECHECK(int *, g), EO_TYPECHECK(int *, b),
EO_TYPECHECK(int *, a)
-
-/**
- * @def elm_obj_colorselector_mode_set
- * @since 1.8
- *
- * Set Colorselector's mode.
- *
- * @param[in] mode
- *
- * @see elm_colorselector_mode_set
- */
-#define elm_obj_colorselector_mode_set(mode)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_SET),
EO_TYPECHECK(Elm_Colorselector_Mode, mode)
-
-/**
- * @def elm_obj_colorselector_mode_get
- * @since 1.8
- *
- * Get Colorselector's mode.
- *
- * @param[out] ret
- *
- * @see elm_colorselector_mode_get
- */
-#define elm_obj_colorselector_mode_get(ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_GET),
EO_TYPECHECK(Elm_Colorselector_Mode *, ret)
-
-/**
- * @def elm_obj_colorselector_palette_color_add
- * @since 1.8
- *
- * Add a new color item to palette.
- *
- * @param[in] r
- * @param[in] g
- * @param[in] b
- * @param[in] a
- * @param[out] ret
- *
- * @see elm_colorselector_palette_color_add
- */
-#define elm_obj_colorselector_palette_color_add(r, g, b, a, ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_COLOR_ADD),
EO_TYPECHECK(int, r), EO_TYPECHECK(int, g), EO_TYPECHECK(int, b),
EO_TYPECHECK(int, a), EO_TYPECHECK(Elm_Object_Item **, ret)
-
-/**
- * @def elm_obj_colorselector_palette_clear
- * @since 1.8
- *
- * Clear the palette items.
- *
- *
- * @see elm_colorselector_palette_clear
- */
-#define elm_obj_colorselector_palette_clear()
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_CLEAR)
-
-/**
- * @def elm_obj_colorselector_palette_name_set
- * @since 1.8
- *
- * Set current palette's name
- *
- * @param[in] palette_name
- *
- * @see elm_colorselector_palette_name_set
- */
-#define elm_obj_colorselector_palette_name_set(palette_name)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_SET),
EO_TYPECHECK(const char *, palette_name)
-
-/**
- * @def elm_obj_colorselector_palette_name_get
- * @since 1.8
- *
- * Get current palette's name
- *
- * @param[out] ret
- *
- * @see elm_colorselector_palette_name_get
- */
-#define elm_obj_colorselector_palette_name_get(ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_GET),
EO_TYPECHECK(const char **, ret)
-
-typedef struct _Elm_Color_RGBA
-{
- unsigned int r;
- unsigned int g;
- unsigned int b;
- unsigned int a;
-} Elm_Color_RGBA;
-
-typedef struct _Elm_Custom_Palette
-{
- const char *palette_name;
- Eina_List *color_list;
-} Elm_Custom_Palette;
-
-/**
- * @enum Elm_Colorselector_Mode
- * @typedef Elm_Colorselector_Mode
- *
- * Different modes supported by Colorselector
- *
- * @see elm_colorselector_mode_set()
- * @see elm_colorselector_mode_get()
- */
-typedef enum
-{
- ELM_COLORSELECTOR_PALETTE = 0, /**< only color palette is displayed */
- ELM_COLORSELECTOR_COMPONENTS, /**< only color selector is displayed */
- ELM_COLORSELECTOR_BOTH, /**< Both Palette and selector is displayed,
default */
- ELM_COLORSELECTOR_PICKER, /**< only color picker is displayed */
- ELM_COLORSELECTOR_ALL /**< all possible color selector is displayed */
-} Elm_Colorselector_Mode;
-
-/**
- * @brief Add a new colorselector to the parent
- *
- * @param parent The parent object
- * @return The new object or NULL if it cannot be created
- *
- * @ingroup Colorselector
- */
-EAPI Evas_Object *elm_colorselector_add(Evas_Object *parent);
-
-/**
- * Set color to colorselector
- *
- * @param obj Colorselector object
- * @param r r-value of color
- * @param g g-value of color
- * @param b b-value of color
- * @param a a-value of color
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_color_set(Evas_Object *obj, int r, int g, int b,
int a);
-
-/**
- * Get current color from colorselector
- *
- * @param obj Colorselector object
- * @param r integer pointer for r-value of color
- * @param g integer pointer for g-value of color
- * @param b integer pointer for b-value of color
- * @param a integer pointer for a-value of color
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_color_get(const Evas_Object *obj, int *r, int *g,
int *b, int *a);
-
-/**
- * Set Colorselector's mode.
- *
- * @param obj Colorselector object
- * @param mode Elm_Colorselector_Mode
- *
- * Colorselector supports three modes palette only, selector only and both.
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_mode_set(Evas_Object *obj, Elm_Colorselector_Mode
mode);
-
-/**
- * Get Colorselector's mode.
- *
- * @param obj Colorselector object
- * @return mode The current mode of colorselector
- *
- * @ingroup Colorselector
- */
-EAPI Elm_Colorselector_Mode elm_colorselector_mode_get(const Evas_Object *obj);
-
-/**
- * Get Palette item's color.
- *
- * @param it The color palette item.
- * @param r integer pointer for r-value of color
- * @param g integer pointer for g-value of color
- * @param b integer pointer for b-value of color
- * @param a integer pointer for a-value of color
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_palette_item_color_get(const Elm_Object_Item *it,
int *r, int *g, int *b, int *a);
-
-/**
- * Set palette item's color.
- *
- * @param it The color palette item.
- * @param r r-value of color
- * @param g g-value of color
- * @param b b-value of color
- * @param a a-value of color
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_palette_item_color_set(Elm_Object_Item *it, int r,
int g, int b, int a);
-
-/**
- * Add a new color item to palette.
- *
- * @param obj The Colorselector object
- * @param r r-value of color
- * @param g g-value of color
- * @param b b-value of color
- * @param a a-value of color
- * @return A new color palette Item.
- *
- * @ingroup Colorselector
- */
-EAPI Elm_Object_Item *elm_colorselector_palette_color_add(Evas_Object *obj,
int r, int g, int b, int a);
-
-/**
- * Clear the palette items.
- *
- * @param obj The Colorselector object
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_palette_clear(Evas_Object *obj);
-
-/**
- * Set current palette's name
- *
- * @param obj The Colorselector object
- * @param palette_name Name of palette
- *
- * When colorpalette name is set, colors will be loaded from and saved to
config
- * using the set name. If no name is set then colors will be loaded from or
- * saved to "default" config.
- *
- * @ingroup Colorselector
- */
-EAPI void elm_colorselector_palette_name_set(Evas_Object *obj, const char
*palette_name);
-
-/**
- * Get current palette's name
- *
- * @param obj The Colorselector object
- * @return Name of palette
- *
- * Returns the currently set palette name using which colors will be
- * saved/loaded in to config.
- *
- * @ingroup Colorselector
- */
-EAPI const char *elm_colorselector_palette_name_get(const Evas_Object *obj);
-
+#include "elm_colorselector_common.h"
+#ifdef EFL_EO_API_SUPPORT
+#include "elm_colorselector_eo.h"
+#endif
+#ifndef EFL_NOLEGACY_API_SUPPORT
+#include "elm_colorselector_legacy.h"
+#endif
/**
* @}
*/
diff --git a/src/lib/elm_colorselector_common.h
b/src/lib/elm_colorselector_common.h
new file mode 100644
index 0000000..d39cf56
--- /dev/null
+++ b/src/lib/elm_colorselector_common.h
@@ -0,0 +1,58 @@
+typedef struct _Elm_Color_RGBA
+{
+ unsigned int r;
+ unsigned int g;
+ unsigned int b;
+ unsigned int a;
+} Elm_Color_RGBA;
+
+typedef struct _Elm_Custom_Palette
+{
+ const char *palette_name;
+ Eina_List *color_list;
+} Elm_Custom_Palette;
+
+/**
+ * @enum Elm_Colorselector_Mode
+ * @typedef Elm_Colorselector_Mode
+ *
+ * Different modes supported by Colorselector
+ *
+ * @see elm_colorselector_mode_set()
+ * @see elm_colorselector_mode_get()
+ */
+typedef enum
+{
+ ELM_COLORSELECTOR_PALETTE = 0, /**< only color palette is displayed */
+ ELM_COLORSELECTOR_COMPONENTS, /**< only color selector is displayed */
+ ELM_COLORSELECTOR_BOTH, /**< Both Palette and selector is displayed,
default */
+ ELM_COLORSELECTOR_PICKER, /**< only color picker is displayed */
+ ELM_COLORSELECTOR_ALL /**< all possible color selector is displayed */
+} Elm_Colorselector_Mode;
+
+/**
+ * Get Palette item's color.
+ *
+ * @param it The color palette item.
+ * @param r integer pointer for r-value of color
+ * @param g integer pointer for g-value of color
+ * @param b integer pointer for b-value of color
+ * @param a integer pointer for a-value of color
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_palette_item_color_get(const Elm_Object_Item *it,
int *r, int *g, int *b, int *a);
+
+/**
+ * Set palette item's color.
+ *
+ * @param it The color palette item.
+ * @param r r-value of color
+ * @param g g-value of color
+ * @param b b-value of color
+ * @param a a-value of color
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_palette_item_color_set(Elm_Object_Item *it, int r,
int g, int b, int a);
+
diff --git a/src/lib/elm_colorselector_eo.h b/src/lib/elm_colorselector_eo.h
new file mode 100644
index 0000000..93ddc4c
--- /dev/null
+++ b/src/lib/elm_colorselector_eo.h
@@ -0,0 +1,142 @@
+#define ELM_OBJ_COLORSELECTOR_CLASS elm_obj_colorselector_class_get()
+
+const Eo_Class *elm_obj_colorselector_class_get(void) EINA_CONST;
+
+extern EAPI Eo_Op ELM_OBJ_COLORSELECTOR_BASE_ID;
+
+enum
+{
+ ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_SET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_GET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_SET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_GET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_COLOR_ADD,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_CLEAR,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_SET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_GET,
+ ELM_OBJ_COLORSELECTOR_SUB_ID_LAST
+};
+
+#define ELM_OBJ_COLORSELECTOR_ID(sub_id) (ELM_OBJ_COLORSELECTOR_BASE_ID +
sub_id)
+
+
+/**
+ * @def elm_obj_colorselector_color_set
+ * @since 1.8
+ *
+ * Set color to colorselector
+ *
+ * @param[in] r
+ * @param[in] g
+ * @param[in] b
+ * @param[in] a
+ *
+ * @see elm_colorselector_color_set
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_color_set(r, g, b, a)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_SET),
EO_TYPECHECK(int, r), EO_TYPECHECK(int, g), EO_TYPECHECK(int, b),
EO_TYPECHECK(int, a)
+
+/**
+ * @def elm_obj_colorselector_color_get
+ * @since 1.8
+ *
+ * Get current color from colorselector
+ *
+ * @param[out] r
+ * @param[out] g
+ * @param[out] b
+ * @param[out] a
+ *
+ * @see elm_colorselector_color_get
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_color_get(r, g, b, a)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_COLOR_GET),
EO_TYPECHECK(int *, r), EO_TYPECHECK(int *, g), EO_TYPECHECK(int *, b),
EO_TYPECHECK(int *, a)
+
+/**
+ * @def elm_obj_colorselector_mode_set
+ * @since 1.8
+ *
+ * Set Colorselector's mode.
+ *
+ * @param[in] mode
+ *
+ * @see elm_colorselector_mode_set
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_mode_set(mode)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_SET),
EO_TYPECHECK(Elm_Colorselector_Mode, mode)
+
+/**
+ * @def elm_obj_colorselector_mode_get
+ * @since 1.8
+ *
+ * Get Colorselector's mode.
+ *
+ * @param[out] ret
+ *
+ * @see elm_colorselector_mode_get
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_mode_get(ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_MODE_GET),
EO_TYPECHECK(Elm_Colorselector_Mode *, ret)
+
+/**
+ * @def elm_obj_colorselector_palette_color_add
+ * @since 1.8
+ *
+ * Add a new color item to palette.
+ *
+ * @param[in] r
+ * @param[in] g
+ * @param[in] b
+ * @param[in] a
+ * @param[out] ret
+ *
+ * @see elm_colorselector_palette_color_add
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_palette_color_add(r, g, b, a, ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_COLOR_ADD),
EO_TYPECHECK(int, r), EO_TYPECHECK(int, g), EO_TYPECHECK(int, b),
EO_TYPECHECK(int, a), EO_TYPECHECK(Elm_Object_Item **, ret)
+
+/**
+ * @def elm_obj_colorselector_palette_clear
+ * @since 1.8
+ *
+ * Clear the palette items.
+ *
+ *
+ * @see elm_colorselector_palette_clear
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_palette_clear()
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_CLEAR)
+
+/**
+ * @def elm_obj_colorselector_palette_name_set
+ * @since 1.8
+ *
+ * Set current palette's name
+ *
+ * @param[in] palette_name
+ *
+ * @see elm_colorselector_palette_name_set
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_palette_name_set(palette_name)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_SET),
EO_TYPECHECK(const char *, palette_name)
+
+/**
+ * @def elm_obj_colorselector_palette_name_get
+ * @since 1.8
+ *
+ * Get current palette's name
+ *
+ * @param[out] ret
+ *
+ * @see elm_colorselector_palette_name_get
+ *
+ * @ingroup Colorselector
+ */
+#define elm_obj_colorselector_palette_name_get(ret)
ELM_OBJ_COLORSELECTOR_ID(ELM_OBJ_COLORSELECTOR_SUB_ID_PALETTE_NAME_GET),
EO_TYPECHECK(const char **, ret)
diff --git a/src/lib/elm_colorselector_legacy.h
b/src/lib/elm_colorselector_legacy.h
new file mode 100644
index 0000000..5165fa4
--- /dev/null
+++ b/src/lib/elm_colorselector_legacy.h
@@ -0,0 +1,107 @@
+/**
+ * @brief Add a new colorselector to the parent
+ *
+ * @param parent The parent object
+ * @return The new object or NULL if it cannot be created
+ *
+ * @ingroup Colorselector
+ */
+EAPI Evas_Object *elm_colorselector_add(Evas_Object *parent);
+
+/**
+ * Set color to colorselector
+ *
+ * @param obj Colorselector object
+ * @param r r-value of color
+ * @param g g-value of color
+ * @param b b-value of color
+ * @param a a-value of color
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_color_set(Evas_Object *obj, int r, int g, int b,
int a);
+
+/**
+ * Get current color from colorselector
+ *
+ * @param obj Colorselector object
+ * @param r integer pointer for r-value of color
+ * @param g integer pointer for g-value of color
+ * @param b integer pointer for b-value of color
+ * @param a integer pointer for a-value of color
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_color_get(const Evas_Object *obj, int *r, int *g,
int *b, int *a);
+
+/**
+ * Set Colorselector's mode.
+ *
+ * @param obj Colorselector object
+ * @param mode Elm_Colorselector_Mode
+ *
+ * Colorselector supports three modes palette only, selector only and both.
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_mode_set(Evas_Object *obj, Elm_Colorselector_Mode
mode);
+
+/**
+ * Get Colorselector's mode.
+ *
+ * @param obj Colorselector object
+ * @return mode The current mode of colorselector
+ *
+ * @ingroup Colorselector
+ */
+EAPI Elm_Colorselector_Mode elm_colorselector_mode_get(const Evas_Object *obj);
+
+/**
+ * Add a new color item to palette.
+ *
+ * @param obj The Colorselector object
+ * @param r r-value of color
+ * @param g g-value of color
+ * @param b b-value of color
+ * @param a a-value of color
+ * @return A new color palette Item.
+ *
+ * @ingroup Colorselector
+ */
+EAPI Elm_Object_Item *elm_colorselector_palette_color_add(Evas_Object *obj,
int r, int g, int b, int a);
+
+/**
+ * Clear the palette items.
+ *
+ * @param obj The Colorselector object
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_palette_clear(Evas_Object *obj);
+
+/**
+ * Set current palette's name
+ *
+ * @param obj The Colorselector object
+ * @param palette_name Name of palette
+ *
+ * When colorpalette name is set, colors will be loaded from and saved to
config
+ * using the set name. If no name is set then colors will be loaded from or
+ * saved to "default" config.
+ *
+ * @ingroup Colorselector
+ */
+EAPI void elm_colorselector_palette_name_set(Evas_Object *obj, const char
*palette_name);
+
+/**
+ * Get current palette's name
+ *
+ * @param obj The Colorselector object
+ * @return Name of palette
+ *
+ * Returns the currently set palette name using which colors will be
+ * saved/loaded in to config.
+ *
+ * @ingroup Colorselector
+ */
+EAPI const char *elm_colorselector_palette_name_get(const Evas_Object *obj);
--
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr