## fm-icon

fm-icon

## Synopsis

    struct              FmIcon;
    FmIcon *            fm_icon_from_gicon                  (GIcon *gicon);
    FmIcon *            fm_icon_from_name                   (const char *name);
    gpointer            fm_icon_get_user_data               (FmIcon *icon);
    FmIcon *            fm_icon_ref                         (FmIcon *icon);
    void                fm_icon_set_user_data               (FmIcon *icon,
                                                             gpointer user_data);
    void                fm_icon_set_user_data_destroy       (GDestroyNotify func);
    void                fm_icon_unload_cache                ();
    void                fm_icon_unload_user_data_cache      ();
    void                fm_icon_unref                       (FmIcon *icon);

## Description

## Details

### struct FmIcon

    struct FmIcon {
        guint n_ref;
        GIcon* gicon;
        /* FIXME: should we utilize g_object_set_qdata to
                  store those data in gicon object instead? */
        gpointer user_data;
    };

### fm_icon_from_gicon ()

    FmIcon *            fm_icon_from_gicon                  (GIcon *gicon);

### fm_icon_from_name ()

    FmIcon *            fm_icon_from_name                   (const char *name);

### fm_icon_get_user_data ()

    gpointer            fm_icon_get_user_data               (FmIcon *icon);

### fm_icon_ref ()

    FmIcon *            fm_icon_ref                         (FmIcon *icon);

### fm_icon_set_user_data ()

    void                fm_icon_set_user_data               (FmIcon *icon,
                                                             gpointer user_data);

### fm_icon_set_user_data_destroy ()

    void                fm_icon_set_user_data_destroy       (GDestroyNotify func);

### fm_icon_unload_cache ()

    void                fm_icon_unload_cache                ();

### fm_icon_unload_user_data_cache ()

    void                fm_icon_unload_user_data_cache      ();

### fm_icon_unref ()

    void                fm_icon_unref                       (FmIcon *icon);