Hmm... I think this just broke my ecore_x. Having problems now like:

  CC     ecore_x_damage.lo
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
function 'ecore_x_default_visual_get':
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1919:
error: array subscript is not an integer
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
function 'ecore_x_default_colormap_get':
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1934:
error: array subscript is not an integer
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c: In
function 'ecore_x_default_depth_get':
/home/antognolli/e17/git_e17/ecore/src/lib/ecore_x/xlib/ecore_x.c:1949:
error: array subscript is not an integer


On Tue, Jul 26, 2011 at 8:19 AM, Enlightenment SVN
<[email protected]> wrote:
> Log:
> Ecore_X: Add some new api functions for getting default
>  Depth/Visual/Colormap of a given screen.
>
>  NB: Added these so that we can remove xlib specific calls in
>  ecore_evas and just generic ecore_x calls (so we are engine
>  independant).
>
>
>
> Author:       devilhorns
> Date:         2011-07-26 04:19:55 -0700 (Tue, 26 Jul 2011)
> New Revision: 61742
> Trac:         http://trac.enlightenment.org/e/changeset/61742
>
> Modified:
>  trunk/ecore/src/lib/ecore_x/Ecore_X.h 
> trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 
> trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c
>
> Modified: trunk/ecore/src/lib/ecore_x/Ecore_X.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/Ecore_X.h       2011-07-26 11:18:48 UTC (rev 
> 61741)
> +++ trunk/ecore/src/lib/ecore_x/Ecore_X.h       2011-07-26 11:19:55 UTC (rev 
> 61742)
> @@ -1089,6 +1089,9 @@
>  EAPI Ecore_X_Screen *        ecore_x_default_screen_get(void);
>  EAPI void                    ecore_x_screen_size_get(const Ecore_X_Screen 
> *screen, int *w, int *h);
>  EAPI int                     ecore_x_screen_count_get(void);
> +EAPI int                     ecore_x_screen_index_get(const Ecore_X_Screen 
> *screen);
> +EAPI Ecore_X_Screen *        ecore_x_screen_get(int index);
> +
>  EAPI void                    ecore_x_double_click_time_set(double t);
>  EAPI double                  ecore_x_double_click_time_get(void);
>  EAPI void                    ecore_x_flush(void);
> @@ -1099,6 +1102,10 @@
>  EAPI Eina_Bool               ecore_x_bell(int percent);
>  EAPI unsigned int            ecore_x_visual_id_get(Ecore_X_Visual visual);
>
> +EAPI Ecore_X_Visual          ecore_x_default_visual_get(Ecore_X_Display 
> *disp, Ecore_X_Screen *screen);
> +EAPI Ecore_X_Colormap        ecore_x_default_colormap_get(Ecore_X_Display 
> *disp, Ecore_X_Screen *screen);
> +EAPI int                     ecore_x_default_depth_get(Ecore_X_Display 
> *disp, Ecore_X_Screen *screen);
> +
>  EAPI Ecore_X_Time            ecore_x_current_time_get(void);
>
>  EAPI void                    ecore_x_error_handler_set(void (*func)(void 
> *data), const void *data);
>
> Modified: trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 2011-07-26 11:18:48 UTC (rev 
> 61741)
> +++ trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb.c 2011-07-26 11:19:55 UTC (rev 
> 61742)
> @@ -1058,9 +1058,9 @@
>  }
>
>  /**
> - * Retrieves the number of screens.
> + * Retrieves the count of screens.
>  *
> - * @return  The count of the number of screens.
> + * @return  The count of screens.
>  * @ingroup Ecore_X_Display_Attr_Group
>  *
>  * @since 1.1
> @@ -1073,6 +1073,54 @@
>    return xcb_setup_roots_length(xcb_get_setup(_ecore_xcb_conn));
>  }
>
> +/**
> + * Retrieves the index number of the given screen.
> + *
> + * @return  The index number of the screen.
> + * @ingroup Ecore_X_Display_Attr_Group
> + *
> + * @since 1.1
> + */
> +EAPI int
> +ecore_x_screen_index_get(const Ecore_X_Screen *screen)
> +{
> +   xcb_screen_iterator_t iter;
> +
> +   iter =
> +     xcb_setup_roots_iterator(xcb_get_setup((xcb_connection_t 
> *)_ecore_xcb_conn));
> +   for (; iter.rem; xcb_screen_next(&iter))
> +     {
> +        if (iter.data == (xcb_screen_t *)screen)
> +          return iter.index;
> +     }
> +
> +   return 0;
> +}
> +
> +/**
> + * Retrieves the screen based on index number.
> + *
> + * @return  The Ecore_X_Screen at this index.
> + * @ingroup Ecore_X_Display_Attr_Group
> + *
> + * @since 1.1
> + */
> +EAPI Ecore_X_Screen *
> +ecore_x_screen_get(int index)
> +{
> +   xcb_screen_iterator_t iter;
> +
> +   iter =
> +     xcb_setup_roots_iterator(xcb_get_setup((xcb_connection_t 
> *)_ecore_xcb_conn));
> +   for (; iter.rem; xcb_screen_next(&iter))
> +     {
> +        if (iter.index == index)
> +          return iter.data;
> +     }
> +
> +   return NULL;
> +}
> +
>  EAPI unsigned int
>  ecore_x_visual_id_get(Ecore_X_Visual visual)
>  {
> @@ -1080,6 +1128,72 @@
>  }
>
>  /**
> + * Retrieve the default Visual.
> + *
> + * @param disp  The Display to get the Default Visual from
> + * @param screen The Screen.
> + *
> + * @return The default visual.
> + * @since 1.1.0
> + */
> +EAPI Ecore_X_Visual
> +ecore_x_default_visual_get(Ecore_X_Display *disp __UNUSED__, Ecore_X_Screen 
> *screen)
> +{
> +   xcb_screen_t *s;
> +   xcb_depth_iterator_t diter;
> +   xcb_visualtype_iterator_t viter;
> +
> +   s = (xcb_screen_t *)screen;
> +   diter = xcb_screen_allowed_depths_iterator(s);
> +   for (; diter.rem; xcb_depth_next(&diter))
> +     {
> +        viter = xcb_depth_visuals_iterator(diter.data);
> +        for (; viter.rem; xcb_visualtype_next(&viter))
> +          {
> +             if (viter.data->visual_id == s->root_visual)
> +               return viter.data;
> +          }
> +     }
> +   return 0;
> +}
> +
> +/**
> + * Retrieve the default Colormap.
> + *
> + * @param disp  The Display to get the Default Colormap from
> + * @param screen The Screen.
> + *
> + * @return The default colormap.
> + * @since 1.1.0
> + */
> +EAPI Ecore_X_Colormap
> +ecore_x_default_colormap_get(Ecore_X_Display *disp __UNUSED__, 
> Ecore_X_Screen *screen)
> +{
> +   xcb_screen_t *s;
> +
> +   s = (xcb_screen_t *)screen;
> +   return s->default_colormap;
> +}
> +
> +/**
> + * Retrieve the default depth.
> + *
> + * @param disp  The Display to get the Default Depth from
> + * @param screen The Screen.
> + *
> + * @return The default depth.
> + * @since 1.1.0
> + */
> +EAPI int
> +ecore_x_default_depth_get(Ecore_X_Display *disp __UNUSED__, Ecore_X_Screen 
> *screen)
> +{
> +   xcb_screen_t *s;
> +
> +   s = (xcb_screen_t *)screen;
> +   return s->root_depth;
> +}
> +
> +/**
>  * Sets the timeout for a double and triple clicks to be flagged.
>  *
>  * This sets the time between clicks before the double_click flag is
>
> Modified: trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c  2011-07-26 11:18:48 UTC (rev 
> 61741)
> +++ trunk/ecore/src/lib/ecore_x/xlib/ecore_x.c  2011-07-26 11:19:55 UTC (rev 
> 61742)
> @@ -728,6 +728,34 @@
>  }
>
>  /**
> + * Retrieves the index number of the given screen.
> + *
> + * @return  The index number of the screen.
> + * @ingroup Ecore_X_Display_Attr_Group
> + *
> + * @since 1.1
> + */
> +EAPI int
> +ecore_x_screen_index_get(const Ecore_X_Screen *screen)
> +{
> +   return XScreenNumberOfScreen((Screen *)screen);
> +}
> +
> +/**
> + * Retrieves the screen based on index number.
> + *
> + * @return  The Ecore_X_Screen at this index.
> + * @ingroup Ecore_X_Display_Attr_Group
> + *
> + * @since 1.1
> + */
> +EAPI Ecore_X_Screen *
> +ecore_x_screen_get(int index)
> +{
> +   return XScreenOfDisplay(_ecore_x_disp, index);
> +}
> +
> +/**
>  * Sets the timeout for a double and triple clicks to be flagged.
>  *
>  * This sets the time between clicks before the double_click flag is
> @@ -1876,6 +1904,51 @@
>    return XVisualIDFromVisual(visual);
>  }
>
> +/**
> + * Retrieve the default Visual.
> + *
> + * @param disp  The Display to get the Default Visual from
> + * @param screen The Screen.
> + *
> + * @return The default visual.
> + * @since 1.1.0
> + */
> +EAPI Ecore_X_Visual
> +ecore_x_default_visual_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
> +{
> +   return DefaultVisual(disp, screen);
> +}
> +
> +/**
> + * Retrieve the default Colormap.
> + *
> + * @param disp  The Display to get the Default Colormap from
> + * @param screen The Screen.
> + *
> + * @return The default colormap.
> + * @since 1.1.0
> + */
> +EAPI Ecore_X_Colormap
> +ecore_x_default_colormap_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
> +{
> +   return DefaultColormap(disp, screen);
> +}
> +
> +/**
> + * Retrieve the default depth.
> + *
> + * @param disp  The Display to get the Default Depth from
> + * @param screen The Screen.
> + *
> + * @return The default depth.
> + * @since 1.1.0
> + */
> +EAPI int
> +ecore_x_default_depth_get(Ecore_X_Display *disp, Ecore_X_Screen *screen)
> +{
> +   return DefaultDepth(disp, screen);
> +}
> +
>  /*****************************************************************************/
>  /*****************************************************************************/
>  /*****************************************************************************/
>
>
> ------------------------------------------------------------------------------
> Magic Quadrant for Content-Aware Data Loss Prevention
> Research study explores the data loss prevention market. Includes in-depth
> analysis on the changes within the DLP market, and the criteria used to
> evaluate the strengths and weaknesses of these DLP solutions.
> http://www.accelacomm.com/jaw/sfnl/114/51385063/
> _______________________________________________
> enlightenment-svn mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>



-- 
Rafael Antognolli
ProFUSION embedded systems
http://profusion.mobi

------------------------------------------------------------------------------
Magic Quadrant for Content-Aware Data Loss Prevention
Research study explores the data loss prevention market. Includes in-depth
analysis on the changes within the DLP market, and the criteria used to
evaluate the strengths and weaknesses of these DLP solutions.
http://www.accelacomm.com/jaw/sfnl/114/51385063/
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to