Initial packaging to sync OBS with git/gerrit
[profile/ivi/gtk3.git] / docs / reference / gtk / html / gtk3-Themeable-Stock-Images.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>Themeable Stock Images</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GTK+ 3 Reference Manual">
8 <link rel="up" href="theming.html" title="Part III. Theming in GTK+">
9 <link rel="prev" href="GtkIconTheme.html" title="GtkIconTheme">
10 <link rel="next" href="GtkNumerableIcon.html" title="GtkNumerableIcon">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="GtkIconTheme.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="theming.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GTK+ 3 Reference Manual</th>
21 <td><a accesskey="n" href="GtkNumerableIcon.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gtk3-Themeable-Stock-Images.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gtk3-Themeable-Stock-Images.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gtk3-Themeable-Stock-Images.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gtk3-Themeable-Stock-Images.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31 </td></tr>
32 </table>
33 <div class="refentry">
34 <a name="gtk3-Themeable-Stock-Images"></a><div class="titlepage"></div>
35 <div class="refnamediv"><table width="100%"><tr>
36 <td valign="top">
37 <h2><span class="refentrytitle"><a name="gtk3-Themeable-Stock-Images.top_of_page"></a>Themeable Stock Images</span></h2>
38 <p>Themeable Stock Images — Manipulating stock icons</p>
39 </td>
40 <td valign="top" align="right"></td>
41 </tr></table></div>
42 <div class="refsynopsisdiv">
43 <a name="gtk3-Themeable-Stock-Images.synopsis"></a><h2>Synopsis</h2>
44 <a name="GtkIconFactory"></a><a name="GtkIconSet"></a><pre class="synopsis">
45 #include &lt;gtk/gtk.h&gt;
46
47                     <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource">GtkIconSource</a>;
48 struct              <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory-struct" title="struct GtkIconFactory">GtkIconFactory</a>;
49                     <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet-struct" title="GtkIconSet">GtkIconSet</a>;
50 enum                <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize">GtkIconSize</a>;
51 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="returnvalue">GtkIconSource</span></a> *     <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-copy" title="gtk_icon_source_copy ()">gtk_icon_source_copy</a>                (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
52 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-free" title="gtk_icon_source_free ()">gtk_icon_source_free</a>                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
53 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add" title="gtk_icon_factory_add ()">gtk_icon_factory_add</a>                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>,
54                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>,
55                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);
56 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add-default" title="gtk_icon_factory_add_default ()">gtk_icon_factory_add_default</a>        (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>);
57 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-lookup" title="gtk_icon_factory_lookup ()">gtk_icon_factory_lookup</a>             (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>,
58                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>);
59 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-lookup-default" title="gtk_icon_factory_lookup_default ()">gtk_icon_factory_lookup_default</a>     (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>);
60 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="returnvalue">GtkIconFactory</span></a> *    <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-new" title="gtk_icon_factory_new ()">gtk_icon_factory_new</a>                (<em class="parameter"><code><span class="type">void</span></code></em>);
61 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-remove-default" title="gtk_icon_factory_remove_default ()">gtk_icon_factory_remove_default</a>     (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>);
62 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-add-source" title="gtk_icon_set_add_source ()">gtk_icon_set_add_source</a>             (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
63                                                          <em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
64 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-copy" title="gtk_icon_set_copy ()">gtk_icon_set_copy</a>                   (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);
65 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-new" title="gtk_icon_set_new ()">gtk_icon_set_new</a>                    (<em class="parameter"><code><span class="type">void</span></code></em>);
66 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-new-from-pixbuf" title="gtk_icon_set_new_from_pixbuf ()">gtk_icon_set_new_from_pixbuf</a>        (<em class="parameter"><code><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> *pixbuf</code></em>);
67 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-ref" title="gtk_icon_set_ref ()">gtk_icon_set_ref</a>                    (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);
68 <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-render-icon" title="gtk_icon_set_render_icon ()">gtk_icon_set_render_icon</a>            (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
69                                                          <em class="parameter"><code><a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> *style</code></em>,
70                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a> direction</code></em>,
71                                                          <em class="parameter"><code><a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a> state</code></em>,
72                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
73                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
74                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *detail</code></em>);
75 <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-render-icon-pixbuf" title="gtk_icon_set_render_icon_pixbuf ()">gtk_icon_set_render_icon_pixbuf</a>     (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
76                                                          <em class="parameter"><code><a class="link" href="GtkStyleContext.html" title="GtkStyleContext"><span class="type">GtkStyleContext</span></a> *context</code></em>,
77                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);
78 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-unref" title="gtk_icon_set_unref ()">gtk_icon_set_unref</a>                  (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);
79 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-lookup" title="gtk_icon_size_lookup ()">gtk_icon_size_lookup</a>                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
80                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
81                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);
82 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-lookup-for-settings" title="gtk_icon_size_lookup_for_settings ()">gtk_icon_size_lookup_for_settings</a>   (<em class="parameter"><code><a class="link" href="GtkSettings.html" title="Settings"><span class="type">GtkSettings</span></a> *settings</code></em>,
83                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
84                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
85                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);
86 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-register" title="gtk_icon_size_register ()">gtk_icon_size_register</a>              (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
87                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
88                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>);
89 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-register-alias" title="gtk_icon_size_register_alias ()">gtk_icon_size_register_alias</a>        (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *alias</code></em>,
90                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> target</code></em>);
91 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-from-name" title="gtk_icon_size_from_name ()">gtk_icon_size_from_name</a>             (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);
92 const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-get-name" title="gtk_icon_size_get_name ()">gtk_icon_size_get_name</a>              (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);
93 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-get-sizes" title="gtk_icon_set_get_sizes ()">gtk_icon_set_get_sizes</a>              (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
94                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> **sizes</code></em>,
95                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *n_sizes</code></em>);
96 <a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="returnvalue">GtkTextDirection</span></a>    <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-direction" title="gtk_icon_source_get_direction ()">gtk_icon_source_get_direction</a>       (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
97 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-direction-wildcarded" title="gtk_icon_source_get_direction_wildcarded ()">gtk_icon_source_get_direction_wildcarded</a>
98                                                         (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
99 const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-filename" title="gtk_icon_source_get_filename ()">gtk_icon_source_get_filename</a>        (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
100 <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-pixbuf" title="gtk_icon_source_get_pixbuf ()">gtk_icon_source_get_pixbuf</a>          (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
101 const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-icon-name" title="gtk_icon_source_get_icon_name ()">gtk_icon_source_get_icon_name</a>       (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
102 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-size" title="gtk_icon_source_get_size ()">gtk_icon_source_get_size</a>            (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
103 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-size-wildcarded" title="gtk_icon_source_get_size_wildcarded ()">gtk_icon_source_get_size_wildcarded</a> (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
104 <a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="returnvalue">GtkStateType</span></a>        <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-state" title="gtk_icon_source_get_state ()">gtk_icon_source_get_state</a>           (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
105 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-get-state-wildcarded" title="gtk_icon_source_get_state_wildcarded ()">gtk_icon_source_get_state_wildcarded</a>
106                                                         (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);
107 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="returnvalue">GtkIconSource</span></a> *     <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-new" title="gtk_icon_source_new ()">gtk_icon_source_new</a>                 (<em class="parameter"><code><span class="type">void</span></code></em>);
108 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-direction" title="gtk_icon_source_set_direction ()">gtk_icon_source_set_direction</a>       (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
109                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a> direction</code></em>);
110 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-direction-wildcarded" title="gtk_icon_source_set_direction_wildcarded ()">gtk_icon_source_set_direction_wildcarded</a>
111                                                         (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
112                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);
113 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-filename" title="gtk_icon_source_set_filename ()">gtk_icon_source_set_filename</a>        (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
114                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>);
115 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-pixbuf" title="gtk_icon_source_set_pixbuf ()">gtk_icon_source_set_pixbuf</a>          (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
116                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> *pixbuf</code></em>);
117 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-icon-name" title="gtk_icon_source_set_icon_name ()">gtk_icon_source_set_icon_name</a>       (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
118                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *icon_name</code></em>);
119 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-size" title="gtk_icon_source_set_size ()">gtk_icon_source_set_size</a>            (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
120                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);
121 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-size-wildcarded" title="gtk_icon_source_set_size_wildcarded ()">gtk_icon_source_set_size_wildcarded</a> (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
122                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);
123 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-state" title="gtk_icon_source_set_state ()">gtk_icon_source_set_state</a>           (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
124                                                          <em class="parameter"><code><a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a> state</code></em>);
125 <span class="returnvalue">void</span>                <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-state-wildcarded" title="gtk_icon_source_set_state_wildcarded ()">gtk_icon_source_set_state_wildcarded</a>
126                                                         (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
127                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);
128 </pre>
129 </div>
130 <div class="refsect1">
131 <a name="gtk3-Themeable-Stock-Images.object-hierarchy"></a><h2>Object Hierarchy</h2>
132 <pre class="synopsis">
133   <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
134    +----GtkIconFactory
135 </pre>
136 <pre class="synopsis">
137   GBoxed
138    +----GtkIconSet
139 </pre>
140 </div>
141 <div class="refsect1">
142 <a name="gtk3-Themeable-Stock-Images.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
143 <p>
144 GtkIconFactory implements
145  <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a>.</p>
146 </div>
147 <div class="refsect1">
148 <a name="gtk3-Themeable-Stock-Images.description"></a><h2>Description</h2>
149 <p>
150 Browse the available stock icons in the list of stock IDs found here. You can also use
151 the <span class="application">gtk-demo</span> application for this purpose.
152 </p>
153 <p>
154 An icon factory manages a collection of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>; a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> manages a
155 set of variants of a particular icon (i.e. a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> contains variants for
156 different sizes and widget states). Icons in an icon factory are named by a
157 stock ID, which is a simple string identifying the icon. Each <a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> has a
158 list of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> derived from the current theme; those icon factories
159 are consulted first when searching for an icon. If the theme doesn't set a
160 particular icon, GTK+ looks for the icon in a list of default icon factories,
161 maintained by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add-default" title="gtk_icon_factory_add_default ()"><code class="function">gtk_icon_factory_add_default()</code></a> and
162 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-remove-default" title="gtk_icon_factory_remove_default ()"><code class="function">gtk_icon_factory_remove_default()</code></a>. Applications with icons should add a default
163 icon factory with their icons, which will allow themes to override the icons
164 for the application.
165 </p>
166 <p>
167 To display an icon, always use <a class="link" href="GtkStyle.html#gtk-style-lookup-icon-set" title="gtk_style_lookup_icon_set ()"><code class="function">gtk_style_lookup_icon_set()</code></a> on the widget that
168 will display the icon, or the convenience function
169 <a class="link" href="GtkWidget.html#gtk-widget-render-icon" title="gtk_widget_render_icon ()"><code class="function">gtk_widget_render_icon()</code></a>. These functions take the theme into account when
170 looking up the icon to use for a given stock ID.
171 </p>
172 <p>
173 </p>
174 <div class="refsect2">
175 <a name="GtkIconFactory-BUILDER-UI"></a><h3>GtkIconFactory as GtkBuildable</h3>
176 <p>
177 GtkIconFactory supports a custom &lt;sources&gt; element, which can contain
178 multiple &lt;source&gt; elements.
179 The following attributes are allowed:
180 </p>
181 <div class="variablelist"><table border="0">
182 <col align="left" valign="top">
183 <tbody>
184 <tr>
185 <td><p><span class="term">stock-id</span></p></td>
186 <td><p>
187 The stock id of the source, a string.
188 This attribute is mandatory
189 </p></td>
190 </tr>
191 <tr>
192 <td><p><span class="term">filename</span></p></td>
193 <td><p>
194 The filename of the source, a string.
195 This attribute is optional
196 </p></td>
197 </tr>
198 <tr>
199 <td><p><span class="term">icon-name</span></p></td>
200 <td><p>
201 The icon name for the source, a string.
202 This attribute is optional.
203 </p></td>
204 </tr>
205 <tr>
206 <td><p><span class="term">size</span></p></td>
207 <td><p>
208 Size of the icon, a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> enum value.
209 This attribute is optional.
210 </p></td>
211 </tr>
212 <tr>
213 <td><p><span class="term">direction</span></p></td>
214 <td><p>
215 Direction of the source, a <a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a> enum value.
216 This attribute is optional.
217 </p></td>
218 </tr>
219 <tr>
220 <td><p><span class="term">state</span></p></td>
221 <td><p>
222 State of the source, a <a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a> enum value.
223 This attribute is optional.
224 </p></td>
225 </tr>
226 </tbody>
227 </table></div>
228 <p>
229 </p>
230 <div class="example">
231 <a name="id588304"></a><p class="title"><b>Example 42. A <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> UI definition fragment.</b></p>
232 <div class="example-contents">
233   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
234     <tbody>
235       <tr>
236         <td class="listing_lines" align="right"><pre>1
237 2
238 3
239 4
240 5
241 6
242 7
243 8
244 9
245 10
246 11
247 12
248 13</pre></td>
249         <td class="listing_code"><pre class="programlisting"><span class="symbol">&lt;</span><span class="usertype">object</span><span class="normal"> class</span><span class="symbol">=</span><span class="string">"GtkIconFactory"</span><span class="normal"> id</span><span class="symbol">=</span><span class="string">"iconfactory1"</span><span class="symbol">&gt;</span>
250 <span class="normal">  </span><span class="symbol">&lt;</span><span class="normal">sources</span><span class="symbol">&gt;</span>
251 <span class="normal">    </span><span class="symbol">&lt;</span><span class="usertype">source</span><span class="normal"> stock</span><span class="symbol">-</span><span class="normal">id</span><span class="symbol">=</span><span class="string">"apple-red"</span><span class="normal"> filename</span><span class="symbol">=</span><span class="string">"apple-red.png"</span><span class="symbol">/&gt;</span>
252 <span class="normal">  </span><span class="symbol">&lt;/</span><span class="normal">sources</span><span class="symbol">&gt;</span>
253 <span class="symbol">&lt;/</span><span class="normal">object</span><span class="symbol">&gt;</span>
254 <span class="symbol">&lt;</span><span class="usertype">object</span><span class="normal"> class</span><span class="symbol">=</span><span class="string">"GtkWindow"</span><span class="normal"> id</span><span class="symbol">=</span><span class="string">"window1"</span><span class="symbol">&gt;</span>
255 <span class="normal">  </span><span class="symbol">&lt;</span><span class="normal">child</span><span class="symbol">&gt;</span>
256 <span class="normal">    </span><span class="symbol">&lt;</span><span class="usertype">object</span><span class="normal"> class</span><span class="symbol">=</span><span class="string">"GtkButton"</span><span class="normal"> id</span><span class="symbol">=</span><span class="string">"apple_button"</span><span class="symbol">&gt;</span>
257 <span class="normal">      </span><span class="symbol">&lt;</span><span class="usertype">property</span><span class="normal"> name</span><span class="symbol">=</span><span class="string">"label"</span><span class="symbol">&gt;</span><span class="normal">apple</span><span class="symbol">-</span><span class="normal">red</span><span class="symbol">&lt;/</span><span class="normal">property</span><span class="symbol">&gt;</span>
258 <span class="normal">      </span><span class="symbol">&lt;</span><span class="usertype">property</span><span class="normal"> name</span><span class="symbol">=</span><span class="string">"use-stock"</span><span class="symbol">&gt;</span><span class="normal">True</span><span class="symbol">&lt;/</span><span class="normal">property</span><span class="symbol">&gt;</span>
259 <span class="normal">    </span><span class="symbol">&lt;/</span><span class="normal">object</span><span class="symbol">&gt;</span>
260 <span class="normal">  </span><span class="symbol">&lt;/</span><span class="normal">child</span><span class="symbol">&gt;</span>
261 <span class="symbol">&lt;/</span><span class="normal">object</span><span class="symbol">&gt;</span></pre></td>
262       </tr>
263     </tbody>
264   </table>
265 </div>
266
267 </div>
268 <p><br class="example-break">
269 </p>
270 </div>
271 <p>
272 </p>
273 </div>
274 <div class="refsect1">
275 <a name="gtk3-Themeable-Stock-Images.details"></a><h2>Details</h2>
276 <div class="refsect2">
277 <a name="GtkIconSource"></a><h3>GtkIconSource</h3>
278 <pre class="programlisting">typedef struct _GtkIconSource GtkIconSource;</pre>
279 </div>
280 <hr>
281 <div class="refsect2">
282 <a name="GtkIconFactory-struct"></a><h3>struct GtkIconFactory</h3>
283 <pre class="programlisting">struct GtkIconFactory;</pre>
284 </div>
285 <hr>
286 <div class="refsect2">
287 <a name="GtkIconSet-struct"></a><h3>GtkIconSet</h3>
288 <pre class="programlisting">typedef struct _GtkIconSet GtkIconSet;</pre>
289 </div>
290 <hr>
291 <div class="refsect2">
292 <a name="GtkIconSize"></a><h3>enum GtkIconSize</h3>
293 <pre class="programlisting">typedef enum {
294   GTK_ICON_SIZE_INVALID,
295   GTK_ICON_SIZE_MENU,
296   GTK_ICON_SIZE_SMALL_TOOLBAR,
297   GTK_ICON_SIZE_LARGE_TOOLBAR,
298   GTK_ICON_SIZE_BUTTON,
299   GTK_ICON_SIZE_DND,
300   GTK_ICON_SIZE_DIALOG
301 } GtkIconSize;
302 </pre>
303 </div>
304 <hr>
305 <div class="refsect2">
306 <a name="gtk-icon-source-copy"></a><h3>gtk_icon_source_copy ()</h3>
307 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="returnvalue">GtkIconSource</span></a> *     gtk_icon_source_copy                (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
308 <p>
309 Creates a copy of <em class="parameter"><code>source</code></em>; mostly useful for language bindings.
310 </p>
311 <div class="variablelist"><table border="0">
312 <col align="left" valign="top">
313 <tbody>
314 <tr>
315 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
316 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
317 </td>
318 </tr>
319 <tr>
320 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
321 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
322 </td>
323 </tr>
324 </tbody>
325 </table></div>
326 </div>
327 <hr>
328 <div class="refsect2">
329 <a name="gtk-icon-source-free"></a><h3>gtk_icon_source_free ()</h3>
330 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_free                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
331 <p>
332 Frees a dynamically-allocated icon source, along with its
333 filename, size, and pixbuf fields if those are not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
334 </p>
335 <div class="variablelist"><table border="0">
336 <col align="left" valign="top">
337 <tbody><tr>
338 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
339 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
340 </td>
341 </tr></tbody>
342 </table></div>
343 </div>
344 <hr>
345 <div class="refsect2">
346 <a name="gtk-icon-factory-add"></a><h3>gtk_icon_factory_add ()</h3>
347 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_factory_add                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>,
348                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>,
349                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);</pre>
350 <p>
351 Adds the given <em class="parameter"><code>icon_set</code></em> to the icon factory, under the name
352 <em class="parameter"><code>stock_id</code></em>.  <em class="parameter"><code>stock_id</code></em> should be namespaced for your application,
353 e.g. "myapp-whatever-icon".  Normally applications create a
354 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>, then add it to the list of default factories with
355 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add-default" title="gtk_icon_factory_add_default ()"><code class="function">gtk_icon_factory_add_default()</code></a>. Then they pass the <em class="parameter"><code>stock_id</code></em> to
356 widgets such as <a class="link" href="GtkImage.html" title="GtkImage"><span class="type">GtkImage</span></a> to display the icon. Themes can provide
357 an icon with the same name (such as "myapp-whatever-icon") to
358 override your application's default icons. If an icon already
359 existed in <em class="parameter"><code>factory</code></em> for <em class="parameter"><code>stock_id</code></em>, it is unreferenced and replaced
360 with the new <em class="parameter"><code>icon_set</code></em>.
361 </p>
362 <div class="variablelist"><table border="0">
363 <col align="left" valign="top">
364 <tbody>
365 <tr>
366 <td><p><span class="term"><em class="parameter"><code>factory</code></em> :</span></p></td>
367 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>
368 </td>
369 </tr>
370 <tr>
371 <td><p><span class="term"><em class="parameter"><code>stock_id</code></em> :</span></p></td>
372 <td>icon name</td>
373 </tr>
374 <tr>
375 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
376 <td>icon set</td>
377 </tr>
378 </tbody>
379 </table></div>
380 </div>
381 <hr>
382 <div class="refsect2">
383 <a name="gtk-icon-factory-add-default"></a><h3>gtk_icon_factory_add_default ()</h3>
384 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_factory_add_default        (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>);</pre>
385 <p>
386 Adds an icon factory to the list of icon factories searched by
387 <a class="link" href="GtkStyle.html#gtk-style-lookup-icon-set" title="gtk_style_lookup_icon_set ()"><code class="function">gtk_style_lookup_icon_set()</code></a>. This means that, for example,
388 <a class="link" href="GtkImage.html#gtk-image-new-from-stock" title="gtk_image_new_from_stock ()"><code class="function">gtk_image_new_from_stock()</code></a> will be able to find icons in <em class="parameter"><code>factory</code></em>.
389 There will normally be an icon factory added for each library or
390 application that comes with icons. The default icon factories
391 can be overridden by themes.
392 </p>
393 <div class="variablelist"><table border="0">
394 <col align="left" valign="top">
395 <tbody><tr>
396 <td><p><span class="term"><em class="parameter"><code>factory</code></em> :</span></p></td>
397 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>
398 </td>
399 </tr></tbody>
400 </table></div>
401 </div>
402 <hr>
403 <div class="refsect2">
404 <a name="gtk-icon-factory-lookup"></a><h3>gtk_icon_factory_lookup ()</h3>
405 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_factory_lookup             (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>,
406                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>);</pre>
407 <p>
408 Looks up <em class="parameter"><code>stock_id</code></em> in the icon factory, returning an icon set
409 if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. For display to the user, you should
410 use <a class="link" href="GtkStyle.html#gtk-style-lookup-icon-set" title="gtk_style_lookup_icon_set ()"><code class="function">gtk_style_lookup_icon_set()</code></a> on the <a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> for the
411 widget that will display the icon, instead of using this
412 function directly, so that themes are taken into account.
413 </p>
414 <div class="variablelist"><table border="0">
415 <col align="left" valign="top">
416 <tbody>
417 <tr>
418 <td><p><span class="term"><em class="parameter"><code>factory</code></em> :</span></p></td>
419 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>
420 </td>
421 </tr>
422 <tr>
423 <td><p><span class="term"><em class="parameter"><code>stock_id</code></em> :</span></p></td>
424 <td>an icon name</td>
425 </tr>
426 <tr>
427 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
428 <td>icon set of <em class="parameter"><code>stock_id</code></em>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
429 </td>
430 </tr>
431 </tbody>
432 </table></div>
433 </div>
434 <hr>
435 <div class="refsect2">
436 <a name="gtk-icon-factory-lookup-default"></a><h3>gtk_icon_factory_lookup_default ()</h3>
437 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_factory_lookup_default     (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *stock_id</code></em>);</pre>
438 <p>
439 Looks for an icon in the list of default icon factories.  For
440 display to the user, you should use <a class="link" href="GtkStyle.html#gtk-style-lookup-icon-set" title="gtk_style_lookup_icon_set ()"><code class="function">gtk_style_lookup_icon_set()</code></a> on
441 the <a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> for the widget that will display the icon, instead of
442 using this function directly, so that themes are taken into
443 account.
444 </p>
445 <div class="variablelist"><table border="0">
446 <col align="left" valign="top">
447 <tbody>
448 <tr>
449 <td><p><span class="term"><em class="parameter"><code>stock_id</code></em> :</span></p></td>
450 <td>an icon name</td>
451 </tr>
452 <tr>
453 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
454 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
455 </td>
456 </tr>
457 </tbody>
458 </table></div>
459 </div>
460 <hr>
461 <div class="refsect2">
462 <a name="gtk-icon-factory-new"></a><h3>gtk_icon_factory_new ()</h3>
463 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="returnvalue">GtkIconFactory</span></a> *    gtk_icon_factory_new                (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
464 <p>
465 Creates a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>. An icon factory manages a collection
466 of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>s; a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> manages a set of variants of a
467 particular icon (i.e. a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> contains variants for different
468 sizes and widget states). Icons in an icon factory are named by a
469 stock ID, which is a simple string identifying the icon. Each
470 <a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> has a list of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>s derived from the current
471 theme; those icon factories are consulted first when searching for
472 an icon. If the theme doesn't set a particular icon, GTK+ looks for
473 the icon in a list of default icon factories, maintained by
474 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add-default" title="gtk_icon_factory_add_default ()"><code class="function">gtk_icon_factory_add_default()</code></a> and
475 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-remove-default" title="gtk_icon_factory_remove_default ()"><code class="function">gtk_icon_factory_remove_default()</code></a>. Applications with icons should
476 add a default icon factory with their icons, which will allow
477 themes to override the icons for the application.
478 </p>
479 <div class="variablelist"><table border="0">
480 <col align="left" valign="top">
481 <tbody><tr>
482 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
483 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>
484 </td>
485 </tr></tbody>
486 </table></div>
487 </div>
488 <hr>
489 <div class="refsect2">
490 <a name="gtk-icon-factory-remove-default"></a><h3>gtk_icon_factory_remove_default ()</h3>
491 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_factory_remove_default     (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> *factory</code></em>);</pre>
492 <p>
493 Removes an icon factory from the list of default icon
494 factories. Not normally used; you might use it for a library that
495 can be unloaded or shut down.
496 </p>
497 <div class="variablelist"><table border="0">
498 <col align="left" valign="top">
499 <tbody><tr>
500 <td><p><span class="term"><em class="parameter"><code>factory</code></em> :</span></p></td>
501 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a> previously added with <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-factory-add-default" title="gtk_icon_factory_add_default ()"><code class="function">gtk_icon_factory_add_default()</code></a>
502 </td>
503 </tr></tbody>
504 </table></div>
505 </div>
506 <hr>
507 <div class="refsect2">
508 <a name="gtk-icon-set-add-source"></a><h3>gtk_icon_set_add_source ()</h3>
509 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_set_add_source             (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
510                                                          <em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
511 <p>
512 Icon sets have a list of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>, which they use as base
513 icons for rendering icons in different states and sizes. Icons are
514 scaled, made to look insensitive, etc. in
515 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-render-icon" title="gtk_icon_set_render_icon ()"><code class="function">gtk_icon_set_render_icon()</code></a>, but <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> needs base images to
516 work with. The base images and when to use them are described by
517 a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>.
518 </p>
519 <p>
520 This function copies <em class="parameter"><code>source</code></em>, so you can reuse the same source immediately
521 without affecting the icon set.
522 </p>
523 <p>
524 An example of when you'd use this function: a web browser's "Back
525 to Previous Page" icon might point in a different direction in
526 Hebrew and in English; it might look different when insensitive;
527 and it might change size depending on toolbar mode (small/large
528 icons). So a single icon set would contain all those variants of
529 the icon, and you might add a separate source for each one.
530 </p>
531 <p>
532 You should nearly always add a "default" icon source with all
533 fields wildcarded, which will be used as a fallback if no more
534 specific source matches. <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> always prefers more specific
535 icon sources to more generic icon sources. The order in which you
536 add the sources to the icon set does not matter.
537 </p>
538 <p>
539 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-new-from-pixbuf" title="gtk_icon_set_new_from_pixbuf ()"><code class="function">gtk_icon_set_new_from_pixbuf()</code></a> creates a new icon set with a
540 default icon source based on the given pixbuf.
541 </p>
542 <div class="variablelist"><table border="0">
543 <col align="left" valign="top">
544 <tbody>
545 <tr>
546 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
547 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
548 </td>
549 </tr>
550 <tr>
551 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
552 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
553 </td>
554 </tr>
555 </tbody>
556 </table></div>
557 </div>
558 <hr>
559 <div class="refsect2">
560 <a name="gtk-icon-set-copy"></a><h3>gtk_icon_set_copy ()</h3>
561 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_set_copy                   (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);</pre>
562 <p>
563 Copies <em class="parameter"><code>icon_set</code></em> by value.
564 </p>
565 <div class="variablelist"><table border="0">
566 <col align="left" valign="top">
567 <tbody>
568 <tr>
569 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
570 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
571 </td>
572 </tr>
573 <tr>
574 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
575 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> identical to the first.</td>
576 </tr>
577 </tbody>
578 </table></div>
579 </div>
580 <hr>
581 <div class="refsect2">
582 <a name="gtk-icon-set-new"></a><h3>gtk_icon_set_new ()</h3>
583 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_set_new                    (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
584 <p>
585 Creates a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>. A <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> represents a single icon
586 in various sizes and widget states. It can provide a <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a>
587 for a given size and state on request, and automatically caches
588 some of the rendered <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> objects.
589 </p>
590 <p>
591 Normally you would use <a class="link" href="GtkWidget.html#gtk-widget-render-icon-pixbuf" title="gtk_widget_render_icon_pixbuf ()"><code class="function">gtk_widget_render_icon_pixbuf()</code></a> instead of
592 using <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> directly. The one case where you'd use
593 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> is to create application-specific icon sets to place in
594 a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconFactory"><span class="type">GtkIconFactory</span></a>.
595 </p>
596 <div class="variablelist"><table border="0">
597 <col align="left" valign="top">
598 <tbody><tr>
599 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
600 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
601 </td>
602 </tr></tbody>
603 </table></div>
604 </div>
605 <hr>
606 <div class="refsect2">
607 <a name="gtk-icon-set-new-from-pixbuf"></a><h3>gtk_icon_set_new_from_pixbuf ()</h3>
608 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_set_new_from_pixbuf        (<em class="parameter"><code><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> *pixbuf</code></em>);</pre>
609 <p>
610 Creates a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> with <em class="parameter"><code>pixbuf</code></em> as the default/fallback
611 source image. If you don't add any additional <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> to the
612 icon set, all variants of the icon will be created from <em class="parameter"><code>pixbuf</code></em>,
613 using scaling, pixelation, etc. as required to adjust the icon size
614 or make the icon look insensitive/prelighted.
615 </p>
616 <div class="variablelist"><table border="0">
617 <col align="left" valign="top">
618 <tbody>
619 <tr>
620 <td><p><span class="term"><em class="parameter"><code>pixbuf</code></em> :</span></p></td>
621 <td>a <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a>
622 </td>
623 </tr>
624 <tr>
625 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
626 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
627 </td>
628 </tr>
629 </tbody>
630 </table></div>
631 </div>
632 <hr>
633 <div class="refsect2">
634 <a name="gtk-icon-set-ref"></a><h3>gtk_icon_set_ref ()</h3>
635 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="returnvalue">GtkIconSet</span></a> *        gtk_icon_set_ref                    (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);</pre>
636 <p>
637 Increments the reference count on <em class="parameter"><code>icon_set</code></em>.
638 </p>
639 <div class="variablelist"><table border="0">
640 <col align="left" valign="top">
641 <tbody>
642 <tr>
643 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
644 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>.</td>
645 </tr>
646 <tr>
647 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
648 <td>
649 <em class="parameter"><code>icon_set</code></em>.</td>
650 </tr>
651 </tbody>
652 </table></div>
653 </div>
654 <hr>
655 <div class="refsect2">
656 <a name="gtk-icon-set-render-icon"></a><h3>gtk_icon_set_render_icon ()</h3>
657 <pre class="programlisting"><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         gtk_icon_set_render_icon            (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
658                                                          <em class="parameter"><code><a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> *style</code></em>,
659                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a> direction</code></em>,
660                                                          <em class="parameter"><code><a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a> state</code></em>,
661                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
662                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
663                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *detail</code></em>);</pre>
664 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
665 <h3 class="title">Warning</h3>
666 <p><code class="literal">gtk_icon_set_render_icon</code> has been deprecated since version 3.0 and should not be used in newly-written code. Use <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-render-icon-pixbuf" title="gtk_icon_set_render_icon_pixbuf ()"><code class="function">gtk_icon_set_render_icon_pixbuf()</code></a> instead</p>
667 </div>
668 <p>
669 Renders an icon using <a class="link" href="GtkStyle.html#gtk-style-render-icon" title="gtk_style_render_icon ()"><code class="function">gtk_style_render_icon()</code></a>. In most cases,
670 <a class="link" href="GtkWidget.html#gtk-widget-render-icon" title="gtk_widget_render_icon ()"><code class="function">gtk_widget_render_icon()</code></a> is better, since it automatically provides
671 most of the arguments from the current widget settings.  This
672 function never returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>; if the icon can't be rendered
673 (perhaps because an image file fails to load), a default "missing
674 image" icon will be returned instead.
675 </p>
676 <div class="variablelist"><table border="0">
677 <col align="left" valign="top">
678 <tbody>
679 <tr>
680 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
681 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
682 </td>
683 </tr>
684 <tr>
685 <td><p><span class="term"><em class="parameter"><code>style</code></em> :</span></p></td>
686 <td>a <a class="link" href="GtkStyle.html" title="GtkStyle"><span class="type">GtkStyle</span></a> associated with <em class="parameter"><code>widget</code></em>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
687 </td>
688 </tr>
689 <tr>
690 <td><p><span class="term"><em class="parameter"><code>direction</code></em> :</span></p></td>
691 <td>text direction</td>
692 </tr>
693 <tr>
694 <td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td>
695 <td>widget state</td>
696 </tr>
697 <tr>
698 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
699 <td>icon size. A size of (GtkIconSize)-1
700 means render at the size of the source and don't scale. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
701 </td>
702 </tr>
703 <tr>
704 <td><p><span class="term"><em class="parameter"><code>widget</code></em> :</span></p></td>
705 <td>widget that will display the icon, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
706 The only use that is typically made of this
707 is to determine the appropriate <a href="http://developer.gnome.org/devel/gdk/GdkScreen.html"><span class="type">GdkScreen</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
708 </td>
709 </tr>
710 <tr>
711 <td><p><span class="term"><em class="parameter"><code>detail</code></em> :</span></p></td>
712 <td>detail to pass to the theme engine, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
713 Note that passing a detail of anything but <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
714 will disable caching. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
715 </td>
716 </tr>
717 <tr>
718 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
719 <td>a <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> to be displayed. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
720 </td>
721 </tr>
722 </tbody>
723 </table></div>
724 </div>
725 <hr>
726 <div class="refsect2">
727 <a name="gtk-icon-set-render-icon-pixbuf"></a><h3>gtk_icon_set_render_icon_pixbuf ()</h3>
728 <pre class="programlisting"><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         gtk_icon_set_render_icon_pixbuf     (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
729                                                          <em class="parameter"><code><a class="link" href="GtkStyleContext.html" title="GtkStyleContext"><span class="type">GtkStyleContext</span></a> *context</code></em>,
730                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);</pre>
731 <p>
732 Renders an icon using <a class="link" href="GtkStyleContext.html#gtk-render-icon-pixbuf" title="gtk_render_icon_pixbuf ()"><code class="function">gtk_render_icon_pixbuf()</code></a>. In most cases,
733 <a class="link" href="GtkWidget.html#gtk-widget-render-icon-pixbuf" title="gtk_widget_render_icon_pixbuf ()"><code class="function">gtk_widget_render_icon_pixbuf()</code></a> is better, since it automatically provides
734 most of the arguments from the current widget settings.  This
735 function never returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>; if the icon can't be rendered
736 (perhaps because an image file fails to load), a default "missing
737 image" icon will be returned instead.
738 </p>
739 <div class="variablelist"><table border="0">
740 <col align="left" valign="top">
741 <tbody>
742 <tr>
743 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
744 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
745 </td>
746 </tr>
747 <tr>
748 <td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
749 <td>a <a class="link" href="GtkStyleContext.html" title="GtkStyleContext"><span class="type">GtkStyleContext</span></a>
750 </td>
751 </tr>
752 <tr>
753 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
754 <td>icon size. A size of (GtkIconSize)-1
755 means render at the size of the source and don't scale. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
756 </td>
757 </tr>
758 <tr>
759 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
760 <td>a <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> to be displayed. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
761 </td>
762 </tr>
763 </tbody>
764 </table></div>
765 <p class="since">Since 3.0</p>
766 </div>
767 <hr>
768 <div class="refsect2">
769 <a name="gtk-icon-set-unref"></a><h3>gtk_icon_set_unref ()</h3>
770 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_set_unref                  (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>);</pre>
771 <p>
772 Decrements the reference count on <em class="parameter"><code>icon_set</code></em>, and frees memory
773 if the reference count reaches 0.
774 </p>
775 <div class="variablelist"><table border="0">
776 <col align="left" valign="top">
777 <tbody><tr>
778 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
779 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
780 </td>
781 </tr></tbody>
782 </table></div>
783 </div>
784 <hr>
785 <div class="refsect2">
786 <a name="gtk-icon-size-lookup"></a><h3>gtk_icon_size_lookup ()</h3>
787 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_icon_size_lookup                (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
788                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
789                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);</pre>
790 <p>
791 Obtains the pixel size of a semantic icon size, possibly
792 modified by user preferences for the default <a class="link" href="GtkSettings.html" title="Settings"><span class="type">GtkSettings</span></a>.
793 (See <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-lookup-for-settings" title="gtk_icon_size_lookup_for_settings ()"><code class="function">gtk_icon_size_lookup_for_settings()</code></a>.)
794 Normally <em class="parameter"><code>size</code></em> would be
795 <span class="type">GTK_ICON_SIZE_MENU</span>, <span class="type">GTK_ICON_SIZE_BUTTON</span>, etc.  This function
796 isn't normally needed, <a class="link" href="GtkWidget.html#gtk-widget-render-icon-pixbuf" title="gtk_widget_render_icon_pixbuf ()"><code class="function">gtk_widget_render_icon_pixbuf()</code></a> is the usual
797 way to get an icon for rendering, then just look at the size of
798 the rendered pixbuf. The rendered pixbuf may not even correspond to
799 the width/height returned by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-lookup" title="gtk_icon_size_lookup ()"><code class="function">gtk_icon_size_lookup()</code></a>, because themes
800 are free to render the pixbuf however they like, including changing
801 the usual size.
802 </p>
803 <div class="variablelist"><table border="0">
804 <col align="left" valign="top">
805 <tbody>
806 <tr>
807 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
808 <td>an icon size. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
809 </td>
810 </tr>
811 <tr>
812 <td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
813 <td>location to store icon width. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
814 </td>
815 </tr>
816 <tr>
817 <td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
818 <td>location to store icon height. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
819 </td>
820 </tr>
821 <tr>
822 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
823 <td>
824 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>size</code></em> was a valid size</td>
825 </tr>
826 </tbody>
827 </table></div>
828 </div>
829 <hr>
830 <div class="refsect2">
831 <a name="gtk-icon-size-lookup-for-settings"></a><h3>gtk_icon_size_lookup_for_settings ()</h3>
832 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_icon_size_lookup_for_settings   (<em class="parameter"><code><a class="link" href="GtkSettings.html" title="Settings"><span class="type">GtkSettings</span></a> *settings</code></em>,
833                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>,
834                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *width</code></em>,
835                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *height</code></em>);</pre>
836 <p>
837 Obtains the pixel size of a semantic icon size, possibly
838 modified by user preferences for a particular
839 <a class="link" href="GtkSettings.html" title="Settings"><span class="type">GtkSettings</span></a>. Normally <em class="parameter"><code>size</code></em> would be
840 <span class="type">GTK_ICON_SIZE_MENU</span>, <span class="type">GTK_ICON_SIZE_BUTTON</span>, etc.  This function
841 isn't normally needed, <a class="link" href="GtkWidget.html#gtk-widget-render-icon-pixbuf" title="gtk_widget_render_icon_pixbuf ()"><code class="function">gtk_widget_render_icon_pixbuf()</code></a> is the usual
842 way to get an icon for rendering, then just look at the size of
843 the rendered pixbuf. The rendered pixbuf may not even correspond to
844 the width/height returned by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-lookup" title="gtk_icon_size_lookup ()"><code class="function">gtk_icon_size_lookup()</code></a>, because themes
845 are free to render the pixbuf however they like, including changing
846 the usual size.
847 </p>
848 <div class="variablelist"><table border="0">
849 <col align="left" valign="top">
850 <tbody>
851 <tr>
852 <td><p><span class="term"><em class="parameter"><code>settings</code></em> :</span></p></td>
853 <td>a <a class="link" href="GtkSettings.html" title="Settings"><span class="type">GtkSettings</span></a> object, used to determine
854 which set of user preferences to used.</td>
855 </tr>
856 <tr>
857 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
858 <td>an icon size. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
859 </td>
860 </tr>
861 <tr>
862 <td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
863 <td>location to store icon width. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
864 </td>
865 </tr>
866 <tr>
867 <td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
868 <td>location to store icon height. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
869 </td>
870 </tr>
871 <tr>
872 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
873 <td>
874 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>size</code></em> was a valid size</td>
875 </tr>
876 </tbody>
877 </table></div>
878 <p class="since">Since 2.2</p>
879 </div>
880 <hr>
881 <div class="refsect2">
882 <a name="gtk-icon-size-register"></a><h3>gtk_icon_size_register ()</h3>
883 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         gtk_icon_size_register              (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>,
884                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> width</code></em>,
885                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> height</code></em>);</pre>
886 <p>
887 Registers a new icon size, along the same lines as <span class="type">GTK_ICON_SIZE_MENU</span>,
888 etc. Returns the integer value for the size.
889 </p>
890 <div class="variablelist"><table border="0">
891 <col align="left" valign="top">
892 <tbody>
893 <tr>
894 <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
895 <td>name of the icon size</td>
896 </tr>
897 <tr>
898 <td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
899 <td>the icon width</td>
900 </tr>
901 <tr>
902 <td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
903 <td>the icon height</td>
904 </tr>
905 <tr>
906 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
907 <td>integer value representing the size. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
908 </td>
909 </tr>
910 </tbody>
911 </table></div>
912 </div>
913 <hr>
914 <div class="refsect2">
915 <a name="gtk-icon-size-register-alias"></a><h3>gtk_icon_size_register_alias ()</h3>
916 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_size_register_alias        (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *alias</code></em>,
917                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> target</code></em>);</pre>
918 <p>
919 Registers <em class="parameter"><code>alias</code></em> as another name for <em class="parameter"><code>target</code></em>.
920 So calling <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-size-from-name" title="gtk_icon_size_from_name ()"><code class="function">gtk_icon_size_from_name()</code></a> with <em class="parameter"><code>alias</code></em> as argument
921 will return <em class="parameter"><code>target</code></em>.
922 </p>
923 <div class="variablelist"><table border="0">
924 <col align="left" valign="top">
925 <tbody>
926 <tr>
927 <td><p><span class="term"><em class="parameter"><code>alias</code></em> :</span></p></td>
928 <td>an alias for <em class="parameter"><code>target</code></em>
929 </td>
930 </tr>
931 <tr>
932 <td><p><span class="term"><em class="parameter"><code>target</code></em> :</span></p></td>
933 <td>an existing icon size. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
934 </td>
935 </tr>
936 </tbody>
937 </table></div>
938 </div>
939 <hr>
940 <div class="refsect2">
941 <a name="gtk-icon-size-from-name"></a><h3>gtk_icon_size_from_name ()</h3>
942 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         gtk_icon_size_from_name             (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
943 <p>
944 Looks up the icon size associated with <em class="parameter"><code>name</code></em>.
945 </p>
946 <div class="variablelist"><table border="0">
947 <col align="left" valign="top">
948 <tbody>
949 <tr>
950 <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
951 <td>the name to look up.</td>
952 </tr>
953 <tr>
954 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
955 <td>the icon size. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
956 </td>
957 </tr>
958 </tbody>
959 </table></div>
960 </div>
961 <hr>
962 <div class="refsect2">
963 <a name="gtk-icon-size-get-name"></a><h3>gtk_icon_size_get_name ()</h3>
964 <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       gtk_icon_size_get_name              (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);</pre>
965 <p>
966 Gets the canonical name of the given icon size. The returned string
967 is statically allocated and should not be freed.
968 </p>
969 <div class="variablelist"><table border="0">
970 <col align="left" valign="top">
971 <tbody>
972 <tr>
973 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
974 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a>. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
975 </td>
976 </tr>
977 <tr>
978 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
979 <td>the name of the given icon size.</td>
980 </tr>
981 </tbody>
982 </table></div>
983 </div>
984 <hr>
985 <div class="refsect2">
986 <a name="gtk-icon-set-get-sizes"></a><h3>gtk_icon_set_get_sizes ()</h3>
987 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_set_get_sizes              (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> *icon_set</code></em>,
988                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> **sizes</code></em>,
989                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *n_sizes</code></em>);</pre>
990 <p>
991 Obtains a list of icon sizes this icon set can render. The returned
992 array must be freed with <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.
993 </p>
994 <div class="variablelist"><table border="0">
995 <col align="left" valign="top">
996 <tbody>
997 <tr>
998 <td><p><span class="term"><em class="parameter"><code>icon_set</code></em> :</span></p></td>
999 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>
1000 </td>
1001 </tr>
1002 <tr>
1003 <td><p><span class="term"><em class="parameter"><code>sizes</code></em> :</span></p></td>
1004 <td>return location
1005 for array of sizes. <span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=n_sizes][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
1006 </td>
1007 </tr>
1008 <tr>
1009 <td><p><span class="term"><em class="parameter"><code>n_sizes</code></em> :</span></p></td>
1010 <td>location to store number of elements in returned array</td>
1011 </tr>
1012 </tbody>
1013 </table></div>
1014 </div>
1015 <hr>
1016 <div class="refsect2">
1017 <a name="gtk-icon-source-get-direction"></a><h3>gtk_icon_source_get_direction ()</h3>
1018 <pre class="programlisting"><a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="returnvalue">GtkTextDirection</span></a>    gtk_icon_source_get_direction       (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1019 <p>
1020 Obtains the text direction this icon source applies to. The return
1021 value is only useful/meaningful if the text direction is <span class="emphasis"><em>not</em></span>
1022 wildcarded.
1023 </p>
1024 <div class="variablelist"><table border="0">
1025 <col align="left" valign="top">
1026 <tbody>
1027 <tr>
1028 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1029 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1030 </td>
1031 </tr>
1032 <tr>
1033 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1034 <td>text direction this source matches</td>
1035 </tr>
1036 </tbody>
1037 </table></div>
1038 </div>
1039 <hr>
1040 <div class="refsect2">
1041 <a name="gtk-icon-source-get-direction-wildcarded"></a><h3>gtk_icon_source_get_direction_wildcarded ()</h3>
1042 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_icon_source_get_direction_wildcarded
1043                                                         (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1044 <p>
1045 Gets the value set by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-direction-wildcarded" title="gtk_icon_source_set_direction_wildcarded ()"><code class="function">gtk_icon_source_set_direction_wildcarded()</code></a>.
1046 </p>
1047 <div class="variablelist"><table border="0">
1048 <col align="left" valign="top">
1049 <tbody>
1050 <tr>
1051 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1052 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1053 </td>
1054 </tr>
1055 <tr>
1056 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1057 <td>
1058 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if this icon source is a base for any text direction variant</td>
1059 </tr>
1060 </tbody>
1061 </table></div>
1062 </div>
1063 <hr>
1064 <div class="refsect2">
1065 <a name="gtk-icon-source-get-filename"></a><h3>gtk_icon_source_get_filename ()</h3>
1066 <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       gtk_icon_source_get_filename        (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1067 <p>
1068 Retrieves the source filename, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is set. The
1069 filename is not a copy, and should not be modified or expected to
1070 persist beyond the lifetime of the icon source.
1071 </p>
1072 <div class="variablelist"><table border="0">
1073 <col align="left" valign="top">
1074 <tbody>
1075 <tr>
1076 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1077 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1078 </td>
1079 </tr>
1080 <tr>
1081 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1082 <td>image filename. This string must not
1083 be modified or freed. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> filename]</span>
1084 </td>
1085 </tr>
1086 </tbody>
1087 </table></div>
1088 </div>
1089 <hr>
1090 <div class="refsect2">
1091 <a name="gtk-icon-source-get-pixbuf"></a><h3>gtk_icon_source_get_pixbuf ()</h3>
1092 <pre class="programlisting"><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="returnvalue">GdkPixbuf</span></a> *         gtk_icon_source_get_pixbuf          (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1093 <p>
1094 Retrieves the source pixbuf, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is set.
1095 In addition, if a filename source is in use, this
1096 function in some cases will return the pixbuf from
1097 loaded from the filename. This is, for example, true
1098 for the GtkIconSource passed to the GtkStyle::<code class="function">render_icon()</code>
1099 virtual function. The reference count on the pixbuf is
1100 not incremented.
1101 </p>
1102 <div class="variablelist"><table border="0">
1103 <col align="left" valign="top">
1104 <tbody>
1105 <tr>
1106 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1107 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1108 </td>
1109 </tr>
1110 <tr>
1111 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1112 <td>source pixbuf. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
1113 </td>
1114 </tr>
1115 </tbody>
1116 </table></div>
1117 </div>
1118 <hr>
1119 <div class="refsect2">
1120 <a name="gtk-icon-source-get-icon-name"></a><h3>gtk_icon_source_get_icon_name ()</h3>
1121 <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *       gtk_icon_source_get_icon_name       (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1122 <p>
1123 Retrieves the source icon name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if none is set. The
1124 icon_name is not a copy, and should not be modified or expected to
1125 persist beyond the lifetime of the icon source.
1126 </p>
1127 <div class="variablelist"><table border="0">
1128 <col align="left" valign="top">
1129 <tbody>
1130 <tr>
1131 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1132 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1133 </td>
1134 </tr>
1135 <tr>
1136 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1137 <td>icon name. This string must not be modified or freed.</td>
1138 </tr>
1139 </tbody>
1140 </table></div>
1141 </div>
1142 <hr>
1143 <div class="refsect2">
1144 <a name="gtk-icon-source-get-size"></a><h3>gtk_icon_source_get_size ()</h3>
1145 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="returnvalue">GtkIconSize</span></a>         gtk_icon_source_get_size            (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1146 <p>
1147 Obtains the icon size this source applies to. The return value
1148 is only useful/meaningful if the icon size is <span class="emphasis"><em>not</em></span> wildcarded.
1149 </p>
1150 <div class="variablelist"><table border="0">
1151 <col align="left" valign="top">
1152 <tbody>
1153 <tr>
1154 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1155 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1156 </td>
1157 </tr>
1158 <tr>
1159 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1160 <td>icon size this source matches. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
1161 </td>
1162 </tr>
1163 </tbody>
1164 </table></div>
1165 </div>
1166 <hr>
1167 <div class="refsect2">
1168 <a name="gtk-icon-source-get-size-wildcarded"></a><h3>gtk_icon_source_get_size_wildcarded ()</h3>
1169 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_icon_source_get_size_wildcarded (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1170 <p>
1171 Gets the value set by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-size-wildcarded" title="gtk_icon_source_set_size_wildcarded ()"><code class="function">gtk_icon_source_set_size_wildcarded()</code></a>.
1172 </p>
1173 <div class="variablelist"><table border="0">
1174 <col align="left" valign="top">
1175 <tbody>
1176 <tr>
1177 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1178 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1179 </td>
1180 </tr>
1181 <tr>
1182 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1183 <td>
1184 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if this icon source is a base for any icon size variant</td>
1185 </tr>
1186 </tbody>
1187 </table></div>
1188 </div>
1189 <hr>
1190 <div class="refsect2">
1191 <a name="gtk-icon-source-get-state"></a><h3>gtk_icon_source_get_state ()</h3>
1192 <pre class="programlisting"><a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="returnvalue">GtkStateType</span></a>        gtk_icon_source_get_state           (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1193 <p>
1194 Obtains the widget state this icon source applies to. The return
1195 value is only useful/meaningful if the widget state is <span class="emphasis"><em>not</em></span>
1196 wildcarded.
1197 </p>
1198 <div class="variablelist"><table border="0">
1199 <col align="left" valign="top">
1200 <tbody>
1201 <tr>
1202 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1203 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1204 </td>
1205 </tr>
1206 <tr>
1207 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1208 <td>widget state this source matches</td>
1209 </tr>
1210 </tbody>
1211 </table></div>
1212 </div>
1213 <hr>
1214 <div class="refsect2">
1215 <a name="gtk-icon-source-get-state-wildcarded"></a><h3>gtk_icon_source_get_state_wildcarded ()</h3>
1216 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_icon_source_get_state_wildcarded
1217                                                         (<em class="parameter"><code>const <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>);</pre>
1218 <p>
1219 Gets the value set by <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-state-wildcarded" title="gtk_icon_source_set_state_wildcarded ()"><code class="function">gtk_icon_source_set_state_wildcarded()</code></a>.
1220 </p>
1221 <div class="variablelist"><table border="0">
1222 <col align="left" valign="top">
1223 <tbody>
1224 <tr>
1225 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1226 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1227 </td>
1228 </tr>
1229 <tr>
1230 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1231 <td>
1232 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if this icon source is a base for any widget state variant</td>
1233 </tr>
1234 </tbody>
1235 </table></div>
1236 </div>
1237 <hr>
1238 <div class="refsect2">
1239 <a name="gtk-icon-source-new"></a><h3>gtk_icon_source_new ()</h3>
1240 <pre class="programlisting"><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="returnvalue">GtkIconSource</span></a> *     gtk_icon_source_new                 (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
1241 <p>
1242 Creates a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>. A <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> contains a <a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> (or
1243 image filename) that serves as the base image for one or more of the
1244 icons in a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>, along with a specification for which icons in the
1245 icon set will be based on that pixbuf or image file. An icon set contains
1246 a set of icons that represent "the same" logical concept in different states,
1247 different global text directions, and different sizes.
1248 </p>
1249 <p>
1250 So for example a web browser's "Back to Previous Page" icon might
1251 point in a different direction in Hebrew and in English; it might
1252 look different when insensitive; and it might change size depending
1253 on toolbar mode (small/large icons). So a single icon set would
1254 contain all those variants of the icon. <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> contains a list
1255 of <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> from which it can derive specific icon variants in
1256 the set.
1257 </p>
1258 <p>
1259 In the simplest case, <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> contains one source pixbuf from
1260 which it derives all variants. The convenience function
1261 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-new-from-pixbuf" title="gtk_icon_set_new_from_pixbuf ()"><code class="function">gtk_icon_set_new_from_pixbuf()</code></a> handles this case; if you only have
1262 one source pixbuf, just use that function.
1263 </p>
1264 <p>
1265 If you want to use a different base pixbuf for different icon
1266 variants, you create multiple icon sources, mark which variants
1267 they'll be used to create, and add them to the icon set with
1268 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-set-add-source" title="gtk_icon_set_add_source ()"><code class="function">gtk_icon_set_add_source()</code></a>.
1269 </p>
1270 <p>
1271 By default, the icon source has all parameters wildcarded. That is,
1272 the icon source will be used as the base icon for any desired text
1273 direction, widget state, or icon size.
1274 </p>
1275 <div class="variablelist"><table border="0">
1276 <col align="left" valign="top">
1277 <tbody><tr>
1278 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1279 <td>a new <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1280 </td>
1281 </tr></tbody>
1282 </table></div>
1283 </div>
1284 <hr>
1285 <div class="refsect2">
1286 <a name="gtk-icon-source-set-direction"></a><h3>gtk_icon_source_set_direction ()</h3>
1287 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_direction       (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1288                                                          <em class="parameter"><code><a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a> direction</code></em>);</pre>
1289 <p>
1290 Sets the text direction this icon source is intended to be used
1291 with.
1292 </p>
1293 <p>
1294 Setting the text direction on an icon source makes no difference
1295 if the text direction is wildcarded. Therefore, you should usually
1296 call <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-direction-wildcarded" title="gtk_icon_source_set_direction_wildcarded ()"><code class="function">gtk_icon_source_set_direction_wildcarded()</code></a> to un-wildcard it
1297 in addition to calling this function.
1298 </p>
1299 <div class="variablelist"><table border="0">
1300 <col align="left" valign="top">
1301 <tbody>
1302 <tr>
1303 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1304 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1305 </td>
1306 </tr>
1307 <tr>
1308 <td><p><span class="term"><em class="parameter"><code>direction</code></em> :</span></p></td>
1309 <td>text direction this source applies to</td>
1310 </tr>
1311 </tbody>
1312 </table></div>
1313 </div>
1314 <hr>
1315 <div class="refsect2">
1316 <a name="gtk-icon-source-set-direction-wildcarded"></a><h3>gtk_icon_source_set_direction_wildcarded ()</h3>
1317 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_direction_wildcarded
1318                                                         (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1319                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);</pre>
1320 <p>
1321 If the text direction is wildcarded, this source can be used
1322 as the base image for an icon in any <a class="link" href="GtkWidget.html#GtkTextDirection" title="enum GtkTextDirection"><span class="type">GtkTextDirection</span></a>.
1323 If the text direction is not wildcarded, then the
1324 text direction the icon source applies to should be set
1325 with <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-direction" title="gtk_icon_source_set_direction ()"><code class="function">gtk_icon_source_set_direction()</code></a>, and the icon source
1326 will only be used with that text direction.
1327 </p>
1328 <p>
1329 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> prefers non-wildcarded sources (exact matches) over
1330 wildcarded sources, and will use an exact match when possible.
1331 </p>
1332 <div class="variablelist"><table border="0">
1333 <col align="left" valign="top">
1334 <tbody>
1335 <tr>
1336 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1337 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1338 </td>
1339 </tr>
1340 <tr>
1341 <td><p><span class="term"><em class="parameter"><code>setting</code></em> :</span></p></td>
1342 <td>
1343 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to wildcard the text direction</td>
1344 </tr>
1345 </tbody>
1346 </table></div>
1347 </div>
1348 <hr>
1349 <div class="refsect2">
1350 <a name="gtk-icon-source-set-filename"></a><h3>gtk_icon_source_set_filename ()</h3>
1351 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_filename        (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1352                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *filename</code></em>);</pre>
1353 <p>
1354 Sets the name of an image file to use as a base image when creating
1355 icon variants for <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>. The filename must be absolute.
1356 </p>
1357 <div class="variablelist"><table border="0">
1358 <col align="left" valign="top">
1359 <tbody>
1360 <tr>
1361 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1362 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1363 </td>
1364 </tr>
1365 <tr>
1366 <td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
1367 <td>image file to use. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> filename]</span>
1368 </td>
1369 </tr>
1370 </tbody>
1371 </table></div>
1372 </div>
1373 <hr>
1374 <div class="refsect2">
1375 <a name="gtk-icon-source-set-pixbuf"></a><h3>gtk_icon_source_set_pixbuf ()</h3>
1376 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_pixbuf          (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1377                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/gdk-pixbuf/unstable/gdk-pixbuf-The-GdkPixbuf-Structure.html#GdkPixbuf"><span class="type">GdkPixbuf</span></a> *pixbuf</code></em>);</pre>
1378 <p>
1379 Sets a pixbuf to use as a base image when creating icon variants
1380 for <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>.
1381 </p>
1382 <div class="variablelist"><table border="0">
1383 <col align="left" valign="top">
1384 <tbody>
1385 <tr>
1386 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1387 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1388 </td>
1389 </tr>
1390 <tr>
1391 <td><p><span class="term"><em class="parameter"><code>pixbuf</code></em> :</span></p></td>
1392 <td>pixbuf to use as a source</td>
1393 </tr>
1394 </tbody>
1395 </table></div>
1396 </div>
1397 <hr>
1398 <div class="refsect2">
1399 <a name="gtk-icon-source-set-icon-name"></a><h3>gtk_icon_source_set_icon_name ()</h3>
1400 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_icon_name       (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1401                                                          <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *icon_name</code></em>);</pre>
1402 <p>
1403 Sets the name of an icon to look up in the current icon theme
1404 to use as a base image when creating icon variants for <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a>.
1405 </p>
1406 <div class="variablelist"><table border="0">
1407 <col align="left" valign="top">
1408 <tbody>
1409 <tr>
1410 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1411 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1412 </td>
1413 </tr>
1414 <tr>
1415 <td><p><span class="term"><em class="parameter"><code>icon_name</code></em> :</span></p></td>
1416 <td>name of icon to use. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
1417 </td>
1418 </tr>
1419 </tbody>
1420 </table></div>
1421 </div>
1422 <hr>
1423 <div class="refsect2">
1424 <a name="gtk-icon-source-set-size"></a><h3>gtk_icon_source_set_size ()</h3>
1425 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_size            (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1426                                                          <em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSize" title="enum GtkIconSize"><span class="type">GtkIconSize</span></a> size</code></em>);</pre>
1427 <p>
1428 Sets the icon size this icon source is intended to be used
1429 with.
1430 </p>
1431 <p>
1432 Setting the icon size on an icon source makes no difference
1433 if the size is wildcarded. Therefore, you should usually
1434 call <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-size-wildcarded" title="gtk_icon_source_set_size_wildcarded ()"><code class="function">gtk_icon_source_set_size_wildcarded()</code></a> to un-wildcard it
1435 in addition to calling this function.
1436 </p>
1437 <div class="variablelist"><table border="0">
1438 <col align="left" valign="top">
1439 <tbody>
1440 <tr>
1441 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1442 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1443 </td>
1444 </tr>
1445 <tr>
1446 <td><p><span class="term"><em class="parameter"><code>size</code></em> :</span></p></td>
1447 <td>icon size this source applies to. <span class="annotation">[<acronym title="Override the parsed C type with given type"><span class="acronym">type</span></acronym> int]</span>
1448 </td>
1449 </tr>
1450 </tbody>
1451 </table></div>
1452 </div>
1453 <hr>
1454 <div class="refsect2">
1455 <a name="gtk-icon-source-set-size-wildcarded"></a><h3>gtk_icon_source_set_size_wildcarded ()</h3>
1456 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_size_wildcarded (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1457                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);</pre>
1458 <p>
1459 If the icon size is wildcarded, this source can be used as the base
1460 image for an icon of any size.  If the size is not wildcarded, then
1461 the size the source applies to should be set with
1462 <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-size" title="gtk_icon_source_set_size ()"><code class="function">gtk_icon_source_set_size()</code></a> and the icon source will only be used
1463 with that specific size.
1464 </p>
1465 <p>
1466 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> prefers non-wildcarded sources (exact matches) over
1467 wildcarded sources, and will use an exact match when possible.
1468 </p>
1469 <p>
1470 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> will normally scale wildcarded source images to produce
1471 an appropriate icon at a given size, but will not change the size
1472 of source images that match exactly.
1473 </p>
1474 <div class="variablelist"><table border="0">
1475 <col align="left" valign="top">
1476 <tbody>
1477 <tr>
1478 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1479 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1480 </td>
1481 </tr>
1482 <tr>
1483 <td><p><span class="term"><em class="parameter"><code>setting</code></em> :</span></p></td>
1484 <td>
1485 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to wildcard the widget state</td>
1486 </tr>
1487 </tbody>
1488 </table></div>
1489 </div>
1490 <hr>
1491 <div class="refsect2">
1492 <a name="gtk-icon-source-set-state"></a><h3>gtk_icon_source_set_state ()</h3>
1493 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_state           (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1494                                                          <em class="parameter"><code><a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a> state</code></em>);</pre>
1495 <p>
1496 Sets the widget state this icon source is intended to be used
1497 with.
1498 </p>
1499 <p>
1500 Setting the widget state on an icon source makes no difference
1501 if the state is wildcarded. Therefore, you should usually
1502 call <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-state-wildcarded" title="gtk_icon_source_set_state_wildcarded ()"><code class="function">gtk_icon_source_set_state_wildcarded()</code></a> to un-wildcard it
1503 in addition to calling this function.
1504 </p>
1505 <div class="variablelist"><table border="0">
1506 <col align="left" valign="top">
1507 <tbody>
1508 <tr>
1509 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1510 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1511 </td>
1512 </tr>
1513 <tr>
1514 <td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td>
1515 <td>widget state this source applies to</td>
1516 </tr>
1517 </tbody>
1518 </table></div>
1519 </div>
1520 <hr>
1521 <div class="refsect2">
1522 <a name="gtk-icon-source-set-state-wildcarded"></a><h3>gtk_icon_source_set_state_wildcarded ()</h3>
1523 <pre class="programlisting"><span class="returnvalue">void</span>                gtk_icon_source_set_state_wildcarded
1524                                                         (<em class="parameter"><code><a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a> *source</code></em>,
1525                                                          <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);</pre>
1526 <p>
1527 If the widget state is wildcarded, this source can be used as the
1528 base image for an icon in any <a class="link" href="gtk3-Standard-Enumerations.html#GtkStateType" title="enum GtkStateType"><span class="type">GtkStateType</span></a>.  If the widget state
1529 is not wildcarded, then the state the source applies to should be
1530 set with <a class="link" href="gtk3-Themeable-Stock-Images.html#gtk-icon-source-set-state" title="gtk_icon_source_set_state ()"><code class="function">gtk_icon_source_set_state()</code></a> and the icon source will
1531 only be used with that specific state.
1532 </p>
1533 <p>
1534 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> prefers non-wildcarded sources (exact matches) over
1535 wildcarded sources, and will use an exact match when possible.
1536 </p>
1537 <p>
1538 <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSet"><span class="type">GtkIconSet</span></a> will normally transform wildcarded source images to
1539 produce an appropriate icon for a given state, for example
1540 lightening an image on prelight, but will not modify source images
1541 that match exactly.
1542 </p>
1543 <div class="variablelist"><table border="0">
1544 <col align="left" valign="top">
1545 <tbody>
1546 <tr>
1547 <td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
1548 <td>a <a class="link" href="gtk3-Themeable-Stock-Images.html#GtkIconSource" title="GtkIconSource"><span class="type">GtkIconSource</span></a>
1549 </td>
1550 </tr>
1551 <tr>
1552 <td><p><span class="term"><em class="parameter"><code>setting</code></em> :</span></p></td>
1553 <td>
1554 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to wildcard the widget state</td>
1555 </tr>
1556 </tbody>
1557 </table></div>
1558 </div>
1559 </div>
1560 </div>
1561 <div class="footer">
1562 <hr>
1563           Generated by GTK-Doc V1.18</div>
1564 </body>
1565 </html>