summaryrefslogtreecommitdiffstats
path: root/W.hs
diff options
context:
space:
mode:
Diffstat (limited to 'W.hs')
-rw-r--r--W.hs15
1 files changed, 8 insertions, 7 deletions
diff --git a/W.hs b/W.hs
index 016baaa..5bacfea 100644
--- a/W.hs
+++ b/W.hs
@@ -16,10 +16,9 @@
module W where
-import Data.Sequence
-import Control.Monad.State
-import System.IO (hFlush, hPutStrLn, stderr)
+import System.IO
import Graphics.X11.Xlib
+import Control.Monad.State
--
-- | WState, the window manager state.
@@ -29,9 +28,11 @@ data WState = WState
{ display :: Display
, screenWidth :: !Int
, screenHeight :: !Int
- , windows :: Seq Window
+ , windows :: Windows
}
+type Windows = [Window]
+
-- | The W monad, a StateT transformer over IO encapuslating the window
-- manager state
--
@@ -85,7 +86,7 @@ getDisplay :: W Display
getDisplay = W (gets display)
-- | Return the current windows
-getWindows :: W (Seq Window)
+getWindows :: W Windows
getWindows = W (gets windows)
-- | Return the screen width
@@ -97,9 +98,9 @@ getScreenHeight :: W Int
getScreenHeight = W (gets screenHeight)
-- | Set the current window list
-setWindows :: Seq Window -> W ()
+setWindows ::Windows -> W ()
setWindows x = W (modify (\s -> s {windows = x}))
-- | Modify the current window list
-modifyWindows :: (Seq Window -> Seq Window) -> W ()
+modifyWindows :: (Windows -> Windows) -> W ()
modifyWindows f = W (modify (\s -> s {windows = f (windows s)}))