EekKey

EekKey — Base class of a key

Synopsis

                    EekKeyClass;
                    EekKeyPrivate;
                    EekKey;
void                eek_key_set_keycode                 (EekKey *key,
                                                         guint keycode);
guint               eek_key_get_keycode                 (EekKey *key);
void                eek_key_set_keysyms                 (EekKey *key,
                                                         guint *keysyms,
                                                         gint num_groups,
                                                         gint num_levels);
void                eek_key_get_keysyms                 (EekKey *key,
                                                         guint **keysyms,
                                                         gint *num_groups,
                                                         gint *num_levels);
guint               eek_key_get_keysym                  (EekKey *key);
void                eek_key_set_index                   (EekKey *key,
                                                         gint column,
                                                         gint row);
void                eek_key_get_index                   (EekKey *key,
                                                         gint *column,
                                                         gint *row);
void                eek_key_set_outline                 (EekKey *key,
                                                         EekOutline *outline);
EekOutline *        eek_key_get_outline                 (EekKey *key);
void                eek_key_set_keysym_index            (EekKey *key,
                                                         gint group,
                                                         gint level);
void                eek_key_get_keysym_index            (EekKey *key,
                                                         gint *group,
                                                         gint *level);

Description

The EekKeyClass class represents a key.

Details

EekKeyClass

typedef struct {
    void        (* set_keycode)      (EekKey     *self,
                                      guint       keycode);
    guint       (* get_keycode)      (EekKey     *self);
    void        (* set_keysyms)      (EekKey     *self,
                                      guint      *keysyms,
                                      gint        num_groups,
                                      gint        num_levels);
    void        (* get_keysyms)      (EekKey     *self,
                                      guint     **keysyms,
                                      gint       *num_groups,
                                      gint       *num_levels);
    guint       (* get_keysym)       (EekKey     *self);

    void        (* set_index)        (EekKey     *self,
                                      gint        column,
                                      gint        row);
    void        (* get_index)        (EekKey     *self,
                                      gint       *column,
                                      gint       *row);

    void        (* set_outline)      (EekKey     *self,
                                      EekOutline *outline);
    EekOutline *(* get_outline)      (EekKey     *self);

    void        (* set_keysym_index) (EekKey     *self,
                                      gint        group,
                                      gint        level);
    void        (* get_keysym_index) (EekKey     *self,
                                      gint       *group,
                                      gint       *level);

    /* signals */
    void        (* pressed)          (EekKey     *key);
    void        (* released)         (EekKey     *key);
} EekKeyClass;

set_keycode ()

virtual function for setting keycode of the key

get_keycode ()

virtual function for getting keycode of the key

set_keysyms ()

virtual function for setting symbol matrix of the key

get_keysyms ()

virtual function for getting symbol matrix of the key

get_keysym ()

virtual function for getting the current symbol of the key

set_index ()

virtual function for setting position of the key in the section

get_index ()

virtual function for getting position of the key in the section

set_outline ()

virtual function for setting outline shape of the key

get_outline ()

virtual function for getting outline shape of the key

set_keysym_index ()

virtual function for setting group and level of the key

get_keysym_index ()

virtual function for getting group and level of the key

pressed ()

class handler for "pressed" signal

released ()

class handler for "released" signal

EekKeyPrivate

typedef struct _EekKeyPrivate EekKeyPrivate;

EekKey

typedef struct {
} EekKey;

eek_key_set_keycode ()

void                eek_key_set_keycode                 (EekKey *key,
                                                         guint keycode);

Set keycode of key to keycode.

key :

an EekKey

keycode :

keycode

eek_key_get_keycode ()

guint               eek_key_get_keycode                 (EekKey *key);

Get keycode of key.

key :

an EekKey

Returns :

keycode or EEK_INVALID_KEYCODE on failure

eek_key_set_keysyms ()

void                eek_key_set_keysyms                 (EekKey *key,
                                                         guint *keysyms,
                                                         gint num_groups,
                                                         gint num_levels);

Set the symbol matrix of key to keysyms. The length of keysyms is num_groups * num_levels.

key :

an EekKey

keysyms :

symbol matrix of key

num_groups :

number of groups (rows) of keysyms

num_levels :

number of levels (columns) of keysyms

eek_key_get_keysyms ()

void                eek_key_get_keysyms                 (EekKey *key,
                                                         guint **keysyms,
                                                         gint *num_groups,
                                                         gint *num_levels);

Get the symbol matrix of key. If either keysyms, num_groups, or num_levels are NULL, this function does not try to get the value.

key :

an EekKey

keysyms :

pointer where symbol matrix of key will be stored

num_groups :

pointer where the number of groups (rows) of keysyms will be stored

num_levels :

pointer where the number of levels (columns) of keysyms will be stored

eek_key_get_keysym ()

guint               eek_key_get_keysym                  (EekKey *key);

Get the current symbol of key.

key :

an EekKey

Returns :

a symbol or EEK_INVALID_KEYSYM on failure

eek_key_set_index ()

void                eek_key_set_index                   (EekKey *key,
                                                         gint column,
                                                         gint row);

Set the index of key (i.e. logical location of key in EekSection) to column and row.

key :

an EekKey

column :

column index of key in EekSection

row :

row index of key in EekSection

eek_key_get_index ()

void                eek_key_get_index                   (EekKey *key,
                                                         gint *column,
                                                         gint *row);

Get the index of key (i.e. logical location of key in EekSection).

key :

an EekKey

column :

pointer where the column index of key in EekSection will be stored

row :

pointer where the row index of key in EekSection will be stored

eek_key_set_outline ()

void                eek_key_set_outline                 (EekKey *key,
                                                         EekOutline *outline);

Set the outline shape of key to outline.

key :

an EekKey

outline :

outline of key

eek_key_get_outline ()

EekOutline *        eek_key_get_outline                 (EekKey *key);

Get the outline shape of key.

key :

an EekKey

Returns :

an EekOutline pointer or NULL on failure

eek_key_set_keysym_index ()

void                eek_key_set_keysym_index            (EekKey *key,
                                                         gint group,
                                                         gint level);

Set the current group and/or level index of key in its symbol matrix to group and level.

key :

an EekKey

group :

group (row) index of key

level :

level (column) index of key

eek_key_get_keysym_index ()

void                eek_key_get_keysym_index            (EekKey *key,
                                                         gint *group,
                                                         gint *level);

Get the current group and/or level index of key in its symbol matrix.

key :

an EekKey

group :

pointer where group (row) index of key will be stored

level :

pointer where level (column) index of key will be stored