mirror of
https://github.com/xmonad/xmonad.git
synced 2025-07-25 01:01:52 -07:00
add Show instance to Layout
This commit is contained in:
@@ -351,14 +351,14 @@ instance Message IncMasterN
|
|||||||
|
|
||||||
-- simple fullscreen mode, just render all windows fullscreen.
|
-- simple fullscreen mode, just render all windows fullscreen.
|
||||||
-- a plea for tuple sections: map . (,sc)
|
-- a plea for tuple sections: map . (,sc)
|
||||||
data Full a = Full
|
data Full a = Full deriving Show
|
||||||
instance Layout Full a where
|
instance Layout Full a where
|
||||||
doLayout Full sc (W.Stack f _ _) = return ([(f, sc)], Nothing)
|
doLayout Full sc (W.Stack f _ _) = return ([(f, sc)], Nothing)
|
||||||
modifyLayout Full _ = return Nothing -- no changes
|
modifyLayout Full _ = return Nothing -- no changes
|
||||||
--
|
--
|
||||||
-- The tiling mode of xmonad, and its operations.
|
-- The tiling mode of xmonad, and its operations.
|
||||||
--
|
--
|
||||||
data Tall a = Tall Int Rational Rational
|
data Tall a = Tall Int Rational Rational deriving Show
|
||||||
instance Layout Tall a where
|
instance Layout Tall a where
|
||||||
doLayout (Tall nmaster _ frac) r =
|
doLayout (Tall nmaster _ frac) r =
|
||||||
return . (\x->(x,Nothing)) .
|
return . (\x->(x,Nothing)) .
|
||||||
@@ -376,6 +376,8 @@ mirrorRect (Rectangle rx ry rw rh) = (Rectangle ry rx rh rw)
|
|||||||
|
|
||||||
-- | Mirror a layout, compute its 90 degree rotated form.
|
-- | Mirror a layout, compute its 90 degree rotated form.
|
||||||
data Mirror a = forall l. Layout l a => Mirror (l a)
|
data Mirror a = forall l. Layout l a => Mirror (l a)
|
||||||
|
instance Show (Mirror a) where
|
||||||
|
show (Mirror l) = "Mirror "++show l
|
||||||
instance Layout Mirror a where
|
instance Layout Mirror a where
|
||||||
doLayout (Mirror l) r s = do (wrs, ml') <- doLayout l (mirrorRect r) s
|
doLayout (Mirror l) r s = do (wrs, ml') <- doLayout l (mirrorRect r) s
|
||||||
return (map (second mirrorRect) wrs, Mirror `fmap` ml')
|
return (map (second mirrorRect) wrs, Mirror `fmap` ml')
|
||||||
|
@@ -132,8 +132,10 @@ atom_WM_STATE = getAtom "WM_STATE"
|
|||||||
-- returns an updated 'Layout' and the screen is refreshed.
|
-- returns an updated 'Layout' and the screen is refreshed.
|
||||||
--
|
--
|
||||||
data SomeLayout a = forall l. Layout l a => SomeLayout (l a)
|
data SomeLayout a = forall l. Layout l a => SomeLayout (l a)
|
||||||
|
instance Show (SomeLayout a) where
|
||||||
|
show (SomeLayout l) = show l
|
||||||
|
|
||||||
class Layout layout a where
|
class Show (layout a) => Layout layout a where
|
||||||
doLayout :: layout a -> Rectangle -> Stack a -> X ([(a, Rectangle)], Maybe (layout a))
|
doLayout :: layout a -> Rectangle -> Stack a -> X ([(a, Rectangle)], Maybe (layout a))
|
||||||
modifyLayout :: layout a -> SomeMessage -> X (Maybe (layout a))
|
modifyLayout :: layout a -> SomeMessage -> X (Maybe (layout a))
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user