EekSymbol

## EekSymbol EekSymbol — Base class of a symbol |

## Synopsis

                        EekSymbol;
    enum                EekSymbolCategory;
    struct              EekSymbolClass;
    EekSymbolCategory   eek_symbol_category_from_name       (const gchar *name);
    const gchar *       eek_symbol_category_get_name        (EekSymbolCategory category);
    EekSymbolCategory   eek_symbol_get_category             (EekSymbol *symbol);
    const gchar *       eek_symbol_get_icon_name            (EekSymbol *symbol);
    const gchar *       eek_symbol_get_label                (EekSymbol *symbol);
    EekModifierType     eek_symbol_get_modifier_mask        (EekSymbol *symbol);
    const gchar *       eek_symbol_get_name                 (EekSymbol *symbol);
    gboolean            eek_symbol_is_modifier              (EekSymbol *symbol);
    EekSymbol *         eek_symbol_new                      (const gchar *name);
    void                eek_symbol_set_category             (EekSymbol *symbol,
                                                             EekSymbolCategory category);
    void                eek_symbol_set_icon_name            (EekSymbol *symbol,
                                                             const gchar *icon_name);
    void                eek_symbol_set_label                (EekSymbol *symbol,
                                                             const gchar *label);
    void                eek_symbol_set_modifier_mask        (EekSymbol *symbol,
                                                             EekModifierType mask);
    void                eek_symbol_set_name                 (EekSymbol *symbol,
                                                             const gchar *name);

## Object Hierarchy

      GObject
       +----EekSymbol
             +----EekKeysym
             +----EekText

## Implemented Interfaces

EekSymbol implements EekSerializable.

## Properties

      "category"                 EekSymbolCategory     : Read / Write / Construct
      "icon-name"                gchar*                : Read / Write / Construct
      "label"                    gchar*                : Read / Write / Construct
      "modifier-mask"            EekModifierType       : Read / Write / Construct
      "name"                     gchar*                : Read / Write / Construct
      "tooltip"                  gchar*                : Read / Write / Construct

## Description

The EekSymbolClass class represents a symbol assigned to a key.

## Details

### EekSymbol

    typedef struct _EekSymbol EekSymbol;

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

### enum EekSymbolCategory

    typedef enum {
        EEK_SYMBOL_CATEGORY_LETTER,
        EEK_SYMBOL_CATEGORY_FUNCTION,
        EEK_SYMBOL_CATEGORY_KEYNAME,
        EEK_SYMBOL_CATEGORY_USER0,
        EEK_SYMBOL_CATEGORY_USER1,
        EEK_SYMBOL_CATEGORY_USER2,
        EEK_SYMBOL_CATEGORY_USER3,
        EEK_SYMBOL_CATEGORY_USER4,
        EEK_SYMBOL_CATEGORY_UNKNOWN,
        EEK_SYMBOL_CATEGORY_LAST = EEK_SYMBOL_CATEGORY_UNKNOWN
    } EekSymbolCategory;

Category of the key symbols.

`EEK_SYMBOL_CATEGORY_LETTER` | the symbol represents an alphabet letter
`EEK_SYMBOL_CATEGORY_FUNCTION` | the symbol represents a function
`EEK_SYMBOL_CATEGORY_KEYNAME` | the symbol does not have meaning but have a name
`EEK_SYMBOL_CATEGORY_USER0` | reserved for future use
`EEK_SYMBOL_CATEGORY_USER1` | reserved for future use
`EEK_SYMBOL_CATEGORY_USER2` | reserved for future use
`EEK_SYMBOL_CATEGORY_USER3` | reserved for future use
`EEK_SYMBOL_CATEGORY_USER4` | reserved for future use
`EEK_SYMBOL_CATEGORY_UNKNOWN` | used for error reporting
`EEK_SYMBOL_CATEGORY_LAST` | the last symbol category

### struct EekSymbolClass

    struct EekSymbolClass {
    };

