Package: gio

Interface g-icon

Superclasses

g-object, common-lisp:standard-object, common-lisp:t

Documented Subclasses

Direct Slots

None

Details

The g-icon interface is a very minimal interface for icons. It provides functions for checking the equality of two icons, hashing of icons and serializing an icon to and from strings.

The g-icon interface does not provide the actual pixmap for the icon as this is out of GIO's scope, however implementations of the g-icon interface may contain the name of an icon, see the g-themed-icon class, or the path to an icon, see the g-loadable-icon class.

To obtain a hash of a g-icon object, see the function g-icon-hash. To check if two g-icon objects are equal, see the function g-icon-equal.

For serializing a g-icon object, use the functions g-icon-serialize and g-icon-deserialize.

If you want to consume the g-icon interface, for example, in a toolkit, you must be prepared to handle at least the three following cases: g-loadable-icon, g-themed-icon and g-emblemed-icon. It may also make sense to have fast-paths for other cases, like handling the gdk-pixbuf object directly, for example, but all compliant g-icon implementations outside of GIO must implement the g-loadable-icon class.

If your application or library provides one or more g-icon implementations you need to ensure that your new implementation also implements the g-loadable-icon class. Additionally, you must provide an implementation of the function g-icon-serialize that gives a result that is understood by the function g-icon-deserialize, yielding one of the built-in icon types.
 

Inherited Slot Access Functions

See also

2021-4-15