Sophie

Sophie

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

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.Actions.GridSelect</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-Actions-GridSelect.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/XMonad-Actions-GridSelect.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>Clemens Fruhwirth &lt;clemens@endorphin.org&gt;</td></tr></table><p class="caption">XMonad.Actions.GridSelect</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Usage
</a><ul><li><a href="#g:2">Customizing
</a><ul><li><a href="#g:3">Using a common GSConfig
</a></li><li><a href="#g:4">Custom keybindings
</a></li></ul></li></ul></li><li><a href="#g:5">Configuration
</a></li><li><a href="#g:6">Variations on <code><a href="XMonad-Actions-GridSelect.html#v:gridselect">gridselect</a></code>
</a></li><li><a href="#g:7">Colorizers
</a></li><li><a href="#g:8">Screenshots
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>GridSelect displays items(e.g. the opened windows) in a 2D grid and lets
 the user select from it with the cursor/hjkl keys or the mouse.
</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"><span class="keyword">data</span>  <a href="#t:GSConfig">GSConfig</a> a = <a href="#v:GSConfig">GSConfig</a> {<ul class="subs"><li><a href="#v:gs_cellheight">gs_cellheight</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></li><li><a href="#v:gs_cellwidth">gs_cellwidth</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></li><li><a href="#v:gs_cellpadding">gs_cellpadding</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></li><li><a href="#v:gs_colorizer">gs_colorizer</a> :: a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</li><li><a href="#v:gs_font">gs_font</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></li><li><a href="#v:gs_navigate">gs_navigate</a> :: <a href="XMonad-Actions-GridSelect.html#t:NavigateMap">NavigateMap</a></li><li><a href="#v:gs_originFractX">gs_originFractX</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Double">Double</a></li><li><a href="#v:gs_originFractY">gs_originFractY</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Double">Double</a></li></ul>}</li><li class="src short"><a href="#v:defaultGSConfig">defaultGSConfig</a> :: <a href="XMonad-Actions-GridSelect.html#t:HasColorizer">HasColorizer</a> a =&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a</li><li class="src short"><span class="keyword">type</span> <a href="#t:NavigateMap">NavigateMap</a> = <a href="/usr/share/doc/ghc/html/libraries/containers-0.4.0.0/Data-Map.html#t:Map">Map</a> (<a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:KeyMask">KeyMask</a>, <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:KeySym">KeySym</a>) (<a href="XMonad-Actions-GridSelect.html#t:TwoDPosition">TwoDPosition</a> -&gt; <a href="XMonad-Actions-GridSelect.html#t:TwoDPosition">TwoDPosition</a>)</li><li class="src short"><span class="keyword">type</span> <a href="#t:TwoDPosition">TwoDPosition</a> = (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a>)</li><li class="src short"><a href="#v:buildDefaultGSConfig">buildDefaultGSConfig</a> ::  (a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)) -&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a</li><li class="src short"><a href="#v:gridselect">gridselect</a> ::  <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a -&gt; [(<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, a)] -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> a)</li><li class="src short"><a href="#v:gridselectWindow">gridselectWindow</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a>)</li><li class="src short"><a href="#v:withSelectedWindow">withSelectedWindow</a> :: (<a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>) -&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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:bringSelected">bringSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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:goToSelected">goToSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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:spawnSelected">spawnSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; [<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>] -&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:runSelectedAction">runSelectedAction</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> (X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>) -&gt; [(<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>)] -&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"><span class="keyword">class</span>  <a href="#t:HasColorizer">HasColorizer</a> a  <span class="keyword">where</span><ul class="subs"><li><a href="#v:defaultColorizer">defaultColorizer</a> :: a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</li></ul></li><li class="src short"><a href="#v:fromClassName">fromClassName</a> :: <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</li><li class="src short"><a href="#v:stringColorizer">stringColorizer</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</li><li class="src short"><a href="#v:colorRangeFromClassName">colorRangeFromClassName</a> :: (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>) -&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>) -&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>) -&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>) -&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>) -&gt; <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</li></ul></div><div id="interface"><h1 id="g:1">Usage
</h1><div class="doc"><p>You can use this module with the following in your <code>~/.xmonad/xmonad.hs</code>:
</p><pre>    import XMonad.Actions.GridSelect
</pre><p>Then add a keybinding, e.g.
</p><pre>    , ((modm, xK_g), goToSelected defaultGSConfig)
</pre><p>This module also supports displaying arbitrary information in a grid and letting
 the user select from it. E.g. to spawn an application from a given list, you
 can use the following:
