From 2616c076e2b8617863a806ddfb16547bfd5015ea Mon Sep 17 00:00:00 2001 From: Don Stewart Date: Thu, 8 Mar 2007 13:26:13 +0100 Subject: refactoring. heads up: depends on withServer in X11-extras darcs-hash:20070308122613-9c5c1-9d1492a54b2186edcc3c6c5f178254a00a969a6c.gz --- WMonad.hs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'WMonad.hs') diff --git a/WMonad.hs b/WMonad.hs index 2851da2..e059066 100644 --- a/WMonad.hs +++ b/WMonad.hs @@ -67,6 +67,18 @@ trace msg = io $ do hPutStrLn stderr msg hFlush stderr +-- | Run a monad action with the current display settings +withDisplay :: (Display -> W ()) -> W () +withDisplay f = gets display >>= f + +-- | Run a monadic action with the display, screen width and height +withScreen :: ((Display,Int,Int) -> W ()) -> W () +withScreen f = do + d <- gets display + sw <- gets screenWidth + sh <- gets screenHeight + f (d,sw,sh) + -- | Modify the workspace list. modifyWorkspace :: (WorkSpace -> WorkSpace) -> W () modifyWorkspace f = do -- cgit v1.2.3