AHHH, you are correct. Will fix now.

dh

On 07/26/11 09:08, Christopher Michael wrote:
> Don't see how any of that is possible. The newly added functions do not
> use any arrays, so 'array subscript is not an integer' isn't even valid.
> But I will try a rebuild w/ xlib version just to be sure.
>
> 1919: return DefaultVisual(disp, screen);
>
> dh
>
> On 07/26/11 09:03, Rafael Antognolli wrote:
>> 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
>> <no-re...@enlightenment.org>   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-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to