On Wed, Feb 15, 2012 at 2:22 AM, Enlightenment SVN
<no-re...@enlightenment.org> wrote:
> Log:
> ecore_imf: Add ecore_imf APIs to set return key type, disable return key.
>
>
> Author:       jihoon
> Date:         2012-02-14 17:22:28 -0800 (Tue, 14 Feb 2012)
> New Revision: 67946
> Trac:         http://trac.enlightenment.org/e/changeset/67946
>
> Modified:
>  trunk/ecore/ChangeLog trunk/ecore/src/lib/ecore_imf/Ecore_IMF.h 
> trunk/ecore/src/lib/ecore_imf/ecore_imf_context.c 
> trunk/ecore/src/lib/ecore_imf/ecore_imf_private.h 
> trunk/ecore/src/modules/immodules/scim/scim_module.cpp 
> trunk/ecore/src/modules/immodules/xim/ecore_imf_xim.c
>
> Modified: trunk/ecore/ChangeLog
> ===================================================================
> --- trunk/ecore/ChangeLog       2012-02-15 00:47:11 UTC (rev 67945)
> +++ trunk/ecore/ChangeLog       2012-02-15 01:22:28 UTC (rev 67946)
> @@ -489,3 +489,8 @@
>  2012-02-10  Christopher Michael (devilhorns)
>
>         * Add Ecore_Evas function to allow setting a mouse pointer from 
> efl/elm wayland clients.
> +
> +2012-02-15  Jihoon Kim (jihoon)
> +
> +        * Add ecore_imf APIs to set return key type, disable return key.
> +
>
> Modified: trunk/ecore/src/lib/ecore_imf/Ecore_IMF.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_imf/Ecore_IMF.h   2012-02-15 00:47:11 UTC (rev 
> 67945)
> +++ trunk/ecore/src/lib/ecore_imf/Ecore_IMF.h   2012-02-15 01:22:28 UTC (rev 
> 67946)
> @@ -161,6 +161,18 @@
>    ECORE_IMF_INPUT_PANEL_LANG_ALPHABET      /**< Alphabet */
>  } Ecore_IMF_Input_Panel_Lang;
>
> +typedef enum
> +{
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH,
> +   ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND
> +} Ecore_IMF_Input_Panel_Return_Key_Type;
> +

you must also document the typedef, and saying it's from 1.2

Vincent


