Sophie

Sophie

distrib > Fedora > 18 > i386 > by-pkgid > 16551e78563a5b49ff9624ee1c8b8101 > files > 817

ghc-xmonad-contrib-devel-0.11-1.1.fc18.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.Layout.Groups</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-Layout-Groups.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/XMonad-Layout-Groups.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.11: 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>orphaned</td></tr><tr><th>Safe Haskell</th><td>Safe-Infered</td></tr></table><p class="caption">XMonad.Layout.Groups</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Usage
</a></li><li><a href="#g:2">Messages
</a><ul><li><a href="#g:3">Useful <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>s
</a></li></ul></li><li><a href="#g:4">Types
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Two-level layout with windows split in individual layout groups,
 themselves managed by a user-provided layout.
</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:group">group</a> ::  l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; l2 (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>) -&gt; <a href="XMonad-Layout-Groups.html#t:Groups">Groups</a> l l2 <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:GroupsMessage">GroupsMessage</a> <ul class="subs"><li>= <a href="#v:ToEnclosing">ToEnclosing</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a>  </li><li>| <a href="#v:ToGroup">ToGroup</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Int.html#t:Int">Int</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a>  </li><li>| <a href="#v:ToFocused">ToFocused</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a>  </li><li>| <a href="#v:ToAll">ToAll</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a>  </li><li>| <a href="#v:Refocus">Refocus</a>  </li><li>| <a href="#v:Modify">Modify</a> <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a>  </li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:ModifySpec">ModifySpec</a> = <span class="keyword">forall</span> l.  <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>) -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>)</li><li class="src short"><a href="#v:swapUp">swapUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:swapDown">swapDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:swapMaster">swapMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusUp">focusUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusDown">focusDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusMaster">focusMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:swapGroupUp">swapGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:swapGroupDown">swapGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:swapGroupMaster">swapGroupMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusGroupUp">focusGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusGroupDown">focusGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:focusGroupMaster">focusGroupMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:moveToGroupUp">moveToGroupUp</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:moveToGroupDown">moveToGroupDown</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:moveToNewGroupUp">moveToNewGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:moveToNewGroupDown">moveToNewGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><a href="#v:splitGroup">splitGroup</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></li><li class="src short"><span class="keyword">data</span>  <a href="#t:Groups">Groups</a> l l2 a</li><li class="src short"><span class="keyword">data</span>  <a href="#t:Group">Group</a> l a = <a href="#v:G">G</a> {<ul class="subs"><li><a href="#v:gLayout">gLayout</a> :: <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a</li><li><a href="#v:gZipper">gZipper</a> :: <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a</li></ul>}</li><li class="src short"><a href="#v:onZipper">onZipper</a> ::  (<a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a) -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a</li><li class="src short"><a href="#v:onLayout">onLayout</a> ::  (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a) -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a</li><li class="src short"><span class="keyword">data</span>  <a href="#t:WithID">WithID</a> l a</li><li class="src short"><a href="#v:sameID">sameID</a> ::  <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a></li></ul></div><div id="interface"><h1 id="g:1">Usage
</h1><div class="doc"><p>This module provides a layout combinator that allows you
 to manage your windows in independent groups. You can provide
 both the layout with which to arrange the windows inside each
 group, and the layout with which the groups themselves will
 be arranged on the screen.
</p><p>The <a href="XMonad-Layout-Groups-Examples.html">XMonad.Layout.Groups.Examples</a> and <a href="XMonad-Layout-Groups-Wmii.html">XMonad.Layout.Groups.Wmii</a>
 modules contain examples of layouts that can be defined with this
 combinator. They're also the recommended starting point
 if you are a beginner and looking for something you can use easily.
</p><p>One thing to note is that <code><a href="XMonad-Layout-Groups.html#t:Groups">Groups</a></code>-based layout have their own
 notion of the order of windows, which is completely separate
 from XMonad's. For this reason, operations like <code><a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-StackSet.html#t:SwapUp">SwapUp</a></code>
 will have no visible effect, and those like <code><a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-StackSet.html#v:focusUp">focusUp</a></code>
 will focus the windows in an unpredictable order. For a better way of
 rearranging windows and moving focus in such a layout, see the
 example <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>s (to be passed to the <code><a href="XMonad-Layout-Groups.html#v:Modify">Modify</a></code> message) provided
 by this module.
