This commit is contained in:
Daiki Ueno
2011-01-26 12:50:22 +09:00
parent 5e4a6b2c8e
commit 4accb1e952
6 changed files with 69 additions and 5 deletions

View File

@ -571,6 +571,13 @@ eek_keyboard_find_key_by_keycode (EekKeyboard *keyboard,
find_key_by_keycode (keyboard, keycode);
}
/**
* eek_keyboard_get_layout:
* @keyboard: an #EekKeyboard
*
* Get the layout used to create @keyboard.
* Returns: an #EekLayout
*/
EekLayout *
eek_keyboard_get_layout (EekKeyboard *keyboard)
{
@ -581,6 +588,14 @@ eek_keyboard_get_layout (EekKeyboard *keyboard)
return priv->layout;
}
/**
* eek_keyboard_get_size:
* @keyboard: an #EekKeyboard
* @width: width of @keyboard
* @height: height of @keyboard
*
* Get the size of @keyboard.
*/
void
eek_keyboard_get_size (EekKeyboard *keyboard,
gdouble *width,
@ -594,6 +609,13 @@ eek_keyboard_get_size (EekKeyboard *keyboard,
*height = bounds.height;
}
/**
* eek_keyboard_set_modifier_behavior:
* @keyboard: an #EekKeyboard
* @modifier_behavior: modifier behavior of @keyboard
*
* Set the modifier handling mode of @keyboard.
*/
void
eek_keyboard_set_modifier_behavior (EekKeyboard *keyboard,
EekModifierBehavior modifier_behavior)
@ -606,6 +628,13 @@ eek_keyboard_set_modifier_behavior (EekKeyboard *keyboard,
priv->modifier_behavior = modifier_behavior;
}
/**
* eek_keyboard_get_modifier_behavior:
* @keyboard: an #EekKeyboard
*
* Get the modifier handling mode of @keyboard.
* Returns: #EekModifierBehavior
*/
EekModifierBehavior
eek_keyboard_get_modifier_behavior (EekKeyboard *keyboard)
{
@ -617,6 +646,13 @@ eek_keyboard_get_modifier_behavior (EekKeyboard *keyboard)
return priv->modifier_behavior;
}
/**
* eek_keyboard_get_modifiers:
* @keyboard: an #EekKeyboard
*
* Get the current modifier status of @keyboard.
* Returns: #EekModifierType
*/
EekModifierType
eek_keyboard_get_modifiers (EekKeyboard *keyboard)
{

View File

@ -55,6 +55,8 @@ struct _EekKeyboard
* @create_section: virtual function for creating a section
* @find_key_by_keycode: virtual function for finding a key in the
* keyboard by keycode
* @key_pressed: class handler for #EekKeyboard::key-pressed signal
* @key_released: class handler for #EekKeyboard::key-released signal
* @keysym_index_changed: class handler for #EekKeyboard::keysym-index-changed signal
*/
struct _EekKeyboardClass

View File

@ -170,6 +170,12 @@ eek_keysym_get_category (guint keysym)
return EEK_KEYSYM_CATEGORY_UNKNOWN;
}
/**
* eek_keysym_to_modifier:
* @keysym: keysym ID
*
* Return a modifier mask which @keysym affects.
*/
EekModifierType
eek_keysym_to_modifier (guint keysym)
{

View File

@ -104,6 +104,14 @@ typedef enum
#define EEK_KEY_Hyper_R 0xffee
EekModifierType eek_keysym_to_modifier (guint keysym);
/**
* eek_keysym_is_modifier:
* @keysym: keysym ID
*
* Check if @keysym is a modifier key.
* Returns: %TRUE if @keysym is a modifier.
*/
#define eek_keysym_is_modifier(keysym) (eek_keysym_to_modifier ((keysym)) != 0)
#endif /* EEK_KEYSYM_H */

View File

@ -44,7 +44,7 @@ struct _EekLayout
/**
* EekLayoutClass:
* @apply: virtual function for applying the layout to a keyboard
* @create_keyboard: virtual function for creating a keyboard
* @get_group: virtual function for getting the current group setting
* of the layout
* @group_changed: class handler for #EekLayout::group-changed signal