EekSection

EekSection — Base class of a section

Synopsis

                    EekSection;
struct              EekSectionClass;
void                eek_section_add_row                 (EekSection *section,
                                                         gint num_columns,
                                                         EekOrientation orientation);
EekKey *            eek_section_create_key              (EekSection *section,
                                                         guint keycode,
                                                         gint column,
                                                         gint row);
EekKey *            eek_section_find_key_by_keycode     (EekSection *section,
                                                         guint keycode);
gint                eek_section_get_angle               (EekSection *section);
gint                eek_section_get_n_rows              (EekSection *section);
void                eek_section_get_row                 (EekSection *section,
                                                         gint index,
                                                         gint *num_columns,
                                                         EekOrientation *orientation);
void                eek_section_set_angle               (EekSection *section,
                                                         gint angle);

Object Hierarchy

  GObject
   +----EekElement
         +----EekContainer
               +----EekSection

Properties

  "angle"                    gint                  : Read / Write

Signals

  "key-cancelled"                                  : Run Last
  "key-locked"                                     : Run Last
  "key-pressed"                                    : Run Last
  "key-released"                                   : Run Last
  "key-unlocked"                                   : Run Last

Description

The EekSectionClass class represents a section, which consists of one or more keys of the EekKeyClass class.

Details

EekSection

typedef struct _EekSection EekSection;

The EekSection structure contains only private data and should only be accessed using the provided API.


struct EekSectionClass

struct EekSectionClass {
    gint    (* get_n_rows)          (EekSection     *self);
    void    (* add_row)             (EekSection     *self,
                                     gint            num_columns,
                                     EekOrientation  orientation);
    void    (* get_row)             (EekSection     *self,
                                     gint            index,
                                     gint           *num_columns,
                                     EekOrientation *orientation);

    EekKey *(* create_key)          (EekSection     *self,
                                     guint           keycode,
                                     gint            row,
                                     gint            column);

    /* signals */
    void    (* key_pressed)         (EekSection     *self,
                                     EekKey         *key);
    void    (* key_released)        (EekSection     *self,
                                     EekKey         *key);
    void    (* key_locked)          (EekSection     *self,
                                     EekKey         *key);
    void    (* key_unlocked)        (EekSection     *self,
                                     EekKey         *key);
    void    (* key_cancelled)       (EekSection     *self,
                                     EekKey         *key);
};

get_n_rows ()

virtual function for getting the number of rows in the section

add_row ()

virtual function for adding a new row to the section

get_row ()

virtual function for accessing a row in the section

create_key ()

virtual function for creating key in the section

key_pressed ()

class handler for "key-pressed" signal

key_released ()

class handler for "key-released" signal

key_locked ()

class handler for "key-locked" signal

key_unlocked ()

class handler for "key-unlocked" signal

key_cancelled ()

class handler for "key-cancelled" signal

eek_section_add_row ()

void                eek_section_add_row                 (EekSection *section,
                                                         gint num_columns,
                                                         EekOrientation orientation);

Add a row which has num_columns columns and whose orientation is orientation to section.

section :

an EekSection

num_columns :

the number of column in the row

orientation :

EekOrientation of the row

eek_section_create_key ()

EekKey *            eek_section_create_key              (EekSection *section,
                                                         guint keycode,
                                                         gint column,
                                                         gint row);

Create an EekKey instance and append it to section. This function is rarely called by application but called by EekLayout implementation.

section :

an EekSection

keycode :

a keycode

column :

the column index of the key

row :

the row index of the key

eek_section_find_key_by_keycode ()

EekKey *            eek_section_find_key_by_keycode     (EekSection *section,
                                                         guint keycode);

eek_section_get_angle ()

gint                eek_section_get_angle               (EekSection *section);

Get rotation angle of section.

section :

an EekSection

eek_section_get_n_rows ()

gint                eek_section_get_n_rows              (EekSection *section);

Get the number of rows in section.

section :

an EekSection

eek_section_get_row ()

void                eek_section_get_row                 (EekSection *section,
                                                         gint index,
                                                         gint *num_columns,
                                                         EekOrientation *orientation);

Get the information about the index-th row in section.

section :

an EekSection

index :

the index of row

num_columns :

pointer where the number of column in the row will be stored

orientation :

pointer where EekOrientation of the row will be stored

eek_section_set_angle ()

void                eek_section_set_angle               (EekSection *section,
                                                         gint angle);

Set rotation angle of section to angle.

section :

an EekSection

angle :

rotation angle

Property Details

The "angle" property

  "angle"                    gint                  : Read / Write

The rotation angle of EekSection.

Allowed values: [-360,360]

Default value: 0

Signal Details

The "key-cancelled" signal

void                user_function                      (EekSection *section,
                                                        EekKey     *key,
                                                        gpointer    user_data)      : Run Last

The ::key-cancelled signal is emitted each time a key in section is shifted to the cancelled state.

section :

an EekSection

key :

an EekKey

user_data :

user data set when the signal handler was connected.

The "key-locked" signal

void                user_function                      (EekSection *section,
                                                        EekKey     *key,
                                                        gpointer    user_data)      : Run Last

The ::key-locked signal is emitted each time a key in section is shifted to the locked state.

section :

an EekSection

key :

an EekKey

user_data :

user data set when the signal handler was connected.

The "key-pressed" signal

void                user_function                      (EekSection *section,
                                                        EekKey     *key,
                                                        gpointer    user_data)      : Run Last

The ::key-pressed signal is emitted each time a key in section is shifted to the pressed state.

section :

an EekSection

key :

an EekKey

user_data :

user data set when the signal handler was connected.

The "key-released" signal

void                user_function                      (EekSection *section,
                                                        EekKey     *key,
                                                        gpointer    user_data)      : Run Last

The ::key-released signal is emitted each time a key in section is shifted to the released state.

section :

an EekSection

key :

an EekKey

user_data :

user data set when the signal handler was connected.

The "key-unlocked" signal

void                user_function                      (EekSection *section,
                                                        EekKey     *key,
                                                        gpointer    user_data)      : Run Last

The ::key-unlocked signal is emitted each time a key in section is shifted to the unlocked state.

section :

an EekSection

key :

an EekKey

user_data :

user data set when the signal handler was connected.

See Also

EekKey