From eae4bfc94943f7c558dc997ab4923851f6138aa1 Mon Sep 17 00:00:00 2001 From: Rene Vergara Date: Mon, 17 Jun 2024 15:47:56 -0500 Subject: [PATCH] Parametrize input form --- assets/1F616_color.png | Bin 0 -> 11105 bytes src/Zenith/GUI.hs | 65 ++++++++++++++++++++++++++++++++++++---- src/Zenith/GUI/Theme.hs | 17 ++++++++++- 3 files changed, 75 insertions(+), 7 deletions(-) create mode 100644 assets/1F616_color.png diff --git a/assets/1F616_color.png b/assets/1F616_color.png new file mode 100644 index 0000000000000000000000000000000000000000..ac4816505a14cebf982b8cd6bafbd1bf6cf01cee GIT binary patch literal 11105 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 literal 0 HcmV?d00001 diff --git a/src/Zenith/GUI.hs b/src/Zenith/GUI.hs index 8dd01ab..b1db955 100644 --- a/src/Zenith/GUI.hs +++ b/src/Zenith/GUI.hs @@ -40,6 +40,7 @@ import Zenith.Utils (displayAmount, showAddress) data AppEvent = AppInit | ShowMsg !T.Text + | ShowError !T.Text | CloseMsg | WalletClicked | AccountClicked @@ -59,6 +60,8 @@ data AppEvent | LoadAccs ![Entity ZcashAccount] | ConfirmCancel | SaveAddress + | SaveAccount + | SaveWallet deriving (Eq, Show) data AppModel = AppModel @@ -87,6 +90,7 @@ data AppModel = AppModel , _confirmAccept :: !T.Text , _confirmCancel :: !T.Text , _confirmEvent :: !AppEvent + , _inError :: !Bool } deriving (Eq, Show) makeLenses ''AppModel @@ -444,7 +448,14 @@ buildUI wenv model = widgetTree ] msgOverlay = alert CloseMsg $ - hstack [filler, label $ fromMaybe "" (model ^. msg), filler] + hstack + [ filler + , image_ "./assets/1F616_color.png" [fitHeight] `styleBasic` + [height 44, width 44] `nodeVisible` + (model ^. inError) + , label $ fromMaybe "" (model ^. msg) + , filler + ] confirmOverlay = confirm_ (model ^. confirmEvent) @@ -533,6 +544,8 @@ handleEvent wenv node model evt = case evt of AppInit -> [] ShowMsg t -> [Model $ model & msg ?~ t & menuPopup .~ False] + ShowError t -> + [Model $ model & msg ?~ t & menuPopup .~ False & inError .~ True] WalletClicked -> [Model $ model & walPopup .~ True] AccountClicked -> [Model $ model & accPopup .~ True] MenuClicked -> [Model $ model & menuPopup .~ True] @@ -541,13 +554,51 @@ handleEvent wenv node model evt = [ Model $ model & confirmTitle ?~ "New Address" & confirmAccept .~ "Create" & confirmCancel .~ - "Cancel" + "Cancel" & + confirmEvent .~ + SaveAddress & + menuPopup .~ + False + ] + NewAccount -> + [ Model $ + model & confirmTitle ?~ "New Account" & confirmAccept .~ "Create" & + confirmCancel .~ + "Cancel" & + confirmEvent .~ + SaveAccount & + menuPopup .~ + False + ] + NewWallet -> + [ Model $ + model & confirmTitle ?~ "New Wallet" & confirmAccept .~ "Create" & + confirmCancel .~ + "Cancel" & + confirmEvent .~ + SaveWallet & + menuPopup .~ + False ] - NewAccount -> [Event $ ShowMsg "You clicked new account"] - NewWallet -> [Event $ ShowMsg "You clicked new wallet"] ConfirmCancel -> [Model $ model & confirmTitle .~ Nothing & mainInput .~ ""] SaveAddress -> - [Event $ ShowMsg $ "You saved address: " <> model ^. mainInput] + [ if T.length (model ^. mainInput) > 1 + then Event $ ShowMsg $ "You saved address: " <> model ^. mainInput + else Event $ ShowError "Invalid input" + , Event ConfirmCancel + ] + SaveAccount -> + [ if T.length (model ^. mainInput) > 1 + then Event $ ShowMsg $ "You saved account: " <> model ^. mainInput + else Event $ ShowError "Invalid input" + , Event ConfirmCancel + ] + SaveWallet -> + [ if T.length (model ^. mainInput) > 1 + then Event $ ShowMsg $ "You saved wallet: " <> model ^. mainInput + else Event $ ShowError "Invalid input" + , Event ConfirmCancel + ] SetPool p -> [ Model $ model & selPool .~ p , Task $ @@ -606,7 +657,7 @@ handleEvent wenv node model evt = LoadTxs t -> [Model $ model & transactions .~ t] LoadAddrs a -> [Model $ model & addresses .~ a, Event $ SetPool Orchard] LoadAccs a -> [Model $ model & accounts .~ a, Event $ SwitchAcc 0] - CloseMsg -> [Model $ model & msg .~ Nothing] + CloseMsg -> [Model $ model & msg .~ Nothing & inError .~ False] where currentWallet = if null (model ^. wallets) @@ -690,6 +741,7 @@ runZenithGUI config = do "" "" SaveAddress + False startApp model handleEvent buildUI params Left e -> do initDb dbFilePath @@ -722,6 +774,7 @@ runZenithGUI config = do "" "" SaveAddress + False startApp model handleEvent buildUI params where params = diff --git a/src/Zenith/GUI/Theme.hs b/src/Zenith/GUI/Theme.hs index 2b422a0..7322522 100644 --- a/src/Zenith/GUI/Theme.hs +++ b/src/Zenith/GUI/Theme.hs @@ -63,7 +63,22 @@ zenithTheme = hiliteTextStyle & L.active . L.btnMainStyle . L.text ?~ - hiliteTextStyle + hiliteTextStyle & + L.basic . + L.textFieldStyle . L.text ?~ + baseTextStyle & + L.hover . + L.textFieldStyle . L.text ?~ + baseTextStyle & + L.focus . + L.textFieldStyle . L.text ?~ + baseTextStyle & + L.active . + L.textFieldStyle . L.text ?~ + baseTextStyle & + L.focusHover . + L.textFieldStyle . L.text ?~ + baseTextStyle zenithThemeColors :: BaseThemeColors zenithThemeColors =