packages feed

lhae-0.0.3: src/View/Dialog/Simple.hs

module View.Dialog.Simple (input,warning,confirm)
    where

import qualified Graphics.UI.WX as WX
import View (View,frame)
import View.Dialog.Complex (Layout (..),Widget (..),Modifier (..)
                           ,showSimpleDialog,okButton,cancelButton)
import I18n (__)

input :: String -> String -> View -> IO (Maybe String)
input caption =
    let dialog = Modifier Margin $ Column 
                   [ Modifiers [Boxed caption,HFill] 
                                   $ FocusOn $ TextEntry id (\_ -> id)
                   , Modifier Center 
                       $ Row [okButton (), cancelButton]]
    in
      showSimpleDialog caption dialog

warning :: String -> View -> IO ()
warning text view = WX.errorDialog (frame view) (__ "Error") text

confirm :: String -> String -> View -> IO Bool
confirm caption s view = WX.confirmDialog (frame view) caption s True