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

@ -12,6 +12,9 @@ eek_keyboard_get_level
eek_keyboard_set_group eek_keyboard_set_group
eek_keyboard_set_level eek_keyboard_set_level
eek_keyboard_get_size eek_keyboard_get_size
eek_keyboard_get_modifier_behavior
eek_keyboard_set_modifier_behavior
eek_keyboard_get_modifiers
eek_keyboard_create_section eek_keyboard_create_section
eek_keyboard_find_key_by_keycode eek_keyboard_find_key_by_keycode
<SUBSECTION Standard> <SUBSECTION Standard>
@ -27,9 +30,8 @@ EEK_KEYBOARD_GET_CLASS
<SECTION> <SECTION>
<FILE>eek-layout</FILE> <FILE>eek-layout</FILE>
<TITLE>EekLayout</TITLE> <TITLE>EekLayout</TITLE>
EekLayoutIface EekLayoutClass
EekLayout EekLayout
eek_layout_apply
eek_layout_get_group eek_layout_get_group
<SUBSECTION Standard> <SUBSECTION Standard>
EEK_LAYOUT EEK_LAYOUT
@ -175,12 +177,11 @@ eek_key_get_keycode
eek_key_set_keysyms eek_key_set_keysyms
eek_key_get_keysyms eek_key_get_keysyms
eek_key_get_keysym eek_key_get_keysym
eek_key_get_keysym_at_index
eek_key_set_index eek_key_set_index
eek_key_get_index eek_key_get_index
eek_key_set_outline eek_key_set_outline
eek_key_get_outline eek_key_get_outline
eek_key_set_keysym_index
eek_key_get_keysym_index
eek_key_is_pressed eek_key_is_pressed
<SUBSECTION Standard> <SUBSECTION Standard>
EEK_KEY EEK_KEY
@ -216,6 +217,7 @@ EEK_ELEMENT_GET_CLASS
<SECTION> <SECTION>
<FILE>eek-types</FILE> <FILE>eek-types</FILE>
<TITLE>Basic Types</TITLE>
EekOrientation EekOrientation
EekKeysymMatrix EekKeysymMatrix
EEK_TYPE_KEYSYM_MATRIX EEK_TYPE_KEYSYM_MATRIX
@ -223,6 +225,7 @@ eek_keysym_matrix_get_type
EekPoint EekPoint
EEK_TYPE_POINT EEK_TYPE_POINT
eek_point_get_type eek_point_get_type
eek_point_rotate
EekBounds EekBounds
EEK_TYPE_BOUNDS EEK_TYPE_BOUNDS
eek_bounds_get_type eek_bounds_get_type
@ -230,13 +233,22 @@ eek_bounds_long_side
EekOutline EekOutline
EEK_TYPE_OUTLINE EEK_TYPE_OUTLINE
eek_outline_get_type eek_outline_get_type
EekColor
EEK_TYPE_COLOR
eek_color_get_type
eek_color_new
</SECTION> </SECTION>
<SECTION> <SECTION>
<FILE>eek-keysym</FILE> <FILE>eek-keysym</FILE>
<TITLE>Keysym Utility</TITLE>
EEK_INVALID_KEYSYM EEK_INVALID_KEYSYM
EEK_INVALID_KEYCODE EEK_INVALID_KEYCODE
EekKeysymCategory EekKeysymCategory
eek_keysym_to_string eek_keysym_to_string
eek_keysym_get_category eek_keysym_get_category
eek_keysym_is_modifier
eek_keysym_to_modifier
EekModifierBehavior
EekModifierType
</SECTION> </SECTION>

View File

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

View File

@ -55,6 +55,8 @@ struct _EekKeyboard
* @create_section: virtual function for creating a section * @create_section: virtual function for creating a section
* @find_key_by_keycode: virtual function for finding a key in the * @find_key_by_keycode: virtual function for finding a key in the
* keyboard by keycode * 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 * @keysym_index_changed: class handler for #EekKeyboard::keysym-index-changed signal
*/ */
struct _EekKeyboardClass struct _EekKeyboardClass

View File

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

View File

@ -104,6 +104,14 @@ typedef enum
#define EEK_KEY_Hyper_R 0xffee #define EEK_KEY_Hyper_R 0xffee
EekModifierType eek_keysym_to_modifier (guint keysym); 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) #define eek_keysym_is_modifier(keysym) (eek_keysym_to_modifier ((keysym)) != 0)
#endif /* EEK_KEYSYM_H */ #endif /* EEK_KEYSYM_H */

View File

@ -44,7 +44,7 @@ struct _EekLayout
/** /**
* EekLayoutClass: * 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 * @get_group: virtual function for getting the current group setting
* of the layout * of the layout
* @group_changed: class handler for #EekLayout::group-changed signal * @group_changed: class handler for #EekLayout::group-changed signal