Trait gdk4::prelude::DisplayExtManual  
source · pub trait DisplayExtManual: Sealed + IsA<Display> + 'static {
    // Provided methods
    fn translate_key(
        &self,
        keycode: u32,
        state: ModifierType,
        group: i32
    ) -> Option<(Key, i32, i32, ModifierType)> { ... }
    fn get_setting(&self, name: impl IntoGStr) -> Option<Value> { ... }
    fn map_keyval(&self, keyval: Key) -> Option<Vec<KeymapKey>> { ... }
    fn map_keycode(&self, keycode: u32) -> Option<Vec<(KeymapKey, Key)>> { ... }
    fn backend(&self) -> Backend { ... }
}Expand description
Trait containing manually implemented methods of Display.
Provided Methods§
sourcefn translate_key(
    &self,
    keycode: u32,
    state: ModifierType,
    group: i32
) -> Option<(Key, i32, i32, ModifierType)>
 
fn translate_key( &self, keycode: u32, state: ModifierType, group: i32 ) -> Option<(Key, i32, i32, ModifierType)>
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.
keycode
a keycode
state
a modifier state
group
active keyboard group
Returns
true if there was a keyval bound to keycode/state/group.
keyval
return location for keyval
effective_group
return location for effective group
level
return location for level
consumed
return location for modifiers that were used to determine the group or level
sourcefn get_setting(&self, name: impl IntoGStr) -> Option<Value>
 
fn get_setting(&self, name: impl IntoGStr) -> Option<Value>
sourcefn map_keyval(&self, keyval: Key) -> Option<Vec<KeymapKey>>
 
fn map_keyval(&self, keyval: Key) -> Option<Vec<KeymapKey>>
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().
keyval
a keyval, such as GDK_KEY_a, GDK_KEY_Up, GDK_KEY_Return, etc.
Returns
true if keys were found and returned
keys
return location
for an array of KeymapKey
sourcefn map_keycode(&self, keycode: u32) -> Option<Vec<(KeymapKey, Key)>>
 
fn map_keycode(&self, keycode: u32) -> Option<Vec<(KeymapKey, Key)>>
Returns the keyvals bound to @keycode.
The Nth KeymapKey in @keys is bound to the Nth keyval in @keyvals.
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.
Free the returned arrays with g_free().
keycode
a keycode
Returns
true if there were any entries
keys
return
location for array of KeymapKey
keyvals
return location for array of keyvals