EekContainer

EekContainer — Base class of a keyboard container

Synopsis

                    EekContainerClass;
                    EekContainerPrivate;
void                (*EekCallback)                      (EekElement *element,
                                                         gpointer user_data);
gint                (*EekCompareFunc)                   (EekElement *element,
                                                         gpointer user_data);
                    EekContainer;
void                eek_container_foreach_child         (EekContainer *container,
                                                         EekCallback callback,
                                                         gpointer user_data);
EekElement *        eek_container_find                  (EekContainer *container,
                                                         EekCompareFunc func,
                                                         gpointer user_data);
EekElement *        eek_container_find_by_position      (EekContainer *container,
                                                         gdouble x,
                                                         gdouble y);

Description

The EekContainerClass class represents a keyboard container, which shall be used to implement EekKeyboard and EekSection.

Details

EekContainerClass

typedef struct {
    void        (* foreach_child)    (EekContainer  *self,
                                      EekCallback    callback,
                                      gpointer       user_data);
    EekElement *(* find)             (EekContainer  *self,
                                      EekCompareFunc func,
                                      gpointer       user_data);

    /* signals */
    void        (* child_added)      (EekContainer  *self,
                                      EekElement    *element);
    void        (* child_removed)    (EekContainer  *self,
                                      EekElement    *element);
} EekContainerClass;

foreach_child ()

virtual function for iterating over the container's children

find ()

virtual function for looking up a child

child_added ()

class handler for "child-added"

child_removed ()

class handler for "child-added"

EekContainerPrivate

typedef struct _EekContainerPrivate EekContainerPrivate;

EekCallback ()

void                (*EekCallback)                      (EekElement *element,
                                                         gpointer user_data);

EekCompareFunc ()

gint                (*EekCompareFunc)                   (EekElement *element,
                                                         gpointer user_data);

EekContainer

typedef struct {
} EekContainer;

eek_container_foreach_child ()

void                eek_container_foreach_child         (EekContainer *container,
                                                         EekCallback callback,
                                                         gpointer user_data);

Enumerate children of container and run callback with each child.

container :

an EekContainer

callback :

an EekCallback

user_data :

additional data passed to callback

eek_container_find ()

EekElement *        eek_container_find                  (EekContainer *container,
                                                         EekCompareFunc func,
                                                         gpointer user_data);

Find a child which matches the criteria supplied as func, in container.

container :

an EekContainer

func :

function to be used to compare two children

user_data :

additional data passed to func

Returns :

an EekElement or NULL on failure

eek_container_find_by_position ()

EekElement *        eek_container_find_by_position      (EekContainer *container,
                                                         gdouble x,
                                                         gdouble y);