</p><pre>   , ((modm, xK_s), spawnSelected defaultGSConfig [&quot;xterm&quot;,&quot;gmplayer&quot;,&quot;gvim&quot;])
</pre></div><h2 id="g:2">Customizing
</h2><h3 id="g:3">Using a common GSConfig
</h3><div class="doc"><p>It is possible to bind a <code>gsconfig</code> at top-level in your configuration. Like so:
</p><pre> -- the top of your config
 {-# LANGUAGE NoMonomorphismRestriction #-}
 import XMonad
 ...
 gsconfig1 = defaultGSConfig { gs_cellheight = 30, gs_cellWidth = 100 }
</pre><p>An example where <code><a href="XMonad-Actions-GridSelect.html#v:buildDefaultGSConfig">buildDefaultGSConfig</a></code> is used instead of <code><a href="XMonad-Actions-GridSelect.html#v:defaultGSConfig">defaultGSConfig</a></code>
 in order to specify a custom colorizer is <code>gsconfig2</code> (found in
 <a href="XMonad-Actions-GridSelect.html#Colorizers">XMonad.Actions.GridSelect</a>):
</p><pre> gsconfig2 colorizer = (buildDefaultGSConfig colorizer) { gs_cellheight = 30, gs_cellWidth = 100 }
</pre><pre> -- | A green monochrome colorizer based on window class
 greenColorizer = colorRangeFromClassName
                      black            -- lowest inactive bg
                      (0x70,0xFF,0x70) -- highest inactive bg
                      black            -- active bg
                      white            -- inactive fg
                      white            -- active fg
   where black = minBound
         white = maxBound
</pre><p>Then you can bind to:
</p><pre>     ,((modm, xK_g), goToSelected  $ gsconfig2 myWinColorizer)
     ,((modm, xK_p), spawnSelected $ spawnSelected defaultColorizer)
</pre></div><h3 id="g:4">Custom keybindings
</h3><div class="doc"><p>Adding more keybindings for gridselect to listen to is similar:
</p><p>At the top of your config:
</p><pre> {-# LANGAUGE NoMonomorphismRestriction #-}
 import XMonad
 import qualified Data.Map as M
</pre><p>Then define <code>gsconfig3</code> which may be used in exactly the same manner as <code>gsconfig1</code>:
</p><pre> gsconfig3 = defaultGSConfig
    { gs_cellheight = 30
    , gs_cellwidth = 100
    , gs_navigate = M.unions
            [reset
            ,nethackKeys
            ,gs_navigate                               -- get the default navigation bindings
                $ defaultGSConfig `asTypeOf` gsconfig3 -- needed to fix an ambiguous type variable
            ]
    }
   where addPair (a,b) (x,y) = (a+x,b+y)
         nethackKeys = M.map addPair $ M.fromList
                               [((0,xK_y),(-1,-1))
                               ,((0,xK_i),(1,-1))
                               ,((0,xK_n),(-1,1))
                               ,((0,xK_m),(1,1))
                               ]
         -- jump back to the center with the spacebar, regardless of the current position.
         reset = M.singleton (0,xK_space) (const (0,0))
</pre></div><h1 id="g:5">Configuration
</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:GSConfig" class="def">GSConfig</a> a <a href="src/XMonad-Actions-GridSelect.html#GSConfig" class="link">Source</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:GSConfig" class="def">GSConfig</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><dl><dt class="src"><a name="v:gs_cellheight" class="def">gs_cellheight</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_cellwidth" class="def">gs_cellwidth</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_cellpadding" class="def">gs_cellpadding</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_colorizer" class="def">gs_colorizer</a> :: a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_font" class="def">gs_font</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_navigate" class="def">gs_navigate</a> :: <a href="XMonad-Actions-GridSelect.html#t:NavigateMap">NavigateMap</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_originFractX" class="def">gs_originFractX</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Double">Double</a></dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gs_originFractY" class="def">gs_originFractY</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Double">Double</a></dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div></div><div class="top"><p class="src"><a name="v:defaultGSConfig" class="def">defaultGSConfig</a> :: <a href="XMonad-Actions-GridSelect.html#t:HasColorizer">HasColorizer</a> a =&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a<a href="src/XMonad-Actions-GridSelect.html#defaultGSConfig" class="link">Source</a></p><div class="doc"><p>A basic configuration for <code><a href="XMonad-Actions-GridSelect.html#v:gridselect">gridselect</a></code>, with the colorizer chosen based on the type.
</p><p>If you want to replace the <code><a href="XMonad-Actions-GridSelect.html#v:gs_colorizer">gs_colorizer</a></code> field, use <code><a href="XMonad-Actions-GridSelect.html#v:buildDefaultGSConfig">buildDefaultGSConfig</a></code>
 instead, to avoid ambiguous type variables.
</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:NavigateMap" class="def">NavigateMap</a> = <a href="/usr/share/doc/ghc/html/libraries/containers-0.4.0.0/Data-Map.html#t:Map">Map</a> (<a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:KeyMask">KeyMask</a>, <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:KeySym">KeySym</a>) (<a href="XMonad-Actions-GridSelect.html#t:TwoDPosition">TwoDPosition</a> -&gt; <a href="XMonad-Actions-GridSelect.html#t:TwoDPosition">TwoDPosition</a>)<a href="src/XMonad-Actions-GridSelect.html#NavigateMap" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:TwoDPosition" class="def">TwoDPosition</a> = (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Prelude.html#t:Integer">Integer</a>)<a href="src/XMonad-Actions-GridSelect.html#TwoDPosition" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:buildDefaultGSConfig" class="def">buildDefaultGSConfig</a> ::  (a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)) -&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a<a href="src/XMonad-Actions-GridSelect.html#buildDefaultGSConfig" class="link">Source</a></p><div class="doc"><p>Builds a default gs config from a colorizer function.
</p></div></div><h1 id="g:6">Variations on <code><a href="XMonad-Actions-GridSelect.html#v:gridselect">gridselect</a></code>
</h1><div class="top"><p class="src"><a name="v:gridselect" class="def">gridselect</a> ::  <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> a -&gt; [(<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, a)] -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> a)<a href="src/XMonad-Actions-GridSelect.html#gridselect" class="link">Source</a></p><div class="doc"><p>Brings up a 2D grid of elements in the center of the screen, and one can
 select an element with cursors keys. The selected element is returned.
</p></div></div><div class="top"><p class="src"><a name="v:gridselectWindow" class="def">gridselectWindow</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Maybe.html#t:Maybe">Maybe</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a>)<a href="src/XMonad-Actions-GridSelect.html#gridselectWindow" class="link">Source</a></p><div class="doc"><p>Like <code>gridSelect</code> but with the current windows and their titles as elements
</p></div></div><div class="top"><p class="src"><a name="v:withSelectedWindow" class="def">withSelectedWindow</a> :: (<a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>) -&gt; <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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-Actions-GridSelect.html#withSelectedWindow" class="link">Source</a></p><div class="doc"><p>Brings up a 2D grid of windows in the center of the screen, and one can
 select a window with cursors keys. The selected window is then passed to
 a callback function.
</p></div></div><div class="top"><p class="src"><a name="v:bringSelected" class="def">bringSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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-Actions-GridSelect.html#bringSelected" class="link">Source</a></p><div class="doc"><p>Brings selected window to the current workspace.
</p></div></div><div class="top"><p class="src"><a name="v:goToSelected" class="def">goToSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&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-Actions-GridSelect.html#goToSelected" class="link">Source</a></p><div class="doc"><p>Switches to selected window's workspace and focuses that window.
</p></div></div><div class="top"><p class="src"><a name="v:spawnSelected" class="def">spawnSelected</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; [<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>] -&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-Actions-GridSelect.html#spawnSelected" class="link">Source</a></p><div class="doc"><p>Select an application to spawn from a given list
</p></div></div><div class="top"><p class="src"><a name="v:runSelectedAction" class="def">runSelectedAction</a> :: <a href="XMonad-Actions-GridSelect.html#t:GSConfig">GSConfig</a> (X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>) -&gt; [(<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, X <a href="/usr/share/doc/ghc/html/libraries/ghc-prim-0.2.0.0/GHC-Unit.html#t:-40--41-">()</a>)] -&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-Actions-GridSelect.html#runSelectedAction" class="link">Source</a></p><div class="doc"><p>Select an action and run it in the X monad
</p></div></div><h1 id="g:7">Colorizers
</h1><div class="top"><p class="src"><span class="keyword">class</span>  <a name="t:HasColorizer" class="def">HasColorizer</a> a  <span class="keyword">where</span><a href="src/XMonad-Actions-GridSelect.html#HasColorizer" class="link">Source</a></p><div class="doc"><p>That is <code><a href="XMonad-Actions-GridSelect.html#v:fromClassName">fromClassName</a></code> if you are selecting a <code><a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a></code>, or
 <code><a href="XMonad-Actions-GridSelect.html#v:defaultColorizer">defaultColorizer</a></code> if you are selecting a <code><a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></code>. The catch-all instance
 <code>HasColorizer a</code> uses the <code>focusedBorderColor</code> and <code>normalBorderColor</code>
 colors.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:defaultColorizer" class="def">defaultColorizer</a> :: a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)<a href="src/XMonad-Actions-GridSelect.html#defaultColorizer" class="link">Source</a></p></div><div class="subs instances"><p id="control.i:HasColorizer" class="caption collapser" onclick="toggleSection('i:HasColorizer')">Instances</p><div id="section.i:HasColorizer" class="show"><table><tr><td class="src"><a href="XMonad-Actions-GridSelect.html#t:HasColorizer">HasColorizer</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="XMonad-Actions-GridSelect.html#t:HasColorizer">HasColorizer</a> a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="XMonad-Actions-GridSelect.html#t:HasColorizer">HasColorizer</a> <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:fromClassName" class="def">fromClassName</a> :: <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)<a href="src/XMonad-Actions-GridSelect.html#fromClassName" class="link">Source</a></p><div class="doc"><p>Colorize a window depending on it's className.
</p></div></div><div class="top"><p class="src"><a name="v:stringColorizer" class="def">stringColorizer</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a> -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a> -&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)<a href="src/XMonad-Actions-GridSelect.html#stringColorizer" class="link">Source</a></p><div class="doc"><p>Default colorizer for Strings
</p></div></div><div class="top"><p class="src"><a name="v:colorRangeFromClassName" class="def">colorRangeFromClassName</a><a href="src/XMonad-Actions-GridSelect.html#colorRangeFromClassName" class="link">Source</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>)</td><td class="doc"><p>Beginning of the color range
</p></td></tr><tr><td class="src">-&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>)</td><td class="doc"><p>End of the color range
</p></td></tr><tr><td class="src">-&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>)</td><td class="doc"><p>Background of the active window
</p></td></tr><tr><td class="src">-&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>)</td><td class="doc"><p>Inactive text color
</p></td></tr><tr><td class="src">-&gt; (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Word.html#t:Word8">Word8</a>)</td><td class="doc"><p>Active text color
</p></td></tr><tr><td class="src">-&gt; <a href="/usr/share/doc/ghc/html/libraries/X11-1.5.0.0/Graphics-X11-Types.html#t:Window">Window</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Bool.html#t:Bool">Bool</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">-&gt; X (<a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>, <a href="/usr/share/doc/ghc/html/libraries/base-4.3.1.0/Data-Char.html#t:String">String</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="doc"><p>A colorizer that picks a color inside a range,
 and depending on the window's class.
</p></div></div><h1 id="g:8">Screenshots
</h1><div class="doc"><p>Selecting a workspace:
</p><p><img src="http://haskell.org/sitewiki/images/a/a9/Xmonad-gridselect-workspace.png" />
</p><p>Selecting a window by title:
</p><p><img src="http://haskell.org/sitewiki/images/3/35/Xmonad-gridselect-window-aavogt.png" />
</p></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>