Package org.gnome.gtk

Class IconTheme

java.lang.Object
All Implemented Interfaces:
Proxy

@Generated("io.github.jwharm.JavaGI") public class IconTheme extends GObject
GtkIconTheme provides a facility for loading themed icons.

The main reason for using a name rather than simply providing a filename is to allow different icons to be used depending on what “icon theme” is selected by the user. The operation of icon themes on Linux and Unix follows the Icon Theme Specification There is a fallback icon theme, named hicolor, where applications should install their icons, but additional icon themes can be installed as operating system vendors and users choose.

In many cases, named themes are used indirectly, via Image rather than directly, but looking up icons directly is also simple. The GtkIconTheme object acts as a database of all the icons in the current theme. You can create new GtkIconTheme objects, but it’s much more efficient to use the standard icon theme of the GtkWidget so that the icon information is shared with other people looking up icons.

GtkIconTheme *icon_theme;
 GtkIconPaintable *icon;
 GdkPaintable *paintable;

 icon_theme = gtk_icon_theme_get_for_display (gtk_widget_get_display (my_widget));
 icon = gtk_icon_theme_lookup_icon (icon_theme,
                                    "my-icon-name", // icon name
                                    48, // icon size
                                    1,  // scale
                                    0,  // flags);
 paintable = GDK_PAINTABLE (icon);
 // Use the paintable
 g_object_unref (icon);