diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2016-07-18 04:47:21 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2016-07-18 04:47:21 +0300 |
commit | 62f1e6b804a940506eff5f3f924d2d000e16119d (patch) | |
tree | 443872b2e8ba439cb77de95391bba9319449de08 /apps/PromptMessage.hs | |
parent | README update (diff) | |
download | windows-env-62f1e6b804a940506eff5f3f924d2d000e16119d.tar.gz windows-env-62f1e6b804a940506eff5f3f924d2d000e16119d.zip |
fix compiler warnings + refactoring
Diffstat (limited to 'apps/PromptMessage.hs')
-rw-r--r-- | apps/PromptMessage.hs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/apps/PromptMessage.hs b/apps/PromptMessage.hs new file mode 100644 index 0000000..226a090 --- /dev/null +++ b/apps/PromptMessage.hs @@ -0,0 +1,33 @@ +{- + - Copyright 2016 Egor Tensin <Egor.Tensin@gmail.com> + - This file is licensed under the terms of the MIT License. + - See LICENSE.txt for details. +-} + +module PromptMessage + ( engraveMessage + , wipeMessage + ) where + +import Data.Maybe (fromJust, isJust) +import Text.Printf (printf) + +import qualified Windows.Environment as Env + +engraveMessage :: Env.Profile -> Env.VarName -> Maybe Env.VarValue -> Env.VarValue -> String +engraveMessage profile name oldValue newValue = + warning ++ values + where + warning = printf "Saving variable '%s' to '%s'...\n" name $ Env.profileKeyPath profile + + values + | isJust oldValue = oldValueMsg ++ newValueMsg + | otherwise = valueMsg + + oldValueMsg = printf "\tOld value: %s\n" $ fromJust oldValue + newValueMsg = printf "\tNew value: %s\n" newValue + valueMsg = printf "\tValue: %s\n" newValue + +wipeMessage :: Env.Profile -> Env.VarName -> String +wipeMessage profile name = + printf "Deleting variable '%s' from '%s'...\n" name $ Env.profileKeyPath profile |