Miscellaneous Types

Miscellaneous Types — Miscellaneous types used in Libeek

Functions

Properties

EekBounds * bounds Read / Write
int group Read / Write
int level Read / Write
char * name Read / Write
int column Read / Write
guint keycode Read / Write
gulong oref Read / Write
int row Read / Write
EekSymbolMatrix * symbol-matrix Read / Write
EekLayout * layout Read / Write / Construct Only
EekModifierBehavior modifier-behavior Read / Write
int angle Read / Write
EekSymbolCategory category Read / Write / Construct
char * icon-name Read / Write / Construct
char * label Read / Write / Construct
EekModifierType modifier-mask Read / Write / Construct
char * name Read / Write / Construct
char * tooltip Read / Write / Construct
char * text Read / Write / Construct Only

Signals

void child-added Run First
void child-removed Run First
void symbol-index-changed Run Last
void cancelled Run Last
void locked Run First
void pressed Run First
void released Run Last
void unlocked Run Last
void key-cancelled Run Last
void key-locked Run Last
void key-pressed Run Last
void key-released Run Last
void key-unlocked Run Last
void key-cancelled Run Last
void key-locked Run Last
void key-pressed Run Last
void key-released Run Last
void key-unlocked Run Last
void changed Run Last

Types and Values

Object Hierarchy

    GBoxed
    ├── EekBounds
    ├── EekColor
    ├── EekOutline
    ├── EekPoint
    ╰── EekSymbolMatrix
    GObject
    ├── EekSymbol
       ├── EekKeysym
       ├── EekText
       ╰── EekKeysym
    ├── EekElement
       ├── EekContainer
       ├── EekKey
       ╰── EekContainer
           ├── EekKeyboard
           ╰── EekSection
    ╰── EekThemeContext

Implemented Interfaces

EekKeysym implements EekSerializable.

EekSymbol implements EekSerializable.

EekText implements EekSerializable.

Description

Functions

I_()

#define I_(string) g_intern_static_string (string)

eek_bounds_copy ()

EekBounds *
eek_bounds_copy (const EekBounds *bounds);

eek_bounds_free ()

void
eek_bounds_free (EekBounds *bounds);

eek_bounds_long_side ()

gdouble
eek_bounds_long_side (EekBounds *bounds);

eek_color_copy ()

EekColor *
eek_color_copy (const EekColor *color);

eek_color_free ()

void
eek_color_free (EekColor *color);

eek_color_new ()

EekColor *
eek_color_new (gdouble red,
               gdouble green,
               gdouble blue,
               gdouble alpha);

eek_outline_copy ()

EekOutline *
eek_outline_copy (const EekOutline *outline);

eek_outline_free ()

void
eek_outline_free (EekOutline *outline);

eek_point_copy ()

EekPoint *
eek_point_copy (const EekPoint *point);

eek_point_free ()

void
eek_point_free (EekPoint *point);

eek_point_rotate ()

void
eek_point_rotate (EekPoint *point,
                  gint angle);

Types and Values

EEK_INVALID_KEYCODE

#define EEK_INVALID_KEYCODE (0)

Pseudo keycode used for error reporting.


struct EekBounds

struct EekBounds {
    gdouble x;
    gdouble y;
    gdouble width;
    gdouble height;
};

The rectangle containing an element's bounding box.

Members

gdouble x;

X coordinate of the top left point

 

gdouble y;

Y coordinate of the top left point

 

gdouble width;

width of the box

 

gdouble height;

height of the box

 

struct EekColor

struct EekColor {
    gdouble red;
    gdouble green;
    gdouble blue;
    gdouble alpha;
};

Color used for drawing.

Members

gdouble red;

red component of color, between 0.0 and 1.0

 

gdouble green;

green component of color, between 0.0 and 1.0

 

gdouble blue;

blue component of color, between 0.0 and 1.0

 

gdouble alpha;

alpha component of color, between 0.0 and 1.0

 

EekContainer

typedef struct _EekContainer EekContainer;

EekElement

typedef struct _EekElement EekElement;

enum EekGradientType

Members

EEK_GRADIENT_NONE

   

EEK_GRADIENT_VERTICAL

   

EEK_GRADIENT_HORIZONTAL

   

EEK_GRADIENT_RADIAL

   

EekKey

typedef struct _EekKey EekKey;

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


EekKeyboard

typedef struct _EekKeyboard EekKeyboard;

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


EekKeysym

typedef struct _EekKeysym EekKeysym;

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


enum EekModifierBehavior

Modifier handling mode.

Members

EEK_MODIFIER_BEHAVIOR_NONE

do nothing when a modifier key is pressed

 

EEK_MODIFIER_BEHAVIOR_LOCK