### eek_symbol_category_from_name ()

    EekSymbolCategory   eek_symbol_category_from_name       (const gchar *name);

### eek_symbol_category_get_name ()

    const gchar *       eek_symbol_category_get_name        (EekSymbolCategory category);

### eek_symbol_get_category ()

    EekSymbolCategory   eek_symbol_get_category             (EekSymbol *symbol);

Get symbol category of `symbol`.

`symbol` : | an EekSymbol

### eek_symbol_get_icon_name ()

    const gchar *       eek_symbol_get_icon_name            (EekSymbol *symbol);

Get the icon name of `symbol`.

`symbol` : | an EekSymbol

### eek_symbol_get_label ()

    const gchar *       eek_symbol_get_label                (EekSymbol *symbol);

Get the label text of `symbol`.

`symbol` : | an EekSymbol

### eek_symbol_get_modifier_mask ()

    EekModifierType     eek_symbol_get_modifier_mask        (EekSymbol *symbol);

Get modifier mask that `symbol` can trigger.

`symbol` : | an EekSymbol

### eek_symbol_get_name ()

    const gchar *       eek_symbol_get_name                 (EekSymbol *symbol);

Get the name of `symbol`.

`symbol` : | an EekSymbol

### eek_symbol_is_modifier ()

    gboolean            eek_symbol_is_modifier              (EekSymbol *symbol);

Check if `symbol` is a modifier.

`symbol` : | an EekSymbol
Returns : | `TRUE` if `symbol` is a modifier.

### eek_symbol_new ()

    EekSymbol *         eek_symbol_new                      (const gchar *name);

Create a new EekSymbol with `name`.

`name` : | name of the symbol

### eek_symbol_set_category ()

    void                eek_symbol_set_category             (EekSymbol *symbol,
                                                             EekSymbolCategory category);

Set symbol category of `symbol` to `category`.

`symbol` : | an EekSymbol
`category` : | an EekSymbolCategory

### eek_symbol_set_icon_name ()

    void                eek_symbol_set_icon_name            (EekSymbol *symbol,
                                                             const gchar *icon_name);

Set the icon name of `symbol` to `icon_name`.

`symbol` : | an EekSymbol
`icon_name` : | icon name of `symbol`

### eek_symbol_set_label ()

    void                eek_symbol_set_label                (EekSymbol *symbol,
                                                             const gchar *label);

Set the label text of `symbol` to `label`.

`symbol` : | an EekSymbol
`label` : | label text of `symbol`

### eek_symbol_set_modifier_mask ()

    void                eek_symbol_set_modifier_mask        (EekSymbol *symbol,
                                                             EekModifierType mask);

Set modifier mask that `symbol` can trigger.

`symbol` : | an EekSymbol
`mask` : | an EekModifierType

### eek_symbol_set_name ()

    void                eek_symbol_set_name                 (EekSymbol *symbol,
                                                             const gchar *name);

Set the name of `symbol` to `name`.

`symbol` : | an EekSymbol
`name` : | name of the symbol

## Property Details

### The `"category"` property

      "category"                 EekSymbolCategory     : Read / Write / Construct

Category of the symbol.

Default value: EEK_SYMBOL_CATEGORY_UNKNOWN

### The `"icon-name"` property

      "icon-name"                gchar*                : Read / Write / Construct

Icon name used to render the symbol.

Default value: NULL

### The `"label"` property

      "label"                    gchar*                : Read / Write / Construct

Text used to display the symbol.

Default value: NULL

### The `"modifier-mask"` property

      "modifier-mask"            EekModifierType       : Read / Write / Construct

Modifier mask of the symbol.

### The `"name"` property

      "name"                     gchar*                : Read / Write / Construct

Canonical name of the symbol.

Default value: NULL

### The `"tooltip"` property

      "tooltip"                  gchar*                : Read / Write / Construct

Tooltip text.

Default value: NULL