Class

GdkKeymap

Description [src]

final class Gdk.Keymap : GObject.Object
{
  /* No available fields */
}

A GdkKeymap defines the translation from keyboard state (including a hardware key, a modifier mask, and active keyboard group) to a keyval. This translation has two phases. The first phase is to determine the effective keyboard group and level for the keyboard state; the second phase is to look up the keycode/group/level triplet in the keymap and see what keyval it corresponds to.

Hierarchy

hierarchy this GdkKeymap ancestor_0 GObject ancestor_0--this

Ancestors

Functions

gdk_keymap_get_default

Returns the GdkKeymap attached to the default display.

deprecated: 3.22 

gdk_keymap_get_for_display

Returns the GdkKeymap attached to display.

since: 2.2

Instance methods

gdk_keymap_add_virtual_modifiers

Maps the non-virtual modifiers (i.e Mod2, Mod3, …) which are set in state to the virtual modifiers (i.e. Super, Hyper and Meta) and set the corresponding bits in state.

since: 2.20

gdk_keymap_get_caps_lock_state

Returns whether the Caps Lock modifer is locked.

since: 2.16

gdk_keymap_get_direction

Returns the direction of effective layout of the keymap.

gdk_keymap_get_entries_for_keycode

Returns the keyvals bound to hardware_keycode. The Nth GdkKeymapKey in keys is bound to the Nth keyval in keyvals. Free the returned arrays with g_free(). When a keycode is pressed by the user, the keyval from this list of entries is selected by considering the effective keyboard group and level. See gdk_keymap_translate_keyboard_state().

gdk_keymap_get_entries_for_keyval

Obtains a list of keycode/group/level combinations that will generate keyval. Groups and levels are two kinds of keyboard mode; in general, the level determines whether the top or bottom symbol on a key is used, and the group determines whether the left or right symbol is used. On US keyboards, the shift key changes the keyboard level, and there are no groups. A group switch key might convert a keyboard between Hebrew to English modes, for example. GdkEventKey contains a %group field that indicates the active keyboard group. The level is computed from the modifier mask. The returned array should be freed with g_free().

gdk_keymap_get_modifier_mask

Returns the modifier mask the keymap’s windowing system backend uses for a particular purpose.

since: 3.4

gdk_keymap_get_modifier_state

Returns the current modifier state.

since: 3.4

gdk_keymap_get_num_lock_state

Returns whether the Num Lock modifer is locked.

since: 3.0

gdk_keymap_get_scroll_lock_state

Returns whether the Scroll Lock modifer is locked.

since: 3.18

gdk_keymap_have_bidi_layouts

Determines if keyboard layouts for both right-to-left and left-to-right languages are in use.

since: 2.12

gdk_keymap_lookup_key

Looks up the keyval mapped to a keycode/group/level triplet. If no keyval is bound to key, returns 0. For normal user input, you want to use gdk_keymap_translate_keyboard_state() instead of this function, since the effective group/level may not be the same as the current keyboard state.

gdk_keymap_map_virtual_modifiers

Maps the virtual modifiers (i.e. Super, Hyper and Meta) which are set in state to their non-virtual counterparts (i.e. Mod2, Mod3,…) and set the corresponding bits in state.

since: 2.20

gdk_keymap_translate_keyboard_state

Translates the contents of a GdkEventKey into a keyval, effective group, and level. Modifiers that affected the translation and are thus unavailable for application use are returned in consumed_modifiers. See [Groups][key-group-explanation] for an explanation of groups and levels. The effective_group is the group that was actually used for the translation; some keys such as Enter are not affected by the active keyboard group. The level is derived from state. For convenience, GdkEventKey already contains the translated keyval, so this function isn’t as useful as you might think.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Signals

Gdk.Keymap::direction-changed

The ::direction-changed signal gets emitted when the direction of the keymap changes.

since: 2.0

Gdk.Keymap::keys-changed

The ::keys-changed signal is emitted when the mapping represented by keymap changes.

since: 2.2

Gdk.Keymap::state-changed

The ::state-changed signal is emitted when the state of the keyboard changes, e.g when Caps Lock is turned on or off. See gdk_keymap_get_caps_lock_state().

since: 2.16

Signals inherited from GObject (1)
GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.