Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 420a649e6f65db30aa7451f64d08ff92 > files > 613

ghc-xmonad-contrib-devel-0.9.2-4.fc16.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>XMonad.Hooks.DynamicHooks</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_XMonad-Hooks-DynamicHooks.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/XMonad-Hooks-DynamicHooks.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">xmonad-contrib-0.9.2: Third party extensions for xmonad</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>unportable</td></tr><tr><th>Stability</th><td>unstable</td></tr><tr><th>Maintainer</th><td>Braden.Shepherdson@gmail.com</td></tr></table><p class="caption">XMonad.Hooks.DynamicHooks</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Usage
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>One-shot and permanent ManageHooks that can be updated at runtime.
</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:initDynamicHooks">initDynamicHooks</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks)</li><li class="src short"><a href="#v:dynamicMasterHook">dynamicMasterHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; ManageHook</li><li class="src short"><a href="#v:addDynamicHook">addDynamicHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; ManageHook -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li class="src short"><a href="#v:updateDynamicHook">updateDynamicHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; (ManageHook -&gt; ManageHook) -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li><li class="src short"><a href="#v:oneShotHook">oneShotHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; Query <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; ManageHook -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a></li></ul></div><div id="interface"><h1 id="g:1">Usage
</h1><div class="doc"><p>Provides two new kinds of <code>ManageHooks</code> that can be defined at runtime.
</p><ul><li> One-shot <code>ManageHooks</code> that are deleted after they execute.
</li><li> Permanent <code>ManageHooks</code> (unless you want to destroy them)
</li></ul><p>Note that you will lose all dynamically defined <code>ManageHook</code>s when you <code>mod+q</code>!
 If you want them to last, you should create them as normal in your <code>xmonad.hs</code>.
</p><p>First, you must execute <code><a href="XMonad-Hooks-DynamicHooks.html#v:initDynamicHooks">initDynamicHooks</a></code> from <code>main</code> in your <code>xmonad.hs</code>:
</p><pre> dynHooksRef &lt;- initDynamicHooks
</pre><p>and then pass this value to the other functions in this module.
</p><p>You also need to add the base <code>ManageHook</code>:
</p><pre> xmonad { manageHook = myManageHook &lt;+&gt; dynamicMasterHook dynHooksRef }
</pre><p>You must include this <code>dynHooksRef</code> value when using the functions in this
 module:
</p><pre> xmonad { keys = myKeys `Data.Map.union` Data.Map.fromList
                   [((modm, xK_i), oneShotHook dynHooksRef
                    &quot;FFlaunchHook&quot; (className =? &quot;firefox&quot;) (doShift &quot;3&quot;)
                    &gt;&gt; spawn &quot;firefox&quot;)
                   ,((modm, xK_u), addDynamicHook dynHooksRef
                     (className =? &quot;example&quot; --&gt; doFloat))
                   ,((modm, xK_y), updatePermanentHook dynHooksRef
                     (const idHook))) ]  -- resets the permanent hook.
</pre></div><div class="top"><p class="src"><a name="v:initDynamicHooks" class="def">initDynamicHooks</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/System-IO.html#t:IO">IO</a> (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks)<a href="src/XMonad-Hooks-DynamicHooks.html#initDynamicHooks" class="link">Source</a></p><div class="doc"><p>Creates the <code><a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a></code> that stores the dynamically created <code>ManageHook</code>s.
</p></div></div><div class="top"><p class="src"><a name="v:dynamicMasterHook" class="def">dynamicMasterHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; ManageHook<a href="src/XMonad-Hooks-DynamicHooks.html#dynamicMasterHook" class="link">Source</a></p><div class="doc"><p>Master <code>ManageHook</code> that must be in your <code>xmonad.hs</code> <code>ManageHook</code>.
</p></div></div><div class="top"><p class="src"><a name="v:addDynamicHook" class="def">addDynamicHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; ManageHook -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/XMonad-Hooks-DynamicHooks.html#addDynamicHook" class="link">Source</a></p><div class="doc"><p>Appends the given <code>ManageHook</code> to the permanent dynamic <code>ManageHook</code>.
</p></div></div><div class="top"><p class="src"><a name="v:updateDynamicHook" class="def">updateDynamicHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; (ManageHook -&gt; ManageHook) -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/XMonad-Hooks-DynamicHooks.html#updateDynamicHook" class="link">Source</a></p><div class="doc"><p>Modifies the permanent <code>ManageHook</code> with an arbitrary function.
</p></div></div><div class="top"><p class="src"><a name="v:oneShotHook" class="def">oneShotHook</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-IORef.html#t:IORef">IORef</a> DynamicHooks -&gt; Query <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; ManageHook -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a><a href="src/XMonad-Hooks-DynamicHooks.html#oneShotHook" class="link">Source</a></p><div class="doc"><p>Creates a one-shot <code>ManageHook</code>. Note that you have to specify the two
 parts of the <code>ManageHook</code> separately. Where you would usually write:
</p><pre> className =? &quot;example&quot; --&gt; doFloat
</pre><p>you must call <code><a href="XMonad-Hooks-DynamicHooks.html#v:oneShotHook">oneShotHook</a></code> as
</p><pre> oneShotHook dynHooksRef (className =? &quot;example) doFloat
</pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.9.2</p></div></body></html>