module EndButtonsF where
import AllFudgets

endButtonsF :: F (Either Click Click) (Either Click Click)
endButtonsF =
    Bool
-> Bool
-> F (Either Click Click) (Either Click Click)
-> F (Either Click Click) (Either Click Click)
forall a b. Bool -> Bool -> F a b -> F a b
noStretchF Bool
False Bool
True (F (Either Click Click) (Either Click Click)
 -> F (Either Click Click) (Either Click Click))
-> F (Either Click Click) (Either Click Click)
-> F (Either Click Click) (Either Click Click)
forall a b. (a -> b) -> a -> b
$ Int
-> F (Either Click Click) (Either Click Click)
-> F (Either Click Click) (Either Click Click)
forall a b. Int -> F a b -> F a b
matrixF Int
2 (F Click Click
ok F Click Click
-> F Click Click -> F (Either Click Click) (Either Click Click)
forall a b c d. F a b -> F c d -> F (Either a c) (Either b d)
>+< F Click Click
cancel)
  where
    ok :: F Click Click
ok = [Char] -> F Click Click
forall lbl. Graphic lbl => lbl -> F Click Click
buttonF [Char]
"OK"
    cancel :: F Click Click
cancel = Customiser (ButtonF [Char]) -> [Char] -> F Click Click
forall lbl.
Graphic lbl =>
Customiser (ButtonF lbl) -> lbl -> F Click Click
buttonF' Customiser (ButtonF [Char])
pm [Char]
"Cancel"
      where
        pm :: Customiser (ButtonF [Char])
pm = [(ModState, [Char])] -> Customiser (ButtonF [Char])
forall xxx. HasKeys xxx => [(ModState, [Char])] -> Customiser xxx
setKeys [([],[Char]
"Escape")]


endButtonsF' :: F [Char] (Either Click Click)
endButtonsF' =
    Bool
-> Bool
-> F [Char] (Either Click Click)
-> F [Char] (Either Click Click)
forall a b. Bool -> Bool -> F a b -> F a b
noStretchF Bool
False Bool
True (F [Char] (Either Click Click) -> F [Char] (Either Click Click))
-> F [Char] (Either Click Click) -> F [Char] (Either Click Click)
forall a b. (a -> b) -> a -> b
$ Int
-> F (Either [Char] Click) (Either Click Click)
-> F (Either [Char] Click) (Either Click Click)
forall a b. Int -> F a b -> F a b
matrixF Int
2 (F [Char] Click
ok F [Char] Click
-> F Click Click -> F (Either [Char] Click) (Either Click Click)
forall a b c d. F a b -> F c d -> F (Either a c) (Either b d)
>+< F Click Click
cancel) F (Either [Char] Click) (Either Click Click)
-> ([Char] -> Either [Char] Click) -> F [Char] (Either Click Click)
forall c d e. F c d -> (e -> c) -> F e d
>=^< [Char] -> Either [Char] Click
forall a b. a -> Either a b
Left
  where
    ok :: F [Char] Click
ok = Customiser (ButtonF [Char])
-> [Char] -> PF (ButtonF [Char]) Click Click
forall lbl.
Graphic lbl =>
Customiser (ButtonF lbl) -> lbl -> PF (ButtonF lbl) Click Click
buttonF'' Customiser (ButtonF [Char])
forall a. Customiser a
standard [Char]
"OK" PF (ButtonF [Char]) Click Click
-> ([Char] -> Either (Customiser (ButtonF [Char])) Click)
-> F [Char] Click
forall c d e. F c d -> (e -> c) -> F e d
>=^< Customiser (ButtonF [Char])
-> Either (Customiser (ButtonF [Char])) Click
forall a b. a -> Either a b
Left (Customiser (ButtonF [Char])
 -> Either (Customiser (ButtonF [Char])) Click)
-> ([Char] -> Customiser (ButtonF [Char]))
-> [Char]
-> Either (Customiser (ButtonF [Char])) Click
forall b c a. (b -> c) -> (a -> b) -> a -> c
. [Char] -> Customiser (ButtonF [Char])
forall lbl. lbl -> Customiser (ButtonF lbl)
setLabel F [Char] Click -> SP [Char] [Char] -> F [Char] Click
forall c d e. F c d -> SP e c -> F e d
>=^^< SP [Char] [Char]
forall a. Eq a => SP a a
idempotSP
    cancel :: F Click Click
cancel = Customiser (ButtonF [Char]) -> [Char] -> F Click Click
forall lbl.
Graphic lbl =>
Customiser (ButtonF lbl) -> lbl -> F Click Click
buttonF' Customiser (ButtonF [Char])
pm [Char]
"Cancel"
      where
        pm :: Customiser (ButtonF [Char])
pm = [(ModState, [Char])] -> Customiser (ButtonF [Char])
forall xxx. HasKeys xxx => [(ModState, [Char])] -> Customiser xxx
setKeys [([],[Char]
"Escape")]