toggle the modifier status each time a modifier key are pressed

 

EEK_MODIFIER_BEHAVIOR_LATCH

enable the modifier when a modifier key is pressed and keep it enabled until any key is pressed.

 

enum EekModifierType

Members

EEK_SHIFT_MASK

the Shift key.

 

EEK_LOCK_MASK

a Lock key (depending on the modifier mapping of the X server this may either be CapsLock or ShiftLock).

 

EEK_CONTROL_MASK

the Control key.

 

EEK_MOD1_MASK

the fourth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier, but normally it is the Alt key).

 

EEK_MOD2_MASK

the fifth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).

 

EEK_MOD3_MASK

the sixth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).

 

EEK_MOD4_MASK

the seventh modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).

 

EEK_MOD5_MASK

the eighth modifier key (it depends on the modifier mapping of the X server which key is interpreted as this modifier).

 

EEK_BUTTON1_MASK

the first mouse button.

 

EEK_BUTTON2_MASK

the second mouse button.

 

EEK_BUTTON3_MASK

the third mouse button.

 

EEK_BUTTON4_MASK

the fourth mouse button.

 

EEK_BUTTON5_MASK

the fifth mouse button.

 

EEK_SUPER_MASK

the Super modifier. Since 2.10

 

EEK_HYPER_MASK

the Hyper modifier. Since 2.10

 

EEK_META_MASK

the Meta modifier. Since 2.10

 

EEK_RELEASE_MASK

not used in EEK itself. GTK+ uses it to differentiate between (keyval, modifiers) pairs from key press and release events.

 

EEK_MODIFIER_MASK

a mask covering all modifier types.

 

enum EekOrientation

Orientation of rows in sections. Elements in a row will be arranged with the specified orientation.

Members

EEK_ORIENTATION_VERTICAL

the elements will be arranged vertically

 

EEK_ORIENTATION_HORIZONTAL

the elements will be arranged horizontally

 

EEK_ORIENTATION_INVALID

used for error reporting

 

struct EekOutline

struct EekOutline {
    gdouble corner_radius;
    EekPoint *points;
    gint num_points;
};

2D rounded polygon used to draw key shape

Members

gdouble corner_radius;

radius of corners of rounded polygon

 

EekPoint *points;

an array of points represents a polygon

 

gint num_points;

the length of points

 

struct EekPoint

struct EekPoint {
    gdouble x;
    gdouble y;
};

2D vertex

Members

gdouble x;

X coordinate of the point

 

gdouble y;

Y coordinate of the point

 

EekSection

typedef struct _EekSection EekSection;

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


EekSymbol

typedef struct _EekSymbol EekSymbol;

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


EekSymbolMatrix

typedef struct {
    gint num_groups;
    gint num_levels;
    EekSymbol **data;
} EekSymbolMatrix;

Symbol matrix of a key.


EekText

typedef struct _EekText EekText;

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


EekTheme

typedef struct _EekTheme EekTheme;

EekThemeContext

typedef struct _EekThemeContext EekThemeContext;

EekThemeNode

typedef struct _EekThemeNode EekThemeNode;

Property Details

The “bounds” property

  “bounds”                   EekBounds *

The bounding box of EekElement.

Owner: EekElement

Flags: Read / Write


The “group” property

  “group”                    int

The group value of the symbol index of EekElement.

Owner: EekElement

Flags: Read / Write

Allowed values: >= -1

Default value: -1


The “level” property

  “level”                    int

The level value of the symbol index of EekElement.

Owner: EekElement

Flags: Read / Write

Allowed values: >= -1

Default value: -1


The “name” property

  “name”                     char *

The name of EekElement.

Owner: EekElement

Flags: Read / Write

Default value: NULL


The “column” property

  “column”                   int

The column index of EekKey in the parent EekSection.

Owner: EekKey

Flags: Read / Write

Allowed values: >= -1

Default value: -1


The “keycode” property

  “keycode”                  guint

The keycode of EekKey.

Owner: EekKey

Flags: Read / Write

Default value: 0


The “oref” property

  “oref”                     gulong

The outline id of EekKey.

Owner: EekKey

Flags: Read / Write


The “row” property

  “row”                      int

The row index of EekKey in the parent EekSection.

Owner: EekKey

Flags: Read / Write

Allowed values: >= -1

Default value: -1


The “symbol-matrix” property

  “symbol-matrix”            EekSymbolMatrix *

The symbol matrix of EekKey.

Owner: EekKey

Flags: Read / Write


The “layout” property

  “layout”                   EekLayout *

The layout used to create this EekKeyboard.

Owner: EekKeyboard

Flags: Read / Write / Construct Only


The “modifier-behavior” property

  “modifier-behavior”        EekModifierBehavior