>  struct _Ecore_IMF_Event_Preedit_Start
>  {
>    Ecore_IMF_Context *ctx;
> @@ -347,6 +359,8 @@
>    void (*cursor_location_set) (Ecore_IMF_Context *ctx, int x, int y, int w, 
> int h);
>    void (*input_panel_imdata_set)(Ecore_IMF_Context *ctx, const void* data, 
> int len);
>    void (*input_panel_imdata_get)(Ecore_IMF_Context *ctx, void* data, int 
> *len);
> +   void (*input_panel_return_key_type_set) (Ecore_IMF_Context *ctx, 
> Ecore_IMF_Input_Panel_Return_Key_Type return_key_type);
> +   void (*input_panel_return_key_disabled_set) (Ecore_IMF_Context *ctx, 
> Eina_Bool disabled);
>  };
>
>  struct _Ecore_IMF_Context_Info
> @@ -422,6 +436,10 @@
>  EAPI Eina_Bool                     
> ecore_imf_context_input_panel_enabled_get(Ecore_IMF_Context *ctx);
>  EAPI void                          
> ecore_imf_context_input_panel_imdata_set(Ecore_IMF_Context *ctx, const void 
> *data, int len);
>  EAPI void                          
> ecore_imf_context_input_panel_imdata_get(Ecore_IMF_Context *ctx, void *data, 
> int *len);
> +EAPI void                          
> ecore_imf_context_input_panel_return_key_type_set(Ecore_IMF_Context *ctx, 
> Ecore_IMF_Input_Panel_Return_Key_Type actiontype);
> +EAPI Ecore_IMF_Input_Panel_Return_Key_Type 
> ecore_imf_context_input_panel_return_key_type_get(Ecore_IMF_Context *ctx);
> +EAPI void                          
> ecore_imf_context_input_panel_return_key_disabled_set(Ecore_IMF_Context *ctx, 
> Eina_Bool disabled);
> +EAPI Eina_Bool                     
> ecore_imf_context_input_panel_return_key_disabled_get(Ecore_IMF_Context *ctx);
>
>  /* The following entry points must be exported by each input method module
>  */
>
> Modified: trunk/ecore/src/lib/ecore_imf/ecore_imf_context.c
> ===================================================================
> --- trunk/ecore/src/lib/ecore_imf/ecore_imf_context.c   2012-02-15 00:47:11 
> UTC (rev 67945)
> +++ trunk/ecore/src/lib/ecore_imf/ecore_imf_context.c   2012-02-15 01:22:28 
> UTC (rev 67946)
> @@ -1428,3 +1428,93 @@
>    if (ctx->klass->input_panel_imdata_get)
>      ctx->klass->input_panel_imdata_get(ctx, data, len);
>  }
> +
> +/**
> + * Set the "return" key type. This type is used to set string or icon on the 
> "return" key of the input panel.
> + *
> + * An input panel displays the string or icon associated with this type
> + *
> + * @param ctx An #Ecore_IMF_Context.
> + * @param return_key_type The type of "return" key on the input panel
> + * @ingroup Ecore_IMF_Context_Group
> + * @since 1.2.0
> + */
> +EAPI void
> +ecore_imf_context_input_panel_return_key_type_set(Ecore_IMF_Context *ctx, 
> Ecore_IMF_Input_Panel_Return_Key_Type return_key_type)
> +{
> +   if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
> +     {
> +        ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
> +                         
> "ecore_imf_context_input_panel_return_key_type_set");
> +        return;
> +     }
> +
> +   ctx->input_panel_return_key_type = return_key_type;
> +   if (ctx->klass->input_panel_return_key_type_set) 
> ctx->klass->input_panel_return_key_type_set(ctx, return_key_type);
> +}
> +
> +/**
> + * Get the "return" key type.
> + *
> + * @see ecore_imf_context_input_panel_return_key_type_set() for more details
> + *
> + * @param ctx An #Ecore_IMF_Context.
> + * @return The type of "return" key on the input panel
> + * @ingroup Ecore_IMF_Context_Group
> + * @since 1.2.0
> + */
> +EAPI Ecore_IMF_Input_Panel_Return_Key_Type
> +ecore_imf_context_input_panel_return_key_type_get(Ecore_IMF_Context *ctx)
> +{
> +   if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
> +     {
> +        ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
> +                         
> "ecore_imf_context_input_panel_return_key_type_get");
> +        return EINA_FALSE;
> +     }
> +
> +   return ctx->input_panel_return_key_type;
> +}
> +
> +/**
> + * Set the return key on the input panel to be disabled.
> + *
> + * @param ctx An #Ecore_IMF_Context.
> + * @param disabled The state
> + * @ingroup Ecore_IMF_Context_Group
> + * @since 1.2.0
> + */
> +EAPI void
> +ecore_imf_context_input_panel_return_key_disabled_set(Ecore_IMF_Context 
> *ctx, Eina_Bool disabled)
> +{
> +   if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
> +     {
> +        ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
> +                         
> "ecore_imf_context_input_panel_return_key_disabled_set");
> +        return;
> +     }
> +
> +   ctx->input_panel_return_key_disabled = disabled;
> +   if (ctx->klass->input_panel_return_key_disabled_set) 
> ctx->klass->input_panel_return_key_disabled_set(ctx, disabled);
> +}
> +
> +/**
> + * Get whether the return key on the input panel should be disabled or not.
> + *
> + * @param ctx An #Ecore_IMF_Context.
> + * @return EINA_TRUE if it should be disabled
> + * @ingroup Ecore_IMF_Context_Group
> + * @since 1.2.0
> + */
> +EAPI Eina_Bool
> +ecore_imf_context_input_panel_return_key_disabled_get(Ecore_IMF_Context *ctx)
> +{
> +   if (!ECORE_MAGIC_CHECK(ctx, ECORE_MAGIC_CONTEXT))
> +     {
> +        ECORE_MAGIC_FAIL(ctx, ECORE_MAGIC_CONTEXT,
> +                         
> "ecore_imf_context_input_panel_return_key_disabled_get");
> +        return EINA_FALSE;
> +     }
> +
> +   return ctx->input_panel_return_key_disabled;
> +}
>
> Modified: trunk/ecore/src/lib/ecore_imf/ecore_imf_private.h
> ===================================================================
> --- trunk/ecore/src/lib/ecore_imf/ecore_imf_private.h   2012-02-15 00:47:11 
> UTC (rev 67945)
> +++ trunk/ecore/src/lib/ecore_imf/ecore_imf_private.h   2012-02-15 01:22:28 
> UTC (rev 67946)
> @@ -52,8 +52,10 @@
>    Ecore_IMF_Autocapital_Type     autocapital_type;
>    Ecore_IMF_Input_Panel_Layout   input_panel_layout;
>    Ecore_IMF_Input_Panel_Lang     input_panel_lang;
> +   Ecore_IMF_Input_Panel_Return_Key_Type input_panel_return_key_type;
>    Eina_Bool                      allow_prediction : 1;
>    Eina_Bool                      input_panel_enabled : 1;
> +   Eina_Bool                      input_panel_return_key_disabled : 1;
>  };
>
>  struct _Ecore_IMF_Module
>
> Modified: trunk/ecore/src/modules/immodules/scim/scim_module.cpp
> ===================================================================
> --- trunk/ecore/src/modules/immodules/scim/scim_module.cpp      2012-02-15 
> 00:47:11 UTC (rev 67945)
> +++ trunk/ecore/src/modules/immodules/scim/scim_module.cpp      2012-02-15 
> 01:22:28 UTC (rev 67946)
> @@ -41,6 +41,8 @@
>         isf_imf_context_cursor_location_set,    /* cursor_location_set */
>         NULL,                                   /* input_panel_imdata_set */
>         NULL,                                   /* input_panel_imdata_get */
> +        NULL,                                   /* 
> input_panel_return_key_type_set */
> +        NULL                                    /* 
> input_panel_return_key_disabled_set */
>    };
>
>    static Ecore_IMF_Context *imf_module_create (void);
>
> Modified: trunk/ecore/src/modules/immodules/xim/ecore_imf_xim.c
> ===================================================================
> --- trunk/ecore/src/modules/immodules/xim/ecore_imf_xim.c       2012-02-15 
> 00:47:11 UTC (rev 67945)
> +++ trunk/ecore/src/modules/immodules/xim/ecore_imf_xim.c       2012-02-15 
> 01:22:28 UTC (rev 67946)
> @@ -800,6 +800,8 @@
>    .cursor_location_set = _ecore_imf_context_xim_cursor_location_set,
>    .input_panel_imdata_set = NULL,
>    .input_panel_imdata_get = NULL,
> +   .input_panel_return_key_type_set = NULL,
> +   .input_panel_return_key_disabled_set = NULL
>  };
>
>  static Ecore_IMF_Context *
>
>
> ------------------------------------------------------------------------------
> 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