</p><p>If you use both <code><a href="XMonad-Layout-Groups.html#t:Groups">Groups</a></code>-based and other layouts, The <a href="XMonad-Layout-Groups-Helpers.html">XMonad.Layout.Groups.Helpers</a>
 module provides actions that can work correctly with both, defined using
 functions from <a href="XMonad-Actions-MessageFeedback.html">XMonad.Actions.MessageFeedback</a>.
</p></div><div class="top"><p class="src"><a name="v:group" class="def">group</a> ::  l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; l2 (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>) -&gt; <a href="XMonad-Layout-Groups.html#t:Groups">Groups</a> l l2 <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a><a href="src/XMonad-Layout-Groups.html#group" class="link">Source</a></p><div class="doc"><p>Create a <code><a href="XMonad-Layout-Groups.html#t:Groups">Groups</a></code> layout.
</p><p>Note that the second parameter (the layout for arranging the
 groups) is not used on <code>Windows</code>, but on <code><a href="XMonad-Layout-Groups.html#t:Group">Group</a></code>s. For this
 reason, you can only use layouts that don't specifically
 need to manage <code><a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a></code>s. This is obvious, when you think
 about it.
</p></div></div><h1 id="g:2">Messages
</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:GroupsMessage" class="def">GroupsMessage</a>  <a href="src/XMonad-Layout-Groups.html#GroupsMessage" class="link">Source</a></p><div class="doc"><p>Messages accepted by <code><a href="XMonad-Layout-Groups.html#t:Groups">Groups</a></code>-based layouts.
 All other messages are forwarded to the layout of the currently
 focused subgroup (as if they had been wrapped in <code><a href="XMonad-Layout-Groups.html#v:ToFocused">ToFocused</a></code>).
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:ToEnclosing" class="def">ToEnclosing</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a></td><td class="doc"><p>Send a message to the enclosing layout
 (the one that places the groups themselves)
</p></td></tr><tr><td class="src"><a name="v:ToGroup" class="def">ToGroup</a> <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Int.html#t:Int">Int</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a></td><td class="doc"><p>Send a message to the layout for nth group
 (starting at 0)
</p></td></tr><tr><td class="src"><a name="v:ToFocused" class="def">ToFocused</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a></td><td class="doc"><p>Send a message to the layout for the focused
 group
</p></td></tr><tr><td class="src"><a name="v:ToAll" class="def">ToAll</a> <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:SomeMessage">SomeMessage</a></td><td class="doc"><p>Send a message to all the sub-layouts
</p></td></tr><tr><td class="src"><a name="v:Refocus" class="def">Refocus</a></td><td class="doc"><p>Refocus the window which should be focused according
 to the layout.
</p></td></tr><tr><td class="src"><a name="v:Modify" class="def">Modify</a> <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></td><td class="doc"><p>Modify the ordering/grouping/focusing
 of windows according to a <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>
</p></td></tr></table></div><div class="subs instances"><p id="control.i:GroupsMessage" class="caption collapser" onclick="toggleSection('i:GroupsMessage')">Instances</p><div id="section.i:GroupsMessage" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> <a href="XMonad-Layout-Groups.html#t:GroupsMessage">GroupsMessage</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Typeable-Internal.html#t:Typeable">Typeable</a> <a href="XMonad-Layout-Groups.html#t:GroupsMessage">GroupsMessage</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:Message">Message</a> <a href="XMonad-Layout-Groups.html#t:GroupsMessage">GroupsMessage</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a name="t:ModifySpec" class="def">ModifySpec</a> = <span class="keyword">forall</span> l.  <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a> -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>) -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>)<a href="src/XMonad-Layout-Groups.html#ModifySpec" class="link">Source</a></p><div class="doc"><p>Type of functions describing modifications to a <code><a href="XMonad-Layout-Groups.html#t:Groups">Groups</a></code> layout. They
 are transformations on <code><a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a></code>s of groups.
</p><p>Things you shouldn't do:
</p><ul><li> Forge new windows (they will be ignored)
</li><li> Duplicate windows (whatever happens is your problem)
</li><li> Remove windows (they will be added again)
</li><li> Duplicate layouts (only one will be kept, the rest will
   get the base layout)
