﻿<?xml version="1.0" encoding="utf-8"?><Type Name="IconSet" FullName="Gtk.IconSet"><TypeSignature Language="C#" Maintainer="duncan" Value="public class IconSet : GLib.Opaque" /><AssemblyInfo><AssemblyName>gtk-sharp</AssemblyName><AssemblyPublicKey></AssemblyPublicKey><AssemblyVersion>2.12.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement><Docs><summary>
      A <see cref="T:Gtk.IconSet" /> represents a single icon in various sizes and widget states.
    </summary><remarks>
      A <see cref="T:Gtk.IconSet" /> represents a single icon in
      various sizes and widget states. It can provide a <see cref="T:Gdk.Pixbuf" /> for a given size and state on request,
      and automatically caches some of the rendered <see cref="T:Gdk.Pixbuf" /> objects.
    </remarks></Docs><Base><BaseTypeName>GLib.Opaque</BaseTypeName></Base><Interfaces></Interfaces><Members><Member MemberName="RenderIcon"><MemberSignature Language="C#" Value="public Gdk.Pixbuf RenderIcon (Gtk.Style style, Gtk.TextDirection direction, Gtk.StateType state, Gtk.IconSize size, Gtk.Widget widget, string detail);" /><MemberType>Method</MemberType><ReturnValue><ReturnType>Gdk.Pixbuf</ReturnType></ReturnValue><Parameters><Parameter Name="style" Type="Gtk.Style" /><Parameter Name="direction" Type="Gtk.TextDirection" /><Parameter Name="state" Type="Gtk.StateType" /><Parameter Name="size" Type="Gtk.IconSize" /><Parameter Name="widget" Type="Gtk.Widget" /><Parameter Name="detail" Type="System.String" /></Parameters><Docs><summary>
          Renders an icon using <see cref="M:Gtk.Style.RenderIcon(Gtk.IconSource,Gtk.TextDirection,Gtk.StateType,Gtk.IconSize,Gtk.Widget,System.String)" /></summary><param name="style">
          a <see cref="T:Gtk.Style" /> associated with widget, or <see langword="null" /></param><param name="direction">The text direction</param><param name="state">The widget state</param><param name="size">The size of the icon</param><param name="widget">
          widget that will display the icon, or <see langword="null" /></param><param name="detail">
          detail to pass to the theme engine, or <see langword="null" /></param><returns>a <see cref="T:Gdk.Pixbuf" /> to be displayed</returns><remarks>
          Renders an icon using <see cref="M:Gtk.Style.RenderIcon(Gtk.IconSource,Gtk.TextDirection,Gtk.StateType,Gtk.IconSize,Gtk.Widget,System.String)" />. In
          most cases, <see cref="M:Gtk.Widget.RenderIcon(System.String,Gtk.IconSize,System.String)" /> is better, since it automatically provides most of the arguments from the
          current widget settings. This function never returns <see langword="null" />;
          if the icon can't be rendered (perhaps because an image file
          fails to load), a default "missing image" icon will be
          returned instead.
        </remarks></Docs></Member><Member MemberName="Copy"><MemberSignature Language="C#" Value="public Gtk.IconSet Copy ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>Gtk.IconSet</ReturnType></ReturnValue><Parameters /><Docs><summary>
          Copy the IconSet by value.
        </summary><returns>a copy of the current IconSet</returns><remarks /></Docs></Member><Member MemberName="AddSource"><MemberSignature Language="C#" Value="public void AddSource (Gtk.IconSource source);" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="source" Type="Gtk.IconSource" /></Parameters><Docs><summary>
          Adds an IconSource to the current IconSet.
        </summary><param name="source">an object of type <see cref="T:Gtk.IconSource" /></param><remarks><para>
            Icon sets have a list of <see cref="T:Gtk.IconSource" />,
            which they use as base icons for rendering icons in
            different states and sizes. Icons are scaled, made to look
            insensitive, etc. in <see cref="M:Gtk.Style.RenderIcon(Gtk.IconSource,Gtk.TextDirection,Gtk.StateType,Gtk.IconSize,Gtk.Widget,System.String)" />,
            but <see cref="T:Gtk.IconSet" /> needs base images to work
            with. The base images and when to use them are described
            by a <see cref="T:Gtk.IconSource" />.
          </para><para>
            This function copies <paramref name="source" />, so you can reuse the same
            source immediately without affecting the icon set.
          </para><para>
            An example of when you'd use this function: a web
            browser's "Back to Previous Page" icon might point in a
            different direction in Hebrew and in English; it might
            look different when insensitive; and it might change size
            depending on toolbar mode (small/large icons). So a single
            icon set would contain all those variants of the icon, and
            you might add a separate source for each one.
          </para><para>
            You should nearly always add a "default" icon source with
            all fields wildcarded, which will be used as a fallback if
            no more specific source matches. <see cref="T:Gtk.IconSet" />always prefers more specific icon sources to more
            generic icon sources. The order in which you add the
            sources to the icon set does not matter.
          </para><para>
            This <see cref="C:Gtk.IconSet(Gdk.Pixbuf)" /> constructor
            creates a new icon set with a default icon source based on
            the given pixbuf.
          </para></remarks></Docs></Member><Member MemberName="Ref"><MemberSignature Language="C#" Value="public Gtk.IconSet Ref ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>Gtk.IconSet</ReturnType></ReturnValue><Parameters /><Docs><summary>Increments the reference count.</summary><returns>the IconSet with the incremented reference count</returns><remarks /></Docs></Member><Member MemberName="Unref"><MemberSignature Language="C#" Value="public void Unref ();" /><MemberType>Method</MemberType><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><summary>Decrements the reference count</summary><remarks>
          Decrements the reference count, and frees memory
          if the reference count reaches 0.
        </remarks></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public IconSet (IntPtr raw);" /><MemberType>Constructor</MemberType><ReturnValue /><Parameters><Parameter Name="raw" Type="System.IntPtr" /></Parameters><Docs><summary>Internal constructor</summary><param name="raw">Pointer to the C object.</param><remarks><para>This is an internal constructor, and should not be used by user code.</para></remarks></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public IconSet ();" /><MemberType>Constructor</MemberType><ReturnValue /><Parameters /><Docs><summary>
          Creates a new <see cref="T:Gtk.IconSet" />. A <see cref="T:Gtk.IconSet" /> represents a single
          icon in various sizes and widget states. It can provide a
          <see cref="T:Gdk.Pixbuf" /> for a given size and state on request, and
          automatically caches some of the rendered <see cref="T:Gdk.Pixbuf" /> objects.
        </summary><remarks /></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public IconSet (Gdk.Pixbuf pixbuf);" /><MemberType>Constructor</MemberType><ReturnValue /><Parameters><Parameter Name="pixbuf" Type="Gdk.Pixbuf" /></Parameters><Docs><summary>
          Creates a new <see cref="T:Gtk.IconSet" /> with <paramref name="pixbuf" /> as the default/fallback source image.
        </summary><param name="pixbuf">
          a <see cref="T:Gdk.Pixbuf" /></param><remarks /></Docs></Member><Member MemberName="Sizes"><MemberSignature Language="C#" Value="public Gtk.IconSize[] Sizes { get; };" /><MemberType>Property</MemberType><ReturnValue><ReturnType>Gtk.IconSize[]</ReturnType></ReturnValue><Docs><summary>The available icon sizes on this system.</summary><value>a <see cref="T:Gtk.IconSize[]" /></value><remarks /></Docs></Member><Member MemberName="GType"><MemberSignature Language="C#" Value="public static GLib.GType GType { get; };" /><MemberType>Property</MemberType><ReturnValue><ReturnType>GLib.GType</ReturnType></ReturnValue><Parameters /><Docs><summary>GType Property.</summary><value>a <see cref="T:GLib.GType" /></value><remarks>Returns the native <see cref="T:GLib.GType" /> value for <see cref="T:Gtk.IconSet" />.</remarks></Docs></Member></Members></Type>