The modifier handling mode of EekKeyboard.

Owner: EekKeyboard

Flags: Read / Write

Default value: EEK_MODIFIER_BEHAVIOR_NONE


The “angle” property

  “angle”                    int

The rotation angle of EekSection.

Owner: EekSection

Flags: Read / Write

Allowed values: [-360,360]

Default value: 0


The “category” property

  “category”                 EekSymbolCategory

Category of the symbol.

Owner: EekSymbol

Flags: Read / Write / Construct

Default value: EEK_SYMBOL_CATEGORY_UNKNOWN


The “icon-name” property

  “icon-name”                char *

Icon name used to render the symbol.

Owner: EekSymbol

Flags: Read / Write / Construct

Default value: NULL


The “label” property

  “label”                    char *

Text used to display the symbol.

Owner: EekSymbol

Flags: Read / Write / Construct

Default value: NULL


The “modifier-mask” property

  “modifier-mask”            EekModifierType

Modifier mask of the symbol.

Owner: EekSymbol

Flags: Read / Write / Construct


The “name” property

  “name”                     char *

Canonical name of the symbol.

Owner: EekSymbol

Flags: Read / Write / Construct

Default value: NULL


The “tooltip” property

  “tooltip”                  char *

Tooltip text.

Owner: EekSymbol

Flags: Read / Write / Construct

Default value: NULL


The “text” property

  “text”                     char *

Text.

Owner: EekText

Flags: Read / Write / Construct Only

Default value: NULL

Signal Details

The “child-added” signal

void
user_function (EekContainer *container,
               EekElement   *element,
               gpointer      user_data)

The ::child-added signal is emitted each time an element is added to container .

Parameters

container

an EekContainer

 

element

an EekElement

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “child-removed” signal

void
user_function (EekContainer *container,
               EekElement   *element,
               gpointer      user_data)

The ::child-removed signal is emitted each time an element is removed from container .

Parameters

container

an EekContainer

 

element

an EekElement

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “symbol-index-changed” signal

void
user_function (EekElement *element,
               int         group,
               int         level,
               gpointer    user_data)

The ::symbol-index-changed signal is emitted each time the global configuration of group/level index changes.

Parameters

element

an EekElement

 

group

row index of the symbol matrix of keys on element

 

level

column index of the symbol matrix of keys on element

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “cancelled” signal

void
user_function (EekKey  *key,
               gpointer user_data)

The ::cancelled signal is emitted each time key is shifted to the cancelled state.

Parameters

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “locked” signal

void
user_function (EekKey  *key,
               gpointer user_data)

The ::locked signal is emitted each time key is shifted to the locked state. The class handler runs before signal handlers to allow signal handlers to read the status of key with eek_key_is_locked().

Parameters

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “pressed” signal

void
user_function (EekKey  *key,
               gpointer user_data)

The ::pressed signal is emitted each time key is shifted to the pressed state. The class handler runs before signal handlers to allow signal handlers to read the status of key with eek_key_is_pressed().

Parameters

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run First


The “released” signal

void
user_function (EekKey  *key,
               gpointer user_data)

The ::released signal is emitted each time key is shifted to the released state.

Parameters

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “unlocked” signal

void
user_function (EekKey  *key,
               gpointer user_data)

The ::unlocked signal is emitted each time key is shifted to the unlocked state.

Parameters

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-cancelled” signal

void
user_function (EekKeyboard *keyboard,
               EekKey      *key,
               gpointer     user_data)

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

Parameters

keyboard

an EekKeyboard

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-locked” signal

void
user_function (EekKeyboard *keyboard,
               EekKey      *key,
               gpointer     user_data)

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

Parameters

keyboard

an EekKeyboard

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-pressed” signal

void
user_function (EekKeyboard *keyboard,
               EekKey      *key,
               gpointer     user_data)

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

Parameters

keyboard

an EekKeyboard

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-released” signal

void
user_function (EekKeyboard *keyboard,
               EekKey      *key,
               gpointer     user_data)

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

Parameters

keyboard

an EekKeyboard

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-unlocked” signal

void
user_function (EekKeyboard *keyboard,
               EekKey      *key,
               gpointer     user_data)

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

Parameters

keyboard

an EekKeyboard

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-cancelled” signal

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

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

Parameters

section

an EekSection

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-locked” signal

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

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

Parameters

section

an EekSection

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-pressed” signal

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

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

Parameters

section

an EekSection

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-released” signal

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

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

Parameters

section

an EekSection

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “key-unlocked” signal

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

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

Parameters

section

an EekSection

 

key

an EekKey

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last


The “changed” signal

void
user_function (EekThemeContext *eekthemecontext,
               gpointer         user_data)

Flags: Run Last