NimfServiceIC 3 NIMF Library
NimfServiceIC

## Functions

void | nimf_service_ic_focus_in ()
void | nimf_service_ic_focus_out ()
gboolean | nimf_service_ic_filter_event ()
void | nimf_service_ic_set_surrounding ()
void | nimf_service_ic_set_use_preedit ()
gboolean | nimf_service_ic_get_use_preedit ()
void | nimf_service_ic_set_cursor_location ()
const NimfRectangle * | nimf_service_ic_get_cursor_location ()
void | nimf_service_ic_reset ()
void | nimf_service_ic_change_engine_by_id ()
void | nimf_service_ic_change_engine ()
void | nimf_service_ic_engine_changed ()
NimfEngine * | nimf_service_ic_get_engine ()
const gchar * | nimf_service_ic_get_service_id ()
void | nimf_service_ic_emit_preedit_start ()
void | nimf_service_ic_emit_preedit_changed ()
void | nimf_service_ic_emit_preedit_end ()
void | nimf_service_ic_emit_commit ()
gboolean | nimf_service_ic_emit_retrieve_surrounding ()
gboolean | nimf_service_ic_emit_delete_surrounding ()
void | nimf_service_ic_emit_beep ()

## Object Hierarchy

        GObject
        ╰── NimfServiceIC

## Description

## Functions

### nimf_service_ic_focus_in ()

    void
    nimf_service_ic_focus_in (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_focus_in

### nimf_service_ic_focus_out ()

    void
    nimf_service_ic_focus_out (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_focus_out

### nimf_service_ic_filter_event ()

    gboolean
    nimf_service_ic_filter_event (NimfServiceIC *ic,
                                  NimfEvent *event);

#### Parameters

ic | a NimfServiceIC |
event | a NimfEvent |

#### Returns

TRUE if the event is consumed.

nimf_service_ic_filter_event

### nimf_service_ic_set_surrounding ()

    void
    nimf_service_ic_set_surrounding (NimfServiceIC *ic,
                                     const char *text,
                                     gint len,
                                     gint cursor_index);

#### Parameters

ic | a NimfServiceIC |
text | text |
len | length |
cursor_index | cursor index |

nimf_service_ic_set_surrounding

### nimf_service_ic_set_use_preedit ()

    void
    nimf_service_ic_set_use_preedit (NimfServiceIC *ic,
                                     gboolean use_preedit);

If use_preedit is `FALSE` (default is `TRUE`), then the input method may use some other input styles, such as over-the-spot, off-the-spot or root-window.

#### Parameters

ic | a NimfServiceIC |
use_preedit | whether the input method should use an on-the-spot input style |

nimf_service_ic_set_use_preedit

### nimf_service_ic_get_use_preedit ()

    gboolean
    nimf_service_ic_get_use_preedit (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

#### Returns

TRUE if an on-the-spot input style is used

nimf_service_ic_get_use_preedit

### nimf_service_ic_set_cursor_location ()

    void
    nimf_service_ic_set_cursor_location (NimfServiceIC *ic,
                                         const NimfRectangle *area);

Notifies the service ic that a change in cursor position has been made. The location is the position of a window position in root window coordinates.

#### Parameters

ic | a NimfServiceIC |
area | a NimfRectangle |

nimf_service_ic_set_cursor_location

### nimf_service_ic_get_cursor_location ()

    const NimfRectangle *
    nimf_service_ic_get_cursor_location (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

#### Returns

a NimfRectangle.

[transfer none]

nimf_service_ic_get_cursor_location

### nimf_service_ic_reset ()

    void
    nimf_service_ic_reset (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_reset

### nimf_service_ic_change_engine_by_id ()

    void
    nimf_service_ic_change_engine_by_id (NimfServiceIC *ic,
                                         const gchar *engine_id);

Changes the engine by engine id.

#### Parameters

ic | a NimfServiceIC |
engine_id | engine id |

nimf_service_ic_change_engine_by_id

### nimf_service_ic_change_engine ()

    void
    nimf_service_ic_change_engine (NimfServiceIC *ic,
                                   const gchar *engine_id,
                                   const gchar *method_id);

Changes the engine by engine id and method id.

#### Parameters

ic | a NimfServiceIC |
engine_id | engine id |
method_id | method id |

nimf_service_ic_change_engine

### nimf_service_ic_engine_changed ()

    void
    nimf_service_ic_engine_changed (NimfServiceIC *ic,
                                    const gchar *engine_id,
                                    const gchar *name);

#### Parameters

ic | a NimfServiceIC |
engine_id | engine id |
name | name |

nimf_service_ic_engine_changed

### nimf_service_ic_get_engine ()

    NimfEngine *
    nimf_service_ic_get_engine (NimfServiceIC *ic);

Returns the associated NimfEngine instance.

#### Parameters

ic | a NimfServiceIC |

#### Returns

the engine instance.

[transfer none]

nimf_service_ic_get_engine

### nimf_service_ic_get_service_id ()

    const gchar *
    nimf_service_ic_get_service_id (NimfServiceIC *ic);

#### Parameters

ic | a NimfServiceIC |

#### Returns

a service id.

[transfer none]

nimf_service_ic_get_service_id

### nimf_service_ic_emit_preedit_start ()

    void
    nimf_service_ic_emit_preedit_start (NimfServiceIC *ic);

Emits a “preedit-start” signal.

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_emit_preedit_start

### nimf_service_ic_emit_preedit_changed ()

    void
    nimf_service_ic_emit_preedit_changed (NimfServiceIC *ic,
                                          const gchar *preedit_string,
                                          NimfPreeditAttr **attrs,
                                          gint cursor_pos);

Emits a “preedit-changed” signal.

#### Parameters

ic | a NimfServiceIC |
preedit_string | preedit string |
attrs | an array of NimfPreeditAttr |
cursor_pos | cursor position |

nimf_service_ic_emit_preedit_changed

### nimf_service_ic_emit_preedit_end ()

    void
    nimf_service_ic_emit_preedit_end (NimfServiceIC *ic);

Emits a “preedit-end” signal.

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_emit_preedit_end

### nimf_service_ic_emit_commit ()

    void
    nimf_service_ic_emit_commit (NimfServiceIC *ic,
                                 const gchar *text);

Emits a “commit” signal.

#### Parameters

ic | a NimfServiceIC |
text | text to commit |

nimf_service_ic_emit_commit

### nimf_service_ic_emit_retrieve_surrounding ()

    gboolean
    nimf_service_ic_emit_retrieve_surrounding
                                   (NimfServiceIC *ic);

Emits a “retrieve-surrounding” signal.

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_emit_retrieve_surrounding

### nimf_service_ic_emit_delete_surrounding ()

    gboolean
    nimf_service_ic_emit_delete_surrounding
                                   (NimfServiceIC *ic,
                                    gint offset,
                                    gint n_chars);

Emits a “delete-surrounding” signal.

#### Parameters

ic | a NimfServiceIC |
offset | the character offset from the cursor position of the text to be deleted. A negative value indicates a position before the cursor. |
n_chars | the number of characters to be deleted |

#### Returns

`TRUE` if the signal was handled.

nimf_service_ic_emit_delete_surrounding

### nimf_service_ic_emit_beep ()

    void
    nimf_service_ic_emit_beep (NimfServiceIC *ic);

Emits a “beep” signal.

#### Parameters

ic | a NimfServiceIC |

nimf_service_ic_emit_beep