## GtkIMMulticontext GtkIMMulticontext — An input method context supporting multiple, loadable input methods |

## Functions

GtkIMContext * | gtk_im_multicontext_new ()
void | gtk_im_multicontext_append_menuitems ()
const char * | gtk_im_multicontext_get_context_id ()
void | gtk_im_multicontext_set_context_id ()

## Types and Values

struct | GtkIMMulticontext

## Object Hierarchy

        GObject
        ╰── GtkIMContext
            ╰── GtkIMMulticontext

## Includes

    #include <gtk/gtk.h>

## Description

## Functions

### gtk_im_multicontext_new ()

    GtkIMContext *
    gtk_im_multicontext_new (void);

Creates a new GtkIMMulticontext.

#### Returns

a new GtkIMMulticontext.

### gtk_im_multicontext_append_menuitems ()

    void
    gtk_im_multicontext_append_menuitems (GtkIMMulticontext *context,
                                          GtkMenuShell *menushell);

`gtk_im_multicontext_append_menuitems` has been deprecated since version 3.10 and should not be used in newly-written code.

It is better to use the system-wide input method framework for changing input methods. Modern desktop shells offer on-screen displays for this that can triggered with a keyboard shortcut, e.g. Super-Space.

Add menuitems for various available input methods to a menu; the menuitems, when selected, will switch the input method for the context and the global default input method.

#### Parameters

context | a GtkIMMulticontext |
menushell | a GtkMenuShell |

### gtk_im_multicontext_get_context_id ()

    const char *
    gtk_im_multicontext_get_context_id (GtkIMMulticontext *context);

Gets the id of the currently active slave of the `context` .

#### Parameters

context | a GtkIMMulticontext |

#### Returns

the id of the currently active slave

Since: 2.16

### gtk_im_multicontext_set_context_id ()

    void
    gtk_im_multicontext_set_context_id (GtkIMMulticontext *context,
                                        const char *context_id);

Sets the context id for `context` .

This causes the currently active slave of `context` to be replaced by the slave corresponding to the new context id.

#### Parameters

context | a GtkIMMulticontext |
context_id | the id to use |

Since: 2.16

## Types and Values

### struct GtkIMMulticontext

    struct GtkIMMulticontext;