diff options
author | Chris Michael <cp.michael@samsung.com> | 2013-07-08 07:19:41 +0100 |
---|---|---|
committer | Chris Michael <cp.michael@samsung.com> | 2013-07-08 07:21:51 +0100 |
commit | babc9c64b7fc532c56066b8d9f9c6e076fdd7d52 (patch) | |
tree | f32136ef17ecba893bbeaf02a7cfecb0915e327f /src/lib/ecore_evas/ecore_evas.c | |
parent | d15d86e26fadb1c27afde01544b2b3e07d2e4c33 (diff) |
Add gl functions for pixmap_new and pixmap_get variation
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Diffstat (limited to 'src/lib/ecore_evas/ecore_evas.c')
-rw-r--r-- | src/lib/ecore_evas/ecore_evas.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c index 7b20a5f1c1..8efb650705 100644 --- a/src/lib/ecore_evas/ecore_evas.c +++ b/src/lib/ecore_evas/ecore_evas.c | |||
@@ -3024,6 +3024,45 @@ ecore_evas_gl_x11_options_new(const char *disp_name, Ecore_X_Window parent, int | |||
3024 | } | 3024 | } |
3025 | 3025 | ||
3026 | /** | 3026 | /** |
3027 | * @brief Create a new Ecore_Evas which does not contain an XWindow. It will | ||
3028 | * only contain an XPixmap to render to | ||
3029 | * | ||
3030 | * @since 1.8 | ||
3031 | */ | ||
3032 | EAPI Ecore_Evas * | ||
3033 | ecore_evas_gl_x11_pixmap_new(const char *disp_name, Ecore_X_Window parent, int x, int y, int w, int h) | ||
3034 | { | ||
3035 | Ecore_Evas *(*new)(const char *, Ecore_X_Window, int, int, int, int); | ||
3036 | Eina_Module *m = _ecore_evas_engine_load("x"); | ||
3037 | EINA_SAFETY_ON_NULL_RETURN_VAL(m, NULL); | ||
3038 | |||
3039 | new = eina_module_symbol_get(m, "ecore_evas_gl_x11_pixmap_new_internal"); | ||
3040 | EINA_SAFETY_ON_NULL_RETURN_VAL(new, NULL); | ||
3041 | |||
3042 | return new(disp_name, parent, x, y, w, h); | ||
3043 | } | ||
3044 | |||
3045 | /** | ||
3046 | * @brief Returns the underlying Ecore_X_Pixmap used in the Ecore_Evas | ||
3047 | * | ||
3048 | * @param ee The Ecore_Evas whose pixmap is desired. | ||
3049 | * @return The underlying Ecore_X_Pixmap | ||
3050 | * | ||
3051 | * @warning Support for this depends on the underlying windowing system. | ||
3052 | * | ||
3053 | * @since 1.8 | ||
3054 | */ | ||
3055 | EAPI Ecore_X_Pixmap | ||
3056 | ecore_evas_gl_x11_pixmap_get(const Ecore_Evas *ee) | ||
3057 | { | ||
3058 | Ecore_Evas_Interface_Gl_X11 *iface; | ||
3059 | iface = (Ecore_Evas_Interface_Gl_X11 *)_ecore_evas_interface_get(ee, "gl_x11"); | ||
3060 | EINA_SAFETY_ON_NULL_RETURN_VAL(iface, 0); | ||
3061 | |||
3062 | return iface->pixmap_get(ee); | ||
3063 | } | ||
3064 | |||
3065 | /** | ||
3027 | * @brief Get the window from Ecore_Evas using opengl x11. | 3066 | * @brief Get the window from Ecore_Evas using opengl x11. |
3028 | * @note If ecore is not compiled with support for x11 or if @p ee was not | 3067 | * @note If ecore is not compiled with support for x11 or if @p ee was not |
3029 | * created with ecore_evas_gl_x11_new() then nothing is done and | 3068 | * created with ecore_evas_gl_x11_new() then nothing is done and |