</li></ul><p>Note that <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code> is a rank-2 type (indicating that <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>s must
 be polymorphic in the layout type), so if you define functions taking
 <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>s as arguments, or returning them,  you'll need to write a type
 signature and add <code>{-<a name=" LANGUAGE Rank2Types "></a>-}</code> at the beginning
</p></div></div><h2 id="g:3">Useful <code><a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a></code>s
</h2><div class="top"><p class="src"><a name="v:swapUp" class="def">swapUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapUp" class="link">Source</a></p><div class="doc"><p>Swap the focused window with the previous one.
</p></div></div><div class="top"><p class="src"><a name="v:swapDown" class="def">swapDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapDown" class="link">Source</a></p><div class="doc"><p>Swap the focused window with the next one.
</p></div></div><div class="top"><p class="src"><a name="v:swapMaster" class="def">swapMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapMaster" class="link">Source</a></p><div class="doc"><p>Swap the focused window with the (group's) master
 window.
</p></div></div><div class="top"><p class="src"><a name="v:focusUp" class="def">focusUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusUp" class="link">Source</a></p><div class="doc"><p>Move focus to the previous window in the group.
</p></div></div><div class="top"><p class="src"><a name="v:focusDown" class="def">focusDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusDown" class="link">Source</a></p><div class="doc"><p>Move focus to the next window in the group.
</p></div></div><div class="top"><p class="src"><a name="v:focusMaster" class="def">focusMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusMaster" class="link">Source</a></p><div class="doc"><p>Move focus to the group's master window.
</p></div></div><div class="top"><p class="src"><a name="v:swapGroupUp" class="def">swapGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapGroupUp" class="link">Source</a></p><div class="doc"><p>Swap the focused group with the previous one.
</p></div></div><div class="top"><p class="src"><a name="v:swapGroupDown" class="def">swapGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapGroupDown" class="link">Source</a></p><div class="doc"><p>Swap the focused group with the next one.
</p></div></div><div class="top"><p class="src"><a name="v:swapGroupMaster" class="def">swapGroupMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#swapGroupMaster" class="link">Source</a></p><div class="doc"><p>Swap the focused group with the master group.
</p></div></div><div class="top"><p class="src"><a name="v:focusGroupUp" class="def">focusGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusGroupUp" class="link">Source</a></p><div class="doc"><p>Move focus to the previous group.
</p></div></div><div class="top"><p class="src"><a name="v:focusGroupDown" class="def">focusGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusGroupDown" class="link">Source</a></p><div class="doc"><p>Move focus to the next group.
</p></div></div><div class="top"><p class="src"><a name="v:focusGroupMaster" class="def">focusGroupMaster</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#focusGroupMaster" class="link">Source</a></p><div class="doc"><p>Move focus to the master group.
</p></div></div><div class="top"><p class="src"><a name="v:moveToGroupUp" class="def">moveToGroupUp</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#moveToGroupUp" class="link">Source</a></p><div class="doc"><p>Move the focused window to the previous group.
 If <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#v:True">True</a></code>, when in the first group, wrap around to the last one.
 If <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#v:False">False</a></code>, create a new group before it.
</p></div></div><div class="top"><p class="src"><a name="v:moveToGroupDown" class="def">moveToGroupDown</a> :: <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a> -&gt; <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#moveToGroupDown" class="link">Source</a></p><div class="doc"><p>Move the focused window to the next group.
 If <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#v:True">True</a></code>, when in the last group, wrap around to the first one.
 If <code><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#v:False">False</a></code>, create a new group after it.
