Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 677c1b5134368504c2e447757584d19e > files > 1023

ghc-gtk-devel-0.11.2-5.fc14.i686.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->
<title>dist/build/Graphics/UI/Gtk/General/IconFactory.hs</title>
<link type='text/css' rel='stylesheet' href='hscolour.css' />
</head>
<body>
<pre><a name="line-1"></a>
<a name="line-2"></a><span class='hs-comment'>{-# LINE 2 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-3"></a><span class='hs-comment'>-- -*-haskell-*-</span>
<a name="line-4"></a><span class='hs-comment'>-- GIMP Toolkit (GTK) IconFactory</span>
<a name="line-5"></a><span class='hs-comment'>--</span>
<a name="line-6"></a><span class='hs-comment'>-- Author : Axel Simon</span>
<a name="line-7"></a><span class='hs-comment'>--</span>
<a name="line-8"></a><span class='hs-comment'>-- Created: 24 May 2001</span>
<a name="line-9"></a><span class='hs-comment'>--</span>
<a name="line-10"></a><span class='hs-comment'>-- Copyright (C) 1999-2005 Axel Simon</span>
<a name="line-11"></a><span class='hs-comment'>--</span>
<a name="line-12"></a><span class='hs-comment'>-- This library is free software; you can redistribute it and/or</span>
<a name="line-13"></a><span class='hs-comment'>-- modify it under the terms of the GNU Lesser General Public</span>
<a name="line-14"></a><span class='hs-comment'>-- License as published by the Free Software Foundation; either</span>
<a name="line-15"></a><span class='hs-comment'>-- version 2.1 of the License, or (at your option) any later version.</span>
<a name="line-16"></a><span class='hs-comment'>--</span>
<a name="line-17"></a><span class='hs-comment'>-- This library is distributed in the hope that it will be useful,</span>
<a name="line-18"></a><span class='hs-comment'>-- but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="line-19"></a><span class='hs-comment'>-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span>
<a name="line-20"></a><span class='hs-comment'>-- Lesser General Public License for more details.</span>
<a name="line-21"></a><span class='hs-comment'>--</span>
<a name="line-22"></a><span class='hs-comment'>-- TODO</span>
<a name="line-23"></a><span class='hs-comment'>--</span>
<a name="line-24"></a><span class='hs-comment'>-- The following functions are not bound:</span>
<a name="line-25"></a><span class='hs-comment'>-- iconFactoryLookup, iconFactoryLookupDefault</span>
<a name="line-26"></a><span class='hs-comment'>-- It is not a good idea to lookup an IconSet directly. If an Icon needs to</span>
<a name="line-27"></a><span class='hs-comment'>-- be displayed it happends always in the context of a widget. The best</span>
<a name="line-28"></a><span class='hs-comment'>-- practice is to get the widgets Style and call styleLookupIconSet.</span>
<a name="line-29"></a><span class='hs-comment'>--</span>
<a name="line-30"></a><span class='hs-comment'>-- |</span>
<a name="line-31"></a><span class='hs-comment'>-- Maintainer : gtk2hs-users@lists.sourceforge.net</span>
<a name="line-32"></a><span class='hs-comment'>-- Stability : provisional</span>
<a name="line-33"></a><span class='hs-comment'>-- Portability : portable (depends on GHC)</span>
<a name="line-34"></a><span class='hs-comment'>--</span>
<a name="line-35"></a><span class='hs-comment'>-- Manipulating stock icons</span>
<a name="line-36"></a><span class='hs-comment'>--</span>
<a name="line-37"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>General</span><span class='hs-varop'>.</span><span class='hs-conid'>IconFactory</span> <span class='hs-layout'>(</span>
<a name="line-38"></a><span class='hs-comment'>-- * Detail</span>
<a name="line-39"></a><span class='hs-comment'>--</span>
<a name="line-40"></a><span class='hs-comment'>-- | Browse the available stock icons in the list of stock IDs found here. You</span>
<a name="line-41"></a><span class='hs-comment'>-- can also use the gtk-demo application for this purpose.</span>
<a name="line-42"></a><span class='hs-comment'>--</span>
<a name="line-43"></a><span class='hs-comment'>-- An icon factory manages a collection of 'IconSet'; a 'IconSet' manages a</span>
<a name="line-44"></a><span class='hs-comment'>-- set of variants of a particular icon (i.e. a 'IconSet' contains variants for</span>
<a name="line-45"></a><span class='hs-comment'>-- different sizes and widget states). Icons in an icon factory are named by a</span>
<a name="line-46"></a><span class='hs-comment'>-- stock ID, which is a simple string identifying the icon. Each 'Style' has a</span>
<a name="line-47"></a><span class='hs-comment'>-- list of 'IconFactory' derived from the current theme; those icon factories</span>
<a name="line-48"></a><span class='hs-comment'>-- are consulted first when searching for an icon. If the theme doesn't set a</span>
<a name="line-49"></a><span class='hs-comment'>-- particular icon, Gtk+ looks for the icon in a list of default icon</span>
<a name="line-50"></a><span class='hs-comment'>-- factories, maintained by 'iconFactoryAddDefault' and</span>
<a name="line-51"></a><span class='hs-comment'>-- 'iconFactoryRemoveDefault'. Applications with icons should add a default</span>
<a name="line-52"></a><span class='hs-comment'>-- icon factory with their icons, which will allow themes to override the icons</span>
<a name="line-53"></a><span class='hs-comment'>-- for the application.</span>
<a name="line-54"></a><span class='hs-comment'>--</span>
<a name="line-55"></a><span class='hs-comment'>-- To display an icon, always use</span>
<a name="line-56"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.General.Style.styleLookupIconSet' on the widget that</span>
<a name="line-57"></a><span class='hs-comment'>-- will display the icon, or the convenience function</span>
<a name="line-58"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.Abstract.Widget.widgetRenderIcon'. These</span>
<a name="line-59"></a><span class='hs-comment'>-- functions take the theme into account when looking up the icon to use for a</span>
<a name="line-60"></a><span class='hs-comment'>-- given stock ID.</span>
<a name="line-61"></a>
<a name="line-62"></a><span class='hs-comment'>-- * Class Hierarchy</span>
<a name="line-63"></a><span class='hs-comment'>-- |</span>
<a name="line-64"></a><span class='hs-comment'>-- @</span>
<a name="line-65"></a><span class='hs-comment'>-- | 'GObject'</span>
<a name="line-66"></a><span class='hs-comment'>-- | +----IconFactory</span>
<a name="line-67"></a><span class='hs-comment'>-- @</span>
<a name="line-68"></a>
<a name="line-69"></a><span class='hs-comment'>-- * Types</span>
<a name="line-70"></a>  <span class='hs-conid'>IconFactory</span><span class='hs-layout'>,</span>
<a name="line-71"></a>  <span class='hs-conid'>IconFactoryClass</span><span class='hs-layout'>,</span>
<a name="line-72"></a>  <span class='hs-varid'>castToIconFactory</span><span class='hs-layout'>,</span> <span class='hs-varid'>gTypeIconFactory</span><span class='hs-layout'>,</span>
<a name="line-73"></a>  <span class='hs-varid'>toIconFactory</span><span class='hs-layout'>,</span>
<a name="line-74"></a>
<a name="line-75"></a><span class='hs-comment'>-- * Constructors</span>
<a name="line-76"></a>  <span class='hs-varid'>iconFactoryNew</span><span class='hs-layout'>,</span>
<a name="line-77"></a>
<a name="line-78"></a><span class='hs-comment'>-- * Methods</span>
<a name="line-79"></a>  <span class='hs-varid'>iconFactoryAdd</span><span class='hs-layout'>,</span>
<a name="line-80"></a>  <span class='hs-varid'>iconFactoryAddDefault</span><span class='hs-layout'>,</span>
<a name="line-81"></a>  <span class='hs-varid'>iconFactoryLookup</span><span class='hs-layout'>,</span>
<a name="line-82"></a>  <span class='hs-varid'>iconFactoryLookupDefault</span><span class='hs-layout'>,</span>
<a name="line-83"></a>  <span class='hs-varid'>iconFactoryRemoveDefault</span><span class='hs-layout'>,</span>
<a name="line-84"></a>  <span class='hs-conid'>IconSet</span><span class='hs-layout'>,</span>
<a name="line-85"></a>  <span class='hs-varid'>iconSetNew</span><span class='hs-layout'>,</span>
<a name="line-86"></a>  <span class='hs-varid'>iconSetNewFromPixbuf</span><span class='hs-layout'>,</span>
<a name="line-87"></a>  <span class='hs-varid'>iconSetAddSource</span><span class='hs-layout'>,</span>
<a name="line-88"></a>  <span class='hs-varid'>iconSetRenderIcon</span><span class='hs-layout'>,</span>
<a name="line-89"></a>  <span class='hs-varid'>iconSetGetSizes</span><span class='hs-layout'>,</span>
<a name="line-90"></a>  <span class='hs-conid'>IconSource</span><span class='hs-layout'>,</span>
<a name="line-91"></a>  <span class='hs-varid'>iconSourceNew</span><span class='hs-layout'>,</span>
<a name="line-92"></a>  <span class='hs-conid'>TextDirection</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span>
<a name="line-93"></a>  <span class='hs-varid'>iconSourceGetDirection</span><span class='hs-layout'>,</span>
<a name="line-94"></a>  <span class='hs-varid'>iconSourceSetDirection</span><span class='hs-layout'>,</span>
<a name="line-95"></a>  <span class='hs-varid'>iconSourceResetDirection</span><span class='hs-layout'>,</span>
<a name="line-96"></a>  <span class='hs-varid'>iconSourceGetFilename</span><span class='hs-layout'>,</span>
<a name="line-97"></a>  <span class='hs-varid'>iconSourceSetFilename</span><span class='hs-layout'>,</span>
<a name="line-98"></a>  <span class='hs-varid'>iconSourceGetPixbuf</span><span class='hs-layout'>,</span>
<a name="line-99"></a>  <span class='hs-varid'>iconSourceSetPixbuf</span><span class='hs-layout'>,</span>
<a name="line-100"></a>  <span class='hs-varid'>iconSourceGetSize</span><span class='hs-layout'>,</span>
<a name="line-101"></a>  <span class='hs-varid'>iconSourceSetSize</span><span class='hs-layout'>,</span>
<a name="line-102"></a>  <span class='hs-varid'>iconSourceResetSize</span><span class='hs-layout'>,</span>
<a name="line-103"></a>  <span class='hs-conid'>StateType</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span>
<a name="line-104"></a>  <span class='hs-varid'>iconSourceGetState</span><span class='hs-layout'>,</span>
<a name="line-105"></a>  <span class='hs-varid'>iconSourceSetState</span><span class='hs-layout'>,</span>
<a name="line-106"></a>  <span class='hs-varid'>iconSourceResetState</span><span class='hs-layout'>,</span>
<a name="line-107"></a>  <span class='hs-conid'>IconSize</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span>
<a name="line-108"></a>  <span class='hs-varid'>iconSizeCheck</span><span class='hs-layout'>,</span>
<a name="line-109"></a>  <span class='hs-varid'>iconSizeRegister</span><span class='hs-layout'>,</span>
<a name="line-110"></a>  <span class='hs-varid'>iconSizeRegisterAlias</span><span class='hs-layout'>,</span>
<a name="line-111"></a>  <span class='hs-varid'>iconSizeFromName</span><span class='hs-layout'>,</span>
<a name="line-112"></a>  <span class='hs-varid'>iconSizeGetName</span>
<a name="line-113"></a>  <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
<a name="line-114"></a>
<a name="line-115"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-varid'>liftM</span><span class='hs-layout'>)</span>
<a name="line-116"></a>
<a name="line-117"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>FFI</span>
<a name="line-118"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>UTFString</span>
<a name="line-119"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>GObject</span> <span class='hs-layout'>(</span><span class='hs-varid'>constructNewGObject</span><span class='hs-layout'>,</span> <span class='hs-varid'>makeNewGObject</span><span class='hs-layout'>)</span>
<a name="line-120"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span>
<a name="line-121"></a><span class='hs-comment'>{-# LINE 120 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-122"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>General</span><span class='hs-varop'>.</span><span class='hs-conid'>Enums</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextDirection</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span> <span class='hs-conid'>StateType</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-123"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>General</span><span class='hs-varop'>.</span><span class='hs-conid'>StockItems</span>
<a name="line-124"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>General</span><span class='hs-varop'>.</span><span class='hs-conid'>Structs</span> <span class='hs-layout'>(</span><span class='hs-conid'>IconSize</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-125"></a>
<a name="line-126"></a>
<a name="line-127"></a><span class='hs-comment'>{-# LINE 125 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-128"></a>
<a name="line-129"></a><a name="IconSource"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>IconSource</span> <span class='hs-layout'>(</span><span class='hs-conid'>ForeignPtr</span> <span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-130"></a><span class='hs-comment'>{-# LINE 127 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-131"></a>
<a name="line-132"></a><a name="IconSet"></a><span class='hs-keyword'>newtype</span> <span class='hs-conid'>IconSet</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>IconSet</span> <span class='hs-layout'>(</span><span class='hs-conid'>ForeignPtr</span> <span class='hs-layout'>(</span><span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-133"></a><span class='hs-comment'>{-# LINE 129 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-134"></a>
<a name="line-135"></a><span class='hs-comment'>-- The Show instance for IconSize is here since we need c2hs.</span>
<a name="line-136"></a><span class='hs-keyword'>instance</span> <span class='hs-conid'>Show</span> <span class='hs-conid'>IconSize</span> <span class='hs-keyword'>where</span>
<a name="line-137"></a>  <span class='hs-varid'>show</span> <span class='hs-varid'>i</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>unsafePerformIO</span> <span class='hs-layout'>(</span><span class='hs-varid'>lookupSizeString</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromEnum</span> <span class='hs-varid'>i</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-138"></a>    <span class='hs-keyword'>where</span>
<a name="line-139"></a>    <span class='hs-varid'>lookupSizeString</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-140"></a>      <span class='hs-varid'>ptr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>gtk_icon_size_get_name</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-141"></a>      <span class='hs-keyword'>if</span> <span class='hs-varid'>ptr</span><span class='hs-varop'>==</span><span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-str'>""</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>ptr</span>
<a name="line-142"></a>
<a name="line-143"></a><span class='hs-comment'>--------------------</span>
<a name="line-144"></a><span class='hs-comment'>-- Constructors</span>
<a name="line-145"></a>
<a name="line-146"></a><a name="iconFactoryNew"></a><span class='hs-comment'>-- | Create a new IconFactory.</span>
<a name="line-147"></a><span class='hs-comment'>--</span>
<a name="line-148"></a><span class='hs-comment'>-- * An application should create a new 'IconFactory' and add all</span>
<a name="line-149"></a><span class='hs-comment'>-- needed icons.</span>
<a name="line-150"></a><span class='hs-comment'>-- By calling 'iconFactoryAddDefault' these icons become</span>
<a name="line-151"></a><span class='hs-comment'>-- available as stock objects and can easily be displayed by</span>
<a name="line-152"></a><span class='hs-comment'>-- 'Image'. Furthermore, a theme can override the icons defined by</span>
<a name="line-153"></a><span class='hs-comment'>-- the application.</span>
<a name="line-154"></a><span class='hs-comment'>--</span>
<a name="line-155"></a><span class='hs-definition'>iconFactoryNew</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconFactory</span>
<a name="line-156"></a><span class='hs-definition'>iconFactoryNew</span> <span class='hs-keyglyph'>=</span>
<a name="line-157"></a>  <span class='hs-varid'>constructNewGObject</span> <span class='hs-varid'>mkIconFactory</span> <span class='hs-varid'>gtk_icon_factory_new</span>
<a name="line-158"></a><span class='hs-comment'>{-# LINE 153 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-159"></a>
<a name="line-160"></a><span class='hs-comment'>--------------------</span>
<a name="line-161"></a><span class='hs-comment'>-- Methods</span>
<a name="line-162"></a>
<a name="line-163"></a><a name="iconFactoryAdd"></a><span class='hs-comment'>-- | Add an IconSet to an IconFactory.</span>
<a name="line-164"></a><span class='hs-comment'>--</span>
<a name="line-165"></a><span class='hs-comment'>-- In order to use the new stock object, the factory as to be added to the</span>
<a name="line-166"></a><span class='hs-comment'>-- default factories by 'iconFactoryAddDefault'.</span>
<a name="line-167"></a><span class='hs-comment'>--</span>
<a name="line-168"></a><span class='hs-definition'>iconFactoryAdd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconFactory</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>StockId</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IconSet</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-169"></a><span class='hs-definition'>iconFactoryAdd</span> <span class='hs-varid'>i</span> <span class='hs-varid'>stockId</span> <span class='hs-varid'>iconSet</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>stockId</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-170"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconFactory</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-layout'>(</span><span class='hs-conid'>IconSet</span> <span class='hs-varid'>arg3</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg3</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr3</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_factory_add</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>argPtr3</span><span class='hs-layout'>)</span> <span class='hs-varid'>i</span> <span class='hs-varid'>strPtr</span> <span class='hs-varid'>iconSet</span>
<a name="line-171"></a>
<a name="line-172"></a><a name="iconFactoryAddDefault"></a><span class='hs-comment'>-- | Add all entries of the IconFactory to the</span>
<a name="line-173"></a><span class='hs-comment'>-- applications stock object database.</span>
<a name="line-174"></a><span class='hs-comment'>--</span>
<a name="line-175"></a><span class='hs-definition'>iconFactoryAddDefault</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconFactory</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-176"></a><span class='hs-definition'>iconFactoryAddDefault</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconFactory</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_factory_add_default</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-177"></a><span class='hs-comment'>{-# LINE 171 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-178"></a>
<a name="line-179"></a><a name="iconFactoryLookup"></a><span class='hs-comment'>-- | Looks up the stock id in the icon factory, returning an icon set if found,</span>
<a name="line-180"></a><span class='hs-comment'>-- otherwise Nothing.</span>
<a name="line-181"></a><span class='hs-comment'>--</span>
<a name="line-182"></a><span class='hs-comment'>-- For display to the user, you should use</span>
<a name="line-183"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.General.Style.styleLookupIconSet' on the</span>
<a name="line-184"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.General.Style.Style'</span>
<a name="line-185"></a><span class='hs-comment'>-- for the widget that will display the icon, instead of using this function</span>
<a name="line-186"></a><span class='hs-comment'>-- directly, so that themes are taken into account.</span>
<a name="line-187"></a><span class='hs-comment'>--</span>
<a name="line-188"></a><span class='hs-definition'>iconFactoryLookup</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconFactory</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>StockId</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span>
<a name="line-189"></a><span class='hs-definition'>iconFactoryLookup</span> <span class='hs-varid'>i</span> <span class='hs-varid'>stockId</span> <span class='hs-keyglyph'>=</span>
<a name="line-190"></a>  <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>stockId</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyword'>do</span>
<a name="line-191"></a>  <span class='hs-varid'>iconSetPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconFactory</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_factory_lookup</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>i</span> <span class='hs-varid'>strPtr</span>
<a name="line-192"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>iconSetPtr</span> <span class='hs-varop'>==</span> <span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varop'>.</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-193"></a>    <span class='hs-varid'>newForeignPtr</span> <span class='hs-varid'>iconSetPtr</span> <span class='hs-varid'>icon_set_unref</span>
<a name="line-194"></a>
<a name="line-195"></a><a name="iconFactoryLookupDefault"></a><span class='hs-comment'>-- | Looks for an icon in the list of default icon factories.</span>
<a name="line-196"></a><span class='hs-comment'>--</span>
<a name="line-197"></a><span class='hs-comment'>-- For display to the user, you should use</span>
<a name="line-198"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.General.Style.styleLookupIconSet' on the</span>
<a name="line-199"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.General.Style.Style'</span>
<a name="line-200"></a><span class='hs-comment'>-- for the widget that will display the icon, instead of using this function</span>
<a name="line-201"></a><span class='hs-comment'>-- directly, so that themes are taken into account.</span>
<a name="line-202"></a><span class='hs-comment'>--</span>
<a name="line-203"></a><span class='hs-definition'>iconFactoryLookupDefault</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>StockId</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span>
<a name="line-204"></a><span class='hs-definition'>iconFactoryLookupDefault</span> <span class='hs-varid'>stockId</span> <span class='hs-keyglyph'>=</span>
<a name="line-205"></a>  <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>stockId</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyword'>do</span>
<a name="line-206"></a>  <span class='hs-varid'>iconSetPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>gtk_icon_factory_lookup_default</span> <span class='hs-varid'>strPtr</span>
<a name="line-207"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>iconSetPtr</span> <span class='hs-varop'>==</span> <span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varop'>.</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-208"></a>    <span class='hs-varid'>newForeignPtr</span> <span class='hs-varid'>iconSetPtr</span> <span class='hs-varid'>icon_set_unref</span>
<a name="line-209"></a>
<a name="line-210"></a><a name="iconFactoryRemoveDefault"></a><span class='hs-comment'>-- | Remove an IconFactory from the</span>
<a name="line-211"></a><span class='hs-comment'>-- application's stock database.</span>
<a name="line-212"></a><span class='hs-comment'>--</span>
<a name="line-213"></a><span class='hs-definition'>iconFactoryRemoveDefault</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconFactory</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-214"></a><span class='hs-definition'>iconFactoryRemoveDefault</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconFactory</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_factory_remove_default</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-215"></a><span class='hs-comment'>{-# LINE 208 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-216"></a>
<a name="line-217"></a><a name="iconSetAddSource"></a><span class='hs-comment'>-- | Add an 'IconSource' (an Icon with</span>
<a name="line-218"></a><span class='hs-comment'>-- attributes) to an 'IconSet'.</span>
<a name="line-219"></a><span class='hs-comment'>--</span>
<a name="line-220"></a><span class='hs-comment'>-- * If an icon is looked up in the IconSet @set@ the best matching</span>
<a name="line-221"></a><span class='hs-comment'>-- IconSource will be taken. It is therefore advisable to add a default</span>
<a name="line-222"></a><span class='hs-comment'>-- (wildcarded) icon, than can be used if no exact match is found.</span>
<a name="line-223"></a><span class='hs-comment'>--</span>
<a name="line-224"></a><span class='hs-definition'>iconSetAddSource</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSet</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-225"></a><span class='hs-definition'>iconSetAddSource</span> <span class='hs-varid'>set</span> <span class='hs-varid'>source</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSet</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_set_add_source</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>set</span> <span class='hs-varid'>source</span>
<a name="line-226"></a>
<a name="line-227"></a><a name="iconSetRenderIcon"></a><span class='hs-definition'>iconSetRenderIcon</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>WidgetClass</span> <span class='hs-varid'>widget</span> <span class='hs-keyglyph'>=&gt;</span> <span class='hs-conid'>IconSet</span>
<a name="line-228"></a>                  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextDirection</span>
<a name="line-229"></a>                  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>StateType</span>
<a name="line-230"></a>                  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IconSize</span>
<a name="line-231"></a>                  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>widget</span>
<a name="line-232"></a>                  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Pixbuf</span>
<a name="line-233"></a><span class='hs-definition'>iconSetRenderIcon</span> <span class='hs-varid'>set</span> <span class='hs-varid'>dir</span> <span class='hs-varid'>state</span> <span class='hs-varid'>size</span> <span class='hs-varid'>widget</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkPixbuf</span> <span class='hs-varop'>$</span>
<a name="line-234"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSet</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Style</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>arg4</span> <span class='hs-varid'>arg5</span> <span class='hs-layout'>(</span><span class='hs-conid'>Widget</span> <span class='hs-varid'>arg6</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg7</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg6</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr6</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_set_render_icon</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>arg4</span> <span class='hs-varid'>arg5</span> <span class='hs-varid'>argPtr6</span> <span class='hs-varid'>arg7</span><span class='hs-layout'>)</span> <span class='hs-varid'>set</span> <span class='hs-layout'>(</span><span class='hs-conid'>Style</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span>
<a name="line-235"></a>    <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>dir</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>state</span><span class='hs-layout'>)</span>
<a name="line-236"></a>    <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>size</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>toWidget</span> <span class='hs-varid'>widget</span><span class='hs-layout'>)</span> <span class='hs-varid'>nullPtr</span>
<a name="line-237"></a>
<a name="line-238"></a><a name="iconSetNew"></a><span class='hs-comment'>-- | Create a new IconSet.</span>
<a name="line-239"></a><span class='hs-comment'>--</span>
<a name="line-240"></a><span class='hs-comment'>-- * Each icon in an application is contained in an 'IconSet'. The</span>
<a name="line-241"></a><span class='hs-comment'>-- 'IconSet' contains several variants ('IconSource's) to</span>
<a name="line-242"></a><span class='hs-comment'>-- accomodate for different sizes and states.</span>
<a name="line-243"></a><span class='hs-comment'>--</span>
<a name="line-244"></a><span class='hs-definition'>iconSetNew</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconSet</span>
<a name="line-245"></a><span class='hs-definition'>iconSetNew</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-246"></a>  <span class='hs-varid'>isPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>gtk_icon_set_new</span>
<a name="line-247"></a><span class='hs-comment'>{-# LINE 239 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-248"></a>  <span class='hs-varid'>liftM</span> <span class='hs-conid'>IconSet</span> <span class='hs-varop'>$</span> <span class='hs-varid'>newForeignPtr</span> <span class='hs-varid'>isPtr</span> <span class='hs-varid'>icon_set_unref</span>
<a name="line-249"></a>
<a name="line-250"></a><a name="iconSetNewFromPixbuf"></a><span class='hs-comment'>-- | Creates a new 'IconSet' with the given pixbuf as the default\/fallback</span>
<a name="line-251"></a><span class='hs-comment'>-- source image. If you don't add any additional "IconSource" to the icon set,</span>
<a name="line-252"></a><span class='hs-comment'>-- all variants of the icon will be created from the pixbuf, using scaling,</span>
<a name="line-253"></a><span class='hs-comment'>-- pixelation, etc. as required to adjust the icon size or make the icon look</span>
<a name="line-254"></a><span class='hs-comment'>-- insensitive\/prelighted.</span>
<a name="line-255"></a><span class='hs-comment'>--</span>
<a name="line-256"></a><span class='hs-definition'>iconSetNewFromPixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Pixbuf</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconSet</span>
<a name="line-257"></a><span class='hs-definition'>iconSetNewFromPixbuf</span> <span class='hs-varid'>pixbuf</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-258"></a>  <span class='hs-varid'>isPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>Pixbuf</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_set_new_from_pixbuf</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>pixbuf</span>
<a name="line-259"></a>  <span class='hs-varid'>liftM</span> <span class='hs-conid'>IconSet</span> <span class='hs-varop'>$</span> <span class='hs-varid'>newForeignPtr</span> <span class='hs-varid'>isPtr</span> <span class='hs-varid'>icon_set_unref</span>
<a name="line-260"></a>
<a name="line-261"></a><a name="iconSetGetSizes"></a><span class='hs-comment'>-- | Obtains a list of icon sizes this icon set can render.</span>
<a name="line-262"></a><span class='hs-comment'>--</span>
<a name="line-263"></a><span class='hs-definition'>iconSetGetSizes</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSet</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>IconSize</span><span class='hs-keyglyph'>]</span>
<a name="line-264"></a><span class='hs-definition'>iconSetGetSizes</span> <span class='hs-varid'>set</span> <span class='hs-keyglyph'>=</span>
<a name="line-265"></a>  <span class='hs-varid'>alloca</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>sizesArrPtr</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>alloca</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>lenPtr</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyword'>do</span>
<a name="line-266"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSet</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_set_get_sizes</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span><span class='hs-layout'>)</span> <span class='hs-varid'>set</span> <span class='hs-varid'>sizesArrPtr</span> <span class='hs-varid'>lenPtr</span>
<a name="line-267"></a>  <span class='hs-varid'>len</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peek</span> <span class='hs-varid'>lenPtr</span>
<a name="line-268"></a>  <span class='hs-varid'>sizesArr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peek</span> <span class='hs-varid'>sizesArrPtr</span>
<a name="line-269"></a>  <span class='hs-varid'>list</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peekArray</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>len</span><span class='hs-layout'>)</span> <span class='hs-varid'>sizesArr</span>
<a name="line-270"></a>  <span class='hs-varid'>g_free</span> <span class='hs-layout'>(</span><span class='hs-varid'>castPtr</span> <span class='hs-varid'>sizesArr</span><span class='hs-layout'>)</span>
<a name="line-271"></a>  <span class='hs-varid'>return</span> <span class='hs-varop'>$</span> <span class='hs-varid'>map</span> <span class='hs-layout'>(</span><span class='hs-varid'>toEnum</span><span class='hs-varop'>.</span><span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varid'>list</span>
<a name="line-272"></a>
<a name="line-273"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"&amp;gtk_icon_set_unref"</span>
<a name="line-274"></a>  <span class='hs-varid'>icon_set_unref</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>FinalizerPtr</span> <span class='hs-conid'>IconSet</span>
<a name="line-275"></a>
<a name="line-276"></a><a name="iconSizeCheck"></a><span class='hs-comment'>-- | Check if a given IconSize is registered.</span>
<a name="line-277"></a><span class='hs-comment'>--</span>
<a name="line-278"></a><span class='hs-comment'>-- * Useful if your application expects a theme to install a set with a</span>
<a name="line-279"></a><span class='hs-comment'>-- specific size. You can test if this actually happend and use another size</span>
<a name="line-280"></a><span class='hs-comment'>-- if not.</span>
<a name="line-281"></a><span class='hs-comment'>--</span>
<a name="line-282"></a><span class='hs-definition'>iconSizeCheck</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSize</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-283"></a><span class='hs-definition'>iconSizeCheck</span> <span class='hs-varid'>size</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-284"></a>  <span class='hs-varid'>gtk_icon_size_lookup</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>size</span><span class='hs-layout'>)</span> <span class='hs-varid'>nullPtr</span> <span class='hs-varid'>nullPtr</span>
<a name="line-285"></a>
<a name="line-286"></a><a name="iconSizeRegister"></a><span class='hs-comment'>-- | Register a new IconSize.</span>
<a name="line-287"></a><span class='hs-comment'>--</span>
<a name="line-288"></a><span class='hs-definition'>iconSizeRegister</span> <span class='hs-keyglyph'>::</span>
<a name="line-289"></a>     <span class='hs-conid'>String</span> <span class='hs-comment'>-- ^ the new name of the size</span>
<a name="line-290"></a>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ the width of the icon</span>
<a name="line-291"></a>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ the height of the icon</span>
<a name="line-292"></a>  <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconSize</span> <span class='hs-comment'>-- ^ the new icon size</span>
<a name="line-293"></a><span class='hs-definition'>iconSizeRegister</span> <span class='hs-varid'>name</span> <span class='hs-varid'>width</span> <span class='hs-varid'>height</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-varid'>toEnum</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-294"></a>  <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>name</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>gtk_icon_size_register</span>
<a name="line-295"></a><span class='hs-comment'>{-# LINE 286 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-296"></a>  <span class='hs-varid'>strPtr</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>width</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>height</span><span class='hs-layout'>)</span>
<a name="line-297"></a>
<a name="line-298"></a><a name="iconSizeRegisterAlias"></a><span class='hs-comment'>-- | Register an additional alias for a name.</span>
<a name="line-299"></a><span class='hs-comment'>--</span>
<a name="line-300"></a><span class='hs-definition'>iconSizeRegisterAlias</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSize</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>String</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-301"></a><span class='hs-definition'>iconSizeRegisterAlias</span> <span class='hs-varid'>target</span> <span class='hs-varid'>alias</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>alias</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-302"></a>  <span class='hs-varid'>gtk_icon_size_register_alias</span> <span class='hs-varid'>strPtr</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>target</span><span class='hs-layout'>)</span>
<a name="line-303"></a>
<a name="line-304"></a><a name="iconSizeFromName"></a><span class='hs-comment'>-- | Lookup an IconSize by name.</span>
<a name="line-305"></a><span class='hs-comment'>--</span>
<a name="line-306"></a><span class='hs-comment'>-- * This fixed value 'iconSizeInvalid' is returned if the name was</span>
<a name="line-307"></a><span class='hs-comment'>-- not found.</span>
<a name="line-308"></a><span class='hs-comment'>--</span>
<a name="line-309"></a><span class='hs-definition'>iconSizeFromName</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>String</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconSize</span>
<a name="line-310"></a><span class='hs-definition'>iconSizeFromName</span> <span class='hs-varid'>name</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-varid'>toEnum</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-311"></a>  <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>name</span> <span class='hs-varid'>gtk_icon_size_from_name</span>
<a name="line-312"></a><span class='hs-comment'>{-# LINE 302 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-313"></a>
<a name="line-314"></a><a name="iconSizeGetName"></a><span class='hs-comment'>-- | Lookup the name of an IconSize.</span>
<a name="line-315"></a><span class='hs-comment'>--</span>
<a name="line-316"></a><span class='hs-comment'>-- * Returns @Nothing@ if the name was not found.</span>
<a name="line-317"></a><span class='hs-comment'>--</span>
<a name="line-318"></a><span class='hs-definition'>iconSizeGetName</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSize</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>String</span><span class='hs-layout'>)</span>
<a name="line-319"></a><span class='hs-definition'>iconSizeGetName</span> <span class='hs-varid'>size</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-320"></a>  <span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>gtk_icon_size_get_name</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>size</span><span class='hs-layout'>)</span>
<a name="line-321"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>strPtr</span><span class='hs-varop'>==</span><span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-conid'>Just</span> <span class='hs-varop'>$</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>strPtr</span>
<a name="line-322"></a>
<a name="line-323"></a><a name="iconSourceGetDirection"></a><span class='hs-comment'>-- | Retrieve the 'TextDirection' of</span>
<a name="line-324"></a><span class='hs-comment'>-- this IconSource.</span>
<a name="line-325"></a><span class='hs-comment'>--</span>
<a name="line-326"></a><span class='hs-comment'>-- * @Nothing@ is returned if no explicit direction was set.</span>
<a name="line-327"></a><span class='hs-comment'>--</span>
<a name="line-328"></a><span class='hs-definition'>iconSourceGetDirection</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextDirection</span><span class='hs-layout'>)</span>
<a name="line-329"></a><span class='hs-definition'>iconSourceGetDirection</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-330"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_direction_wildcarded</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-331"></a>  <span class='hs-keyword'>if</span> <span class='hs-layout'>(</span><span class='hs-varid'>toBool</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varop'>.</span><span class='hs-varid'>toEnum</span><span class='hs-varop'>.</span><span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-332"></a>    <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_direction</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-333"></a>
<a name="line-334"></a><a name="iconSourceGetFilename"></a><span class='hs-comment'>-- | Retrieve the filename this IconSource was</span>
<a name="line-335"></a><span class='hs-comment'>-- based on.</span>
<a name="line-336"></a><span class='hs-comment'>--</span>
<a name="line-337"></a><span class='hs-comment'>-- * Returns @Nothing@ if the IconSource was generated by a Pixbuf.</span>
<a name="line-338"></a><span class='hs-comment'>--</span>
<a name="line-339"></a><span class='hs-definition'>iconSourceGetFilename</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>String</span><span class='hs-layout'>)</span>
<a name="line-340"></a><span class='hs-definition'>iconSourceGetFilename</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-341"></a>
<a name="line-342"></a>
<a name="line-343"></a>
<a name="line-344"></a>  <span class='hs-varid'>strPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_filename</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-345"></a>
<a name="line-346"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>strPtr</span><span class='hs-varop'>==</span><span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-conid'>Just</span> <span class='hs-varop'>$</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>strPtr</span>
<a name="line-347"></a>
<a name="line-348"></a><a name="iconSourceGetSize"></a><span class='hs-comment'>-- | Retrieve the 'IconSize' of this</span>
<a name="line-349"></a><span class='hs-comment'>-- IconSource.</span>
<a name="line-350"></a><span class='hs-comment'>--</span>
<a name="line-351"></a><span class='hs-comment'>-- * @Nothing@ is returned if no explicit size was set (i.e. this</span>
<a name="line-352"></a><span class='hs-comment'>-- 'IconSource' matches all sizes).</span>
<a name="line-353"></a><span class='hs-comment'>--</span>
<a name="line-354"></a><span class='hs-definition'>iconSourceGetSize</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>IconSize</span><span class='hs-layout'>)</span>
<a name="line-355"></a><span class='hs-definition'>iconSourceGetSize</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-356"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_size_wildcarded</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-357"></a>  <span class='hs-keyword'>if</span> <span class='hs-layout'>(</span><span class='hs-varid'>toBool</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varop'>.</span> <span class='hs-varid'>toEnum</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-358"></a>    <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_size</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-359"></a>
<a name="line-360"></a><a name="iconSourceGetState"></a><span class='hs-comment'>-- | Retrieve the 'StateType' of this</span>
<a name="line-361"></a><span class='hs-comment'>-- 'IconSource'.</span>
<a name="line-362"></a><span class='hs-comment'>--</span>
<a name="line-363"></a><span class='hs-comment'>-- * @Nothing@ is returned if the 'IconSource' matches all</span>
<a name="line-364"></a><span class='hs-comment'>-- states.</span>
<a name="line-365"></a><span class='hs-comment'>--</span>
<a name="line-366"></a><span class='hs-definition'>iconSourceGetState</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>StateType</span><span class='hs-layout'>)</span>
<a name="line-367"></a><span class='hs-definition'>iconSourceGetState</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-368"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_state_wildcarded</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-369"></a>  <span class='hs-keyword'>if</span> <span class='hs-layout'>(</span><span class='hs-varid'>toBool</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varop'>.</span><span class='hs-varid'>toEnum</span><span class='hs-varop'>.</span><span class='hs-varid'>fromIntegral</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-370"></a>    <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_state</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-371"></a>
<a name="line-372"></a><a name="iconSourceNew"></a><span class='hs-comment'>-- | Create a new IconSource.</span>
<a name="line-373"></a><span class='hs-comment'>--</span>
<a name="line-374"></a><span class='hs-comment'>-- * An IconSource is a single image that is usually added to an IconSet. Next</span>
<a name="line-375"></a><span class='hs-comment'>-- to the image it contains information about which state, text direction</span>
<a name="line-376"></a><span class='hs-comment'>-- and size it should apply.</span>
<a name="line-377"></a><span class='hs-comment'>--</span>
<a name="line-378"></a><span class='hs-definition'>iconSourceNew</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>IconSource</span>
<a name="line-379"></a><span class='hs-definition'>iconSourceNew</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-380"></a>  <span class='hs-varid'>isPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>gtk_icon_source_new</span>
<a name="line-381"></a><span class='hs-comment'>{-# LINE 370 "./Graphics/UI/Gtk/General/IconFactory.chs" #-}</span>
<a name="line-382"></a>  <span class='hs-varid'>liftM</span> <span class='hs-conid'>IconSource</span> <span class='hs-varop'>$</span> <span class='hs-varid'>newForeignPtr</span> <span class='hs-varid'>isPtr</span> <span class='hs-varid'>icon_source_free</span>
<a name="line-383"></a>
<a name="line-384"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"&amp;gtk_icon_source_free"</span>
<a name="line-385"></a>  <span class='hs-varid'>icon_source_free</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>FinalizerPtr</span> <span class='hs-conid'>IconSource</span>
<a name="line-386"></a>
<a name="line-387"></a><a name="iconSourceSetDirection"></a><span class='hs-comment'>-- | Mark this 'IconSource' that it</span>
<a name="line-388"></a><span class='hs-comment'>-- should only apply to the specified 'TextDirection'.</span>
<a name="line-389"></a><span class='hs-comment'>--</span>
<a name="line-390"></a><span class='hs-definition'>iconSourceSetDirection</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextDirection</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-391"></a><span class='hs-definition'>iconSourceSetDirection</span> <span class='hs-varid'>is</span> <span class='hs-varid'>td</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-392"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_direction_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>False</span><span class='hs-layout'>)</span>
<a name="line-393"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_direction</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>td</span><span class='hs-layout'>)</span>
<a name="line-394"></a>
<a name="line-395"></a><a name="iconSourceResetDirection"></a><span class='hs-comment'>-- | Reset the specific</span>
<a name="line-396"></a><span class='hs-comment'>-- 'TextDirection' set with 'iconSourceSetDirection'.</span>
<a name="line-397"></a><span class='hs-comment'>--</span>
<a name="line-398"></a><span class='hs-definition'>iconSourceResetDirection</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-399"></a><span class='hs-definition'>iconSourceResetDirection</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span>
<a name="line-400"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_direction_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>True</span><span class='hs-layout'>)</span>
<a name="line-401"></a>
<a name="line-402"></a><a name="iconSourceSetFilename"></a><span class='hs-comment'>-- | Load an icon picture from this filename.</span>
<a name="line-403"></a><span class='hs-comment'>--</span>
<a name="line-404"></a><span class='hs-definition'>iconSourceSetFilename</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>FilePath</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-405"></a><span class='hs-definition'>iconSourceSetFilename</span> <span class='hs-varid'>is</span> <span class='hs-varid'>name</span> <span class='hs-keyglyph'>=</span>
<a name="line-406"></a>
<a name="line-407"></a>
<a name="line-408"></a>
<a name="line-409"></a>  <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>name</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_filename</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-410"></a>
<a name="line-411"></a>
<a name="line-412"></a><a name="iconSourceGetPixbuf"></a><span class='hs-comment'>-- | Retrieves the source pixbuf, or Nothing if none is set.</span>
<a name="line-413"></a><span class='hs-comment'>--</span>
<a name="line-414"></a><span class='hs-definition'>iconSourceGetPixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span>
<a name="line-415"></a><span class='hs-definition'>iconSourceGetPixbuf</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>maybeNull</span> <span class='hs-layout'>(</span><span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkPixbuf</span><span class='hs-layout'>)</span> <span class='hs-varop'>$</span>
<a name="line-416"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_get_pixbuf</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span>
<a name="line-417"></a>
<a name="line-418"></a><a name="iconSourceSetPixbuf"></a><span class='hs-comment'>-- | Sets a pixbuf to use as a base image when creating icon variants for</span>
<a name="line-419"></a><span class='hs-comment'>-- 'IconSet'.</span>
<a name="line-420"></a><span class='hs-comment'>--</span>
<a name="line-421"></a><span class='hs-definition'>iconSourceSetPixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Pixbuf</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-422"></a><span class='hs-definition'>iconSourceSetPixbuf</span> <span class='hs-varid'>is</span> <span class='hs-varid'>pb</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-423"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>Pixbuf</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_pixbuf</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-varid'>pb</span>
<a name="line-424"></a>
<a name="line-425"></a><a name="iconSourceSetSize"></a><span class='hs-comment'>-- | Set this 'IconSource' to a specific</span>
<a name="line-426"></a><span class='hs-comment'>-- size.</span>
<a name="line-427"></a><span class='hs-comment'>--</span>
<a name="line-428"></a><span class='hs-definition'>iconSourceSetSize</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IconSize</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-429"></a><span class='hs-definition'>iconSourceSetSize</span> <span class='hs-varid'>is</span> <span class='hs-varid'>size</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-430"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_size_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>False</span><span class='hs-layout'>)</span>
<a name="line-431"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_size</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>.</span> <span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>size</span><span class='hs-layout'>)</span>
<a name="line-432"></a>
<a name="line-433"></a><a name="iconSourceResetSize"></a><span class='hs-comment'>-- | Reset the 'IconSize' of this</span>
<a name="line-434"></a><span class='hs-comment'>-- 'IconSource' so that is matches anything.</span>
<a name="line-435"></a><span class='hs-comment'>--</span>
<a name="line-436"></a><span class='hs-definition'>iconSourceResetSize</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-437"></a><span class='hs-definition'>iconSourceResetSize</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span>
<a name="line-438"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_size_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>True</span><span class='hs-layout'>)</span>
<a name="line-439"></a>
<a name="line-440"></a><a name="iconSourceSetState"></a><span class='hs-comment'>-- | Mark this icon to be used only with this</span>
<a name="line-441"></a><span class='hs-comment'>-- specific state.</span>
<a name="line-442"></a><span class='hs-comment'>--</span>
<a name="line-443"></a><span class='hs-definition'>iconSourceSetState</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>StateType</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-444"></a><span class='hs-definition'>iconSourceSetState</span> <span class='hs-varid'>is</span> <span class='hs-varid'>state</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-445"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_state_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>False</span><span class='hs-layout'>)</span>
<a name="line-446"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_state</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromEnum</span><span class='hs-layout'>)</span> <span class='hs-varid'>state</span><span class='hs-layout'>)</span>
<a name="line-447"></a>
<a name="line-448"></a><a name="iconSourceResetState"></a><span class='hs-comment'>-- | Reset the 'StateType' of this</span>
<a name="line-449"></a><span class='hs-comment'>-- 'IconSource' so that is matches anything.</span>
<a name="line-450"></a><span class='hs-comment'>--</span>
<a name="line-451"></a><span class='hs-definition'>iconSourceResetState</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>IconSource</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-452"></a><span class='hs-definition'>iconSourceResetState</span> <span class='hs-varid'>is</span> <span class='hs-keyglyph'>=</span>
<a name="line-453"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>IconSource</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_icon_source_set_state_wildcarded</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>is</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-conid'>True</span><span class='hs-layout'>)</span>
<a name="line-454"></a>
<a name="line-455"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_size_get_name"</span>
<a name="line-456"></a>  <span class='hs-varid'>gtk_icon_size_get_name</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-457"></a>
<a name="line-458"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_new"</span>
<a name="line-459"></a>  <span class='hs-varid'>gtk_icon_factory_new</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconFactory</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-460"></a>
<a name="line-461"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_add"</span>
<a name="line-462"></a>  <span class='hs-varid'>gtk_icon_factory_add</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconFactory</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-463"></a>
<a name="line-464"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_add_default"</span>
<a name="line-465"></a>  <span class='hs-varid'>gtk_icon_factory_add_default</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconFactory</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-466"></a>
<a name="line-467"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_lookup"</span>
<a name="line-468"></a>  <span class='hs-varid'>gtk_icon_factory_lookup</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconFactory</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-469"></a>
<a name="line-470"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_lookup_default"</span>
<a name="line-471"></a>  <span class='hs-varid'>gtk_icon_factory_lookup_default</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-472"></a>
<a name="line-473"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_factory_remove_default"</span>
<a name="line-474"></a>  <span class='hs-varid'>gtk_icon_factory_remove_default</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconFactory</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-475"></a>
<a name="line-476"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_set_add_source"</span>
<a name="line-477"></a>  <span class='hs-varid'>gtk_icon_set_add_source</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-478"></a>
<a name="line-479"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_icon_set_render_icon"</span>
<a name="line-480"></a>  <span class='hs-varid'>gtk_icon_set_render_icon</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Style</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Widget</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-481"></a>
<a name="line-482"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_set_new"</span>
<a name="line-483"></a>  <span class='hs-varid'>gtk_icon_set_new</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-484"></a>
<a name="line-485"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_set_new_from_pixbuf"</span>
<a name="line-486"></a>  <span class='hs-varid'>gtk_icon_set_new_from_pixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-487"></a>
<a name="line-488"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_set_get_sizes"</span>
<a name="line-489"></a>  <span class='hs-varid'>gtk_icon_set_get_sizes</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSet</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-490"></a>
<a name="line-491"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"g_free"</span>
<a name="line-492"></a>  <span class='hs-varid'>g_free</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-493"></a>
<a name="line-494"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_icon_size_lookup"</span>
<a name="line-495"></a>  <span class='hs-varid'>gtk_icon_size_lookup</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-496"></a>
<a name="line-497"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_size_register"</span>
<a name="line-498"></a>  <span class='hs-varid'>gtk_icon_size_register</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-499"></a>
<a name="line-500"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_size_register_alias"</span>
<a name="line-501"></a>  <span class='hs-varid'>gtk_icon_size_register_alias</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-502"></a>
<a name="line-503"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_size_from_name"</span>
<a name="line-504"></a>  <span class='hs-varid'>gtk_icon_size_from_name</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-505"></a>
<a name="line-506"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_icon_source_get_direction_wildcarded"</span>
<a name="line-507"></a>  <span class='hs-varid'>gtk_icon_source_get_direction_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-508"></a>
<a name="line-509"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_direction"</span>
<a name="line-510"></a>  <span class='hs-varid'>gtk_icon_source_get_direction</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-511"></a>
<a name="line-512"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_filename"</span>
<a name="line-513"></a>  <span class='hs-varid'>gtk_icon_source_get_filename</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-514"></a>
<a name="line-515"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_size_wildcarded"</span>
<a name="line-516"></a>  <span class='hs-varid'>gtk_icon_source_get_size_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-517"></a>
<a name="line-518"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_size"</span>
<a name="line-519"></a>  <span class='hs-varid'>gtk_icon_source_get_size</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-520"></a>
<a name="line-521"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_state_wildcarded"</span>
<a name="line-522"></a>  <span class='hs-varid'>gtk_icon_source_get_state_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-523"></a>
<a name="line-524"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_state"</span>
<a name="line-525"></a>  <span class='hs-varid'>gtk_icon_source_get_state</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-526"></a>
<a name="line-527"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_new"</span>
<a name="line-528"></a>  <span class='hs-varid'>gtk_icon_source_new</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-529"></a>
<a name="line-530"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_direction_wildcarded"</span>
<a name="line-531"></a>  <span class='hs-varid'>gtk_icon_source_set_direction_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-532"></a>
<a name="line-533"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_direction"</span>
<a name="line-534"></a>  <span class='hs-varid'>gtk_icon_source_set_direction</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-535"></a>
<a name="line-536"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_filename"</span>
<a name="line-537"></a>  <span class='hs-varid'>gtk_icon_source_set_filename</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-538"></a>
<a name="line-539"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_get_pixbuf"</span>
<a name="line-540"></a>  <span class='hs-varid'>gtk_icon_source_get_pixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-541"></a>
<a name="line-542"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_icon_source_set_pixbuf"</span>
<a name="line-543"></a>  <span class='hs-varid'>gtk_icon_source_set_pixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-544"></a>
<a name="line-545"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_size_wildcarded"</span>
<a name="line-546"></a>  <span class='hs-varid'>gtk_icon_source_set_size_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-547"></a>
<a name="line-548"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_size"</span>
<a name="line-549"></a>  <span class='hs-varid'>gtk_icon_source_set_size</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-550"></a>
<a name="line-551"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_state_wildcarded"</span>
<a name="line-552"></a>  <span class='hs-varid'>gtk_icon_source_set_state_wildcarded</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-553"></a>
<a name="line-554"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_icon_source_set_state"</span>
<a name="line-555"></a>  <span class='hs-varid'>gtk_icon_source_set_state</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>IconSource</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
</pre></body>
</html>