Method

GtkIconThemeload_icon

since: 2.4

Declaration [src]

GdkPixbuf*
gtk_icon_theme_load_icon (
  GtkIconTheme* icon_theme,
  const gchar* icon_name,
  gint size,
  GtkIconLookupFlags flags,
  GError** error
)

Description [src]

Looks up an icon in an icon theme, scales it to the given size and renders it into a pixbuf. This is a convenience function; if more details about the icon are needed, use gtk_icon_theme_lookup_icon() followed by gtk_icon_info_load_icon().

Note that you probably want to listen for icon theme changes and update the icon. This is usually done by connecting to the GtkWidget::style-set signal. If for some reason you do not want to update the icon when the icon theme changes, you should consider using gdk_pixbuf_copy() to make a private copy of the pixbuf returned by this function. Otherwise GTK+ may need to keep the old icon theme loaded, which would be a waste of memory.

Available since: 2.4

Parameters

icon_name

Type: const gchar*

The name of the icon to lookup.

The data is owned by the caller of the method.
The value is a NUL terminated UTF-8 string.
size

Type: gint

The desired icon size. The resulting icon may not be exactly this size; see gtk_icon_info_load_icon().

flags

Type: GtkIconLookupFlags

Flags modifying the behavior of the icon lookup.

error

Type: GError **

The return location for a recoverable error.

The argument can be NULL.
If the return location is not NULL, then you must initialize it to a NULL GError*.
The argument will be left initialized to NULL by the method if there are no errors.
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.

Return value

Type: GdkPixbuf

The rendered icon; this may be a newly created icon or a new reference to an internal icon, so you must not modify the icon. Use g_object_unref() to release your reference to the icon. NULL if the icon isn’t found.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.
The return value can be NULL.