princeamd pushed a commit to branch ecore-1.7.
commit 753b1402fd9a875da0d1df191c93bfd7d5ff78d0
Author: Christopher Michael <[email protected]>
Date: Wed Jan 30 09:32:52 2013 +0000
Backport: 1330412 :: Deprecate old ecore_x_randr_crtc_gamma functions. Add
new ecore_x_randr_crtc_gamma functions that use the proper structure. Add some
missing UNUSED for function params.
Signed-off-by: Christopher Michael <[email protected]>
SVN revision: 83465
Signed-off-by: Deon Thomas <[email protected]>
---
src/lib/ecore_x/xlib/ecore_x_randr.c | 86 +++++++++++++++++++++++++++++++-----
1 file changed, 76 insertions(+), 10 deletions(-)
diff --git a/src/lib/ecore_x/xlib/ecore_x_randr.c
b/src/lib/ecore_x/xlib/ecore_x_randr.c
index ecaf15c..4a4f610 100644
--- a/src/lib/ecore_x/xlib/ecore_x_randr.c
+++ b/src/lib/ecore_x/xlib/ecore_x_randr.c
@@ -1977,24 +1977,90 @@ ecore_x_randr_output_name_get(Ecore_X_Window root,
Ecore_X_Randr_Output output,
return NULL;
}
+/*
+ * @deprecated use ecore_x_randr_crtc_gamma_size_get()
+ */
+EINA_DEPRECATED EAPI int
+ecore_x_randr_crtc_gamma_ramp_size_get(Ecore_X_Randr_Crtc crtc EINA_UNUSED)
+{
+ return 0;
+}
+
+/*
+ * @deprecated use ecore_x_randr_crtc_gamma_get()
+ */
+EINA_DEPRECATED EAPI Ecore_X_Randr_Crtc_Gamma **
+ecore_x_randr_crtc_gamma_ramps_get(Ecore_X_Randr_Crtc crtc EINA_UNUSED)
+{
+ return NULL;
+}
+
+/*
+ * @deprecated use ecore_x_randr_crtc_gamma_set()
+ */
+EINA_DEPRECATED EAPI Eina_Bool
+ecore_x_randr_crtc_gamma_ramps_set(Ecore_X_Randr_Crtc crtc EINA_UNUSED, const
Ecore_X_Randr_Crtc_Gamma *red EINA_UNUSED, const Ecore_X_Randr_Crtc_Gamma
*green EINA_UNUSED, const Ecore_X_Randr_Crtc_Gamma *blue EINA_UNUSED)
+{
+ return EINA_FALSE;
+}
+
+/*
+ * @since 1.8
+ */
EAPI int
-ecore_x_randr_crtc_gamma_ramp_size_get(Ecore_X_Randr_Crtc crtc)
+ecore_x_randr_crtc_gamma_size_get(Ecore_X_Randr_Crtc crtc)
{
- /* TODO: !!! */
+#ifdef ECORE_XRANDR
+ if (_randr_version < RANDR_VERSION_1_2) return 0;
+ return XRRGetCrtcGammaSize(_ecore_x_disp, crtc);
+#endif
return 0;
}
-EAPI Ecore_X_Randr_Crtc_Gamma **
-ecore_x_randr_crtc_gamma_ramps_get(Ecore_X_Randr_Crtc crtc)
+/*
+ * @since 1.8
+ */
+EAPI Ecore_X_Randr_Crtc_Gamma_Info *
+ecore_x_randr_crtc_gamma_get(Ecore_X_Randr_Crtc crtc)
{
- /* TODO: !!! */
+#ifdef ECORE_XRANDR
+ Ecore_X_Randr_Crtc_Gamma_Info *info = NULL;
+ XRRCrtcGamma *xgamma = NULL;
+
+ if (_randr_version < RANDR_VERSION_1_2) return NULL;
+
+ /* try to get the gamma for this crtc from Xrandr */
+ if (!(xgamma = XRRGetCrtcGamma(_ecore_x_disp, crtc)))
+ return NULL;
+
+ /* try to allocate space for the return struct and copy the results in */
+ if ((info = malloc(sizeof(Ecore_X_Randr_Crtc_Gamma_Info))))
+ memcpy(info, xgamma, sizeof(Ecore_X_Randr_Crtc_Gamma_Info));
+
+ /* free the returned gamma resource */
+ XRRFreeGamma(xgamma);
+
+ return info;
+#endif
return NULL;
}
+/*
+ * @since 1.8
+ */
EAPI Eina_Bool
-ecore_x_randr_crtc_gamma_ramps_set(Ecore_X_Randr_Crtc crtc, const
Ecore_X_Randr_Crtc_Gamma *red, const Ecore_X_Randr_Crtc_Gamma *green, const
Ecore_X_Randr_Crtc_Gamma *blue)
+ecore_x_randr_crtc_gamma_set(Ecore_X_Randr_Crtc crtc, const
Ecore_X_Randr_Crtc_Gamma_Info *gamma)
{
- /* TODO: !!! */
+#ifdef ECORE_XRANDR
+ if (_randr_version < RANDR_VERSION_1_2) return EINA_FALSE;
+
+ /* try to set the gamma
+ *
+ * NB: XRRSetCrtcGamma returns void
+ */
+ XRRSetCrtcGamma(_ecore_x_disp, crtc, (XRRCrtcGamma *)gamma);
+ return EINA_TRUE;
+#endif
return EINA_FALSE;
}
@@ -2259,7 +2325,7 @@ ecore_x_randr_output_size_mm_get(Ecore_X_Window root,
Ecore_X_Randr_Output outpu
}
EAPI Eina_Bool
-ecore_x_randr_output_crtc_set(Ecore_X_Window root, Ecore_X_Randr_Output
output, const Ecore_X_Randr_Crtc crtc)
+ecore_x_randr_output_crtc_set(Ecore_X_Window root EINA_UNUSED,
Ecore_X_Randr_Output output EINA_UNUSED, const Ecore_X_Randr_Crtc crtc
EINA_UNUSED)
{
/* TODO: !! */
return EINA_FALSE;
@@ -2571,7 +2637,7 @@ ecore_x_randr_output_wired_clones_get(Ecore_X_Window root
EINA_UNUSED, Ecore_X_R
}
EAPI Ecore_X_Randr_Output **
-ecore_x_randr_output_compatibility_list_get(Ecore_X_Window root,
Ecore_X_Randr_Output output, int *num)
+ecore_x_randr_output_compatibility_list_get(Ecore_X_Window root EINA_UNUSED,
Ecore_X_Randr_Output output EINA_UNUSED, int *num EINA_UNUSED)
{
/* TODO: (1.3) !! */
//RR_PROPERTY_COMPATIBILITY_LIST
@@ -2635,7 +2701,7 @@ ecore_x_randr_output_signal_formats_get(Ecore_X_Window
root EINA_UNUSED, Ecore_X
}
EAPI Eina_Bool
-ecore_x_randr_output_signal_format_set(Ecore_X_Window root,
Ecore_X_Randr_Output output, Ecore_X_Randr_Signal_Format *signal)
+ecore_x_randr_output_signal_format_set(Ecore_X_Window root EINA_UNUSED,
Ecore_X_Randr_Output output EINA_UNUSED, Ecore_X_Randr_Signal_Format *sig
EINA_UNUSED)
{
/* TODO: (1.3) !! */
//RR_PROPERTY_SIGNAL_FORMAT
--
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev