Method

Gdk.Display.translate_key

Declaration [src]

gboolean
gdk_display_translate_key (
  GdkDisplay* display,
  guint keycode,
  GdkModifierType state,
  int group,
  guint* keyval,
  int* effective_group,
  int* level,
  GdkModifierType* consumed
)

Description [src]

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.

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.

consumed_modifiers gives modifiers that should be masked out from state when comparing this key press to a keyboard shortcut. For instance, on a US keyboard, the plus symbol is shifted, so when comparing a key press to a <Control>plus accelerator <Shift> should be masked out.

This function should rarely be needed, since GdkEventKey already contains the translated keyval. It is exported for the benefit of virtualized test environments.

Parameters

keycode guint
 

a keycode

state GdkModifierType
 

a modifier state

group int
 

active keyboard group

keyval guint*
 

return location for keyval, or NULL

 Direction: out
 Ownership of the data is transferred to the callee
effective_group int*
 

return location for effective group, or NULL

 Direction: out
 Ownership of the data is transferred to the callee
level int*
 

return location for level, or NULL

 Direction: out
 Ownership of the data is transferred to the callee
consumed GdkModifierType
 

return location for modifiers that were used to determine the group or level, or NULL

 Direction: out
 Ownership of the data is transferred to the callee

Return value

Returns: gboolean

TRUE if there was a keyval bound to keycode/state/group.