GIcon

GIcon — Interface for icons

Synopsis


#include <gio.h>


                    GIcon;
                    GIconIface;
guint               g_icon_hash                         (gconstpointer icon);
gboolean            g_icon_equal                        (GIcon *icon1,
                                                         GIcon *icon2);


Object Hierarchy


  GInterface
   +----GIcon

Prerequisites

GIcon requires GObject.

Known Derived Interfaces

GIcon is required by GLoadableIcon.

Known Implementations

GIcon is implemented by GThemedIcon and GFileIcon.

Description

GIcon is a very minimal interface for icons. It provides functions for checking the equality of two icons and hashing of icons.

GIcon does not provide the actual pixmap for the icon as this is out of GIO's scope, however implementations of GIcon may contain the name of an icon (see GThemedIcon), or the path to an icon (see GLoadableIcon).

To obtain a hash of a GIcon, see g_icon_hash().

To check if two GIcons are equal, see g_icon_equal().

Details

GIcon

typedef struct _GIcon GIcon;

An abstract type that specifies an icon.


GIconIface

typedef struct {
  GTypeInterface g_iface;

  /* Virtual Table */

  guint               (*hash)               (GIcon                *icon);
  gboolean            (*equal)              (GIcon                *icon1,
					     GIcon                *icon2);
} GIconIface;

GIconIface is used to implement GIcon types for various different systems. See GThemedIcon and GLoadableIcon for examples of how to implement this interface.

GTypeInterface g_iface;

The parent interface.

hash ()

A hash for a given GIcon.

equal ()

Checks if two GIcons are equal.

g_icon_hash ()

guint               g_icon_hash                         (gconstpointer icon);

Gets a hash for an icon.

icon :

gconstpointer to an icon object.

Returns :

a guint containing a hash for the icon, suitable for use in a GHashTable or similar data structure.

g_icon_equal ()

gboolean            g_icon_equal                        (GIcon *icon1,
                                                         GIcon *icon2);

Checks if two icons are equal.

icon1 :

pointer to the first GIcon.

icon2 :

pointer to the second GIcon.

Returns :

TRUE if icon1 is equal to icon2. FALSE otherwise.