http://i.imgur.com/HhGdB.jpg

Daniel Juyung Seo (SeoZ)

On Wed, Mar 7, 2012 at 7:13 PM, Enlightenment SVN
<no-re...@enlightenment.org> wrote:
> Log:
> ecore/ecore_x - added ecore_x_illume clipboard stuff.
>
>
>
> Author:       hermet
> Date:         2012-03-07 02:13:24 -0800 (Wed, 07 Mar 2012)
> New Revision: 68920
> Trac:         http://trac.enlightenment.org/e/changeset/68920
>
> Modified:
>  trunk/ecore/src/lib/ecore_x/Ecore_X.h 
> trunk/ecore/src/lib/ecore_x/Ecore_X_Atoms.h 
> trunk/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h 
> trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_atoms.c 
> trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_e.c 
> trunk/ecore/src/lib/ecore_x/xlib/ecore_x_atoms.c 
> trunk/ecore/src/lib/ecore_x/xlib/ecore_x_e.c
>
> Modified: trunk/ecore/src/lib/ecore_x/Ecore_X.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/Ecore_X.h       2012-03-07 10:04:54 UTC (rev 
> 68919)
> +++ trunk/ecore/src/lib/ecore_x/Ecore_X.h       2012-03-07 10:13:24 UTC (rev 
> 68920)
> @@ -1111,6 +1111,13 @@
>    ECORE_X_ILLUME_INDICATOR_STATE_ON
>  } Ecore_X_Illume_Indicator_State;
>
> +typedef enum _Ecore_X_Illume_Clipboard_State
> +{
> +   ECORE_X_ILLUME_CLIPBOARD_STATE_UNKNOWN = 0,
> +   ECORE_X_ILLUME_CLIPBOARD_STATE_OFF,
> +   ECORE_X_ILLUME_CLIPBOARD_STATE_ON
> +} Ecore_X_Illume_Clipboard_State;
> +
>  /* Window layer constants */
>  #define ECORE_X_WINDOW_LAYER_BELOW  2
>  #define ECORE_X_WINDOW_LAYER_NORMAL 4
> @@ -2411,6 +2418,25 @@
>  ecore_x_e_illume_quickpanel_position_update_send(Ecore_X_Window win);
>
>  EAPI void
> +ecore_x_e_illume_clipboard_state_set(Ecore_X_Window win,
> +                                     Ecore_X_Illume_Clipboard_State state);
> +
> +EAPI Ecore_X_Illume_Clipboard_State
> +ecore_x_e_illume_clipboard_state_get(Ecore_X_Window win);
> +
> +EAPI void
> +ecore_x_e_illume_clipboard_geometry_set(Ecore_X_Window win,
> +                                        int x,
> +                                        int y,
> +                                        int w,
> +                                        int h);
> +EAPI Eina_Bool
> +ecore_x_e_illume_clipboard_geometry_get(Ecore_X_Window win,
> +                                        int *x,
> +                                        int *y,
> +                                        int *w,
> +                                        int *h);
> +EAPI void
>  ecore_x_e_comp_sync_counter_set(Ecore_X_Window win,
>                                 Ecore_X_Sync_Counter counter);
>  EAPI Ecore_X_Sync_Counter
>
> Modified: trunk/ecore/src/lib/ecore_x/Ecore_X_Atoms.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/Ecore_X_Atoms.h 2012-03-07 10:04:54 UTC (rev 
> 68919)
> +++ trunk/ecore/src/lib/ecore_x/Ecore_X_Atoms.h 2012-03-07 10:13:24 UTC (rev 
> 68920)
> @@ -241,6 +241,10 @@
>  EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_STATE;
>  EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_ON;
>  EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_OFF;
> +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE;
> +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON;
> +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF;
> +EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY;
>
>  EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_COUNTER;
>  EAPI extern Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_DRAW_DONE;
>
> Modified: trunk/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h    2012-03-07 10:04:54 
> UTC (rev 68919)
> +++ trunk/ecore/src/lib/ecore_x/ecore_x_atoms_decl.h    2012-03-07 10:13:24 
> UTC (rev 68920)
> @@ -267,6 +267,8 @@
>  EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_STATE = 0;
>  EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_ON = 0;
>  EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_INDICATOR_OFF = 0;
> +EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE = 0;
> +EAPI Ecore_X_Atom ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY = 0;
>
>  EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_COUNTER = 0;
>  EAPI Ecore_X_Atom ECORE_X_ATOM_E_COMP_SYNC_DRAW_DONE = 0;
>
> Modified: trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_atoms.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_atoms.c   2012-03-07 10:04:54 
> UTC (rev 68919)
> +++ trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_atoms.c   2012-03-07 10:13:24 
> UTC (rev 68920)
> @@ -252,7 +252,10 @@
>    { "_E_ILLUME_INDICATOR_STATE", &ECORE_X_ATOM_E_ILLUME_INDICATOR_STATE },
>    { "_E_ILLUME_INDICATOR_ON", &ECORE_X_ATOM_E_ILLUME_INDICATOR_ON },
>    { "_E_ILLUME_INDICATOR_OFF", &ECORE_X_ATOM_E_ILLUME_INDICATOR_OFF },
> -
> +   { "_E_ILLUME_CLIPBOARD_STATE", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE },
> +   { "_E_ILLUME_CLIPBOARD_ON", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON },
> +   { "_E_ILLUME_CLIPBOARD_OFF", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF },
> +   { "_E_ILLUME_CLIPBOARD_GEOMETRY", 
> &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY },
>    { "_E_COMP_SYNC_COUNTER", &ECORE_X_ATOM_E_COMP_SYNC_COUNTER },
>    { "_E_COMP_SYNC_DRAW_DONE", &ECORE_X_ATOM_E_COMP_SYNC_DRAW_DONE },
>    { "_E_COMP_SYNC_SUPPORTED", &ECORE_X_ATOM_E_COMP_SYNC_SUPPORTED },
>
> Modified: trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_e.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_e.c       2012-03-07 10:04:54 
> UTC (rev 68919)
> +++ trunk/ecore/src/lib/ecore_x/xcb/ecore_xcb_e.c       2012-03-07 10:13:24 
> UTC (rev 68920)
> @@ -721,7 +721,100 @@
>                                  0, 0, 0, 0, 0);
>  }
>
> +static Ecore_X_Atom
> +_ecore_xcb_e_clipboard_atom_get(Ecore_X_Illume_Clipboard_State state)
> +{
> +   switch (state)
> +     {
> +      case ECORE_X_ILLUME_CLIPBOARD_STATE_ON:
> +        return ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON;
> +      case ECORE_X_ILLUME_CLIPBOARD_STATE_OFF:
> +        return ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF;
> +      default:
> +        break;
> +     }
> +   return 0;
> +}
> +
> +static Ecore_X_Illume_Clipboard_State
> +_ecore_xcb_e_clipboard_state_get(Ecore_X_Atom atom)
> +{
> +   if (atom == ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON)
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_ON;
> +
> +   if (atom == ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF)
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_OFF;
> +
> +   return ECORE_X_ILLUME_INDICATOR_STATE_UNKNOWN;
> +}
> +
>  EAPI void
> +ecore_x_e_illume_clipboard_state_set(Ecore_X_Window win,
> +                                     Ecore_X_Illume_Clipboard_State state)
> +{
> +   Ecore_X_Atom atom = 0;
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   atom = _ecore_xcb_e_clipboard_atom_get(state);
> +
> +   ecore_x_window_prop_atom_set(win,
> +                                ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE,
> +                                &atom, 1);
> +}
> +
> +EAPI Ecore_X_Illume_Clipboard_State
> +ecore_x_e_illume_clipboard_state_get(Ecore_X_Window win)
> +{
> +   Ecore_X_Atom atom = 0;
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +
> +   if (!ecore_x_window_prop_atom_get(win,
> +                                     ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE,
> +                                     &atom, 1))
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_UNKNOWN;
> +   return _ecore_xcb_clipboard_state_get(atom);
> +}
> +
> +EAPI void
> +ecore_x_e_illume_clipboard_geometry_set(Ecore_X_Window win,
> +                                        int x, int y, int w, int h)
> +{
> +   unsigned int geom[4];
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   geom[0] = x;
> +   geom[1] = y;
> +   geom[2] = w;
> +   geom[3] = h;
> +   ecore_x_window_prop_card32_set(win,
> +                                  ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY,
> +                                  geom, 4);
> +}
> +
> +EAPI Eina_Bool
> +ecore_x_e_illume_clipboard_geometry_get(Ecore_X_Window win,
> +                                        int *x, int *y, int *w, int *h)
> +{
> +   int ret = 0;
> +   unsigned int geom[4];
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   ret =
> +      ecore_x_window_prop_card32_get(win,
> +                                     
> ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY,
> +                                     geom, 4);
> +   if (ret != 4) return EINA_FALSE;
> +
> +   if (x) *x = geom[0];
> +   if (y) *y = geom[1];
> +   if (w) *w = geom[2];
> +   if (h) *h = geom[3];
> +
> +   return EINA_TRUE;
> +}
> +
> +EAPI void
>  ecore_x_e_illume_mode_set(Ecore_X_Window      win,
>                           Ecore_X_Illume_Mode mode)
>  {
>
> Modified: trunk/ecore/src/lib/ecore_x/xlib/ecore_x_atoms.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xlib/ecore_x_atoms.c    2012-03-07 10:04:54 
> UTC (rev 68919)
> +++ trunk/ecore/src/lib/ecore_x/xlib/ecore_x_atoms.c    2012-03-07 10:13:24 
> UTC (rev 68920)
> @@ -273,7 +273,10 @@
>       { "_E_ILLUME_INDICATOR_STATE", &ECORE_X_ATOM_E_ILLUME_INDICATOR_STATE },
>       { "_E_ILLUME_INDICATOR_ON", &ECORE_X_ATOM_E_ILLUME_INDICATOR_ON },
>       { "_E_ILLUME_INDICATOR_OFF", &ECORE_X_ATOM_E_ILLUME_INDICATOR_OFF },
> -
> +      { "_E_ILLUME_CLIPBOARD_STATE", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE 
> },
> +      { "_E_ILLUME_CLIPBOARD_ON", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON },
> +      { "_E_ILLUME_CLIPBOARD_OFF", &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF },
> +      { "_E_ILLUME_CLIPBOARD_GEOMETRY", 
> &ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY },
>       { "_E_COMP_SYNC_COUNTER", &ECORE_X_ATOM_E_COMP_SYNC_COUNTER },
>       { "_E_COMP_SYNC_DRAW_DONE", &ECORE_X_ATOM_E_COMP_SYNC_DRAW_DONE },
>       { "_E_COMP_SYNC_SUPPORTED", &ECORE_X_ATOM_E_COMP_SYNC_SUPPORTED },
>
> Modified: trunk/ecore/src/lib/ecore_x/xlib/ecore_x_e.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_x/xlib/ecore_x_e.c        2012-03-07 10:04:54 
> UTC (rev 68919)
> +++ trunk/ecore/src/lib/ecore_x/xlib/ecore_x_e.c        2012-03-07 10:13:24 
> UTC (rev 68920)
> @@ -768,7 +768,100 @@
>                                  1, 0, 0, 0, 0);
>  }
>
> +static Ecore_X_Atom
> +_ecore_x_e_clipboard_atom_get(Ecore_X_Illume_Clipboard_State state)
> +{
> +   switch (state)
> +     {
> +      case ECORE_X_ILLUME_CLIPBOARD_STATE_ON:
> +        return ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON;
> +      case ECORE_X_ILLUME_CLIPBOARD_STATE_OFF:
> +        return ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF;
> +      default:
> +        break;
> +     }
> +   return 0;
> +}
> +
> +static Ecore_X_Illume_Clipboard_State
> +_ecore_x_e_clipboard_state_get(Ecore_X_Atom atom)
> +{
> +   if (atom == ECORE_X_ATOM_E_ILLUME_CLIPBOARD_ON)
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_ON;
> +
> +   if (atom == ECORE_X_ATOM_E_ILLUME_CLIPBOARD_OFF)
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_OFF;
> +
> +   return ECORE_X_ILLUME_INDICATOR_STATE_UNKNOWN;
> +}
> +
>  EAPI void
> +ecore_x_e_illume_clipboard_state_set(Ecore_X_Window win,
> +                                     Ecore_X_Illume_Clipboard_State state)
> +{
> +   Ecore_X_Atom atom = 0;
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   atom = _ecore_x_e_clipboard_atom_get(state);
> +
> +   ecore_x_window_prop_atom_set(win,
> +                                ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE,
> +                                &atom, 1);
> +}
> +
> +EAPI Ecore_X_Illume_Clipboard_State
> +ecore_x_e_illume_clipboard_state_get(Ecore_X_Window win)
> +{
> +   Ecore_X_Atom atom = 0;
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +
> +   if (!ecore_x_window_prop_atom_get(win,
> +                                     ECORE_X_ATOM_E_ILLUME_CLIPBOARD_STATE,
> +                                     &atom, 1))
> +     return ECORE_X_ILLUME_CLIPBOARD_STATE_UNKNOWN;
> +   return _ecore_x_e_clipboard_state_get(atom);
> +}
> +
> +EAPI void
> +ecore_x_e_illume_clipboard_geometry_set(Ecore_X_Window win,
> +                                        int x, int y, int w, int h)
> +{
> +   unsigned int geom[4];
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   geom[0] = x;
> +   geom[1] = y;
> +   geom[2] = w;
> +   geom[3] = h;
> +   ecore_x_window_prop_card32_set(win,
> +                                  ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY,
> +                                  geom, 4);
> +}
> +
> +EAPI Eina_Bool
> +ecore_x_e_illume_clipboard_geometry_get(Ecore_X_Window win,
> +                                        int *x, int *y, int *w, int *h)
> +{
> +   int ret = 0;
> +   unsigned int geom[4];
> +
> +   LOGFN(__FILE__, __LINE__, __FUNCTION__);
> +   ret =
> +      ecore_x_window_prop_card32_get(win,
> +                                     
> ECORE_X_ATOM_E_ILLUME_CLIPBOARD_GEOMETRY,
> +                                     geom, 4);
> +   if (ret != 4) return EINA_FALSE;
> +
> +   if (x) *x = geom[0];
> +   if (y) *y = geom[1];
> +   if (w) *w = geom[2];
> +   if (h) *h = geom[3];
> +
> +   return EINA_TRUE;
> +}
> +
> +EAPI void
>  ecore_x_e_comp_sync_counter_set(Ecore_X_Window win,
>                                 Ecore_X_Sync_Counter counter)
>  {
>
>
> ------------------------------------------------------------------------------
> Virtualization & Cloud Management Using Capacity Planning
> Cloud computing makes use of virtualization - but cloud computing
> also focuses on allowing computing to be delivered as a service.
> http://www.accelacomm.com/jaw/sfnl/114/51521223/
> _______________________________________________
> enlightenment-svn mailing list
> enlightenment-...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to