</p></div></div><div class="top"><p class="src"><a name="v:moveToNewGroupUp" class="def">moveToNewGroupUp</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#moveToNewGroupUp" class="link">Source</a></p><div class="doc"><p>Move the focused window to a new group before the current one.
</p></div></div><div class="top"><p class="src"><a name="v:moveToNewGroupDown" class="def">moveToNewGroupDown</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#moveToNewGroupDown" class="link">Source</a></p><div class="doc"><p>Move the focused window to a new group after the current one.
</p></div></div><div class="top"><p class="src"><a name="v:splitGroup" class="def">splitGroup</a> :: <a href="XMonad-Layout-Groups.html#t:ModifySpec">ModifySpec</a><a href="src/XMonad-Layout-Groups.html#splitGroup" class="link">Source</a></p><div class="doc"><p>Split the focused group into two at the position of the focused window (below it,
 unless it's the last window - in that case, above it).
</p></div></div><h1 id="g:4">Types
</h1><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Groups" class="def">Groups</a> l l2 a <a href="src/XMonad-Layout-Groups.html#Groups" class="link">Source</a></p><div class="doc"><p>The type of our layouts.
</p></div><div class="subs instances"><p id="control.i:Groups" class="caption collapser" onclick="toggleSection('i:Groups')">Instances</p><div id="section.i:Groups" class="show"><table><tr><td class="src">(<a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:LayoutClass">LayoutClass</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>, <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:LayoutClass">LayoutClass</a> l2 (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a>)) =&gt; <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:LayoutClass">LayoutClass</a> (<a href="XMonad-Layout-Groups.html#t:Groups">Groups</a> l l2) <a href="/usr/share/doc/ghc/html/libraries/X11-1.6.0/Graphics-X11-Types.html#t:Window">Window</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> a, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (l a), <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (l2 (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a))) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (<a href="XMonad-Layout-Groups.html#t:Groups">Groups</a> l l2 a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> a, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (l a), <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (l2 (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a))) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (<a href="XMonad-Layout-Groups.html#t:Groups">Groups</a> l l2 a)</td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:Group" class="def">Group</a> l a <a href="src/XMonad-Layout-Groups.html#Group" class="link">Source</a></p><div class="doc"><p>A group of windows and its layout algorithm.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:G" class="def">G</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:gLayout" class="def">gLayout</a> :: <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a</dt><dd class="doc empty">&nbsp;</dd><dt class="src"><a name="v:gZipper" class="def">gZipper</a> :: <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a</dt><dd class="doc empty">&nbsp;</dd></dl><div class="clear"></div></div></td></tr></table></div><div class="subs instances"><p id="control.i:Group" class="caption collapser" onclick="toggleSection('i:Group')">Instances</p><div id="section.i:Group" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> a =&gt; <a href="XMonad-Layout-ZoomRow.html#t:EQF">EQF</a> <a href="XMonad-Layout-Groups-Examples.html#t:GroupEQ">GroupEQ</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> a =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> a, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (l a)) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> a, <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (l a)) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (<a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a)</td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:onZipper" class="def">onZipper</a> ::  (<a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a -&gt; <a href="XMonad-Util-Stack.html#t:Zipper">Zipper</a> a) -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a<a href="src/XMonad-Layout-Groups.html#onZipper" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:onLayout" class="def">onLayout</a> ::  (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a) -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:Group">Group</a> l a<a href="src/XMonad-Layout-Groups.html#onLayout" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">data</span>  <a name="t:WithID" class="def">WithID</a> l a <a href="src/XMonad-Layout-Groups.html#WithID" class="link">Source</a></p><div class="doc"><p>Split an infinite list into two. I ended up not
 needing this, but let's keep it just in case.
 split :: [a] -&gt; ([a], [a])
 split as = snd $ foldr step (True, ([], [])) as
     where step a (True, (as1, as2)) = (False, (a:as1, as2))
           step a (False, (as1, as2)) = (True, (as1, a:as2))
</p><p>Add a unique identity to a layout so we can
 follow it around.
</p></div><div class="subs instances"><p id="control.i:WithID" class="caption collapser" onclick="toggleSection('i:WithID')">Instances</p><div id="section.i:WithID" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:LayoutClass">LayoutClass</a> l a =&gt; <a href="/usr/share/doc/ghc/html/libraries/xmonad-0.11/XMonad-Core.html#t:LayoutClass">LayoutClass</a> (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l) a</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Eq.html#t:Eq">Eq</a> (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (l a) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Read.html#t:Read">Read</a> (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (l a) =&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Text-Show.html#t:Show">Show</a> (<a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a)</td><td class="doc empty">&nbsp;</td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:sameID" class="def">sameID</a> ::  <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="XMonad-Layout-Groups.html#t:WithID">WithID</a> l a -&gt; <a href="/usr/share/doc/ghc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a><a href="src/XMonad-Layout-Groups.html#sameID" class="link">Source</a></p><div class="doc"><p>Compare the ids of two <code><a href="XMonad-Layout-Groups.html#t:WithID">WithID</a></code> values
</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.10.0</p></div></body></html>