From 726dbe6b1a23440285fb50e83d12b7fea14189ff Mon Sep 17 00:00:00 2001 From: Sarah Vaupel Date: Wed, 26 Jun 2019 23:32:50 +0200 Subject: [PATCH] Removed DisplayAble class --- src/Handler/Profile.hs | 3 +-- src/Model/Types/DateTime.hs | 2 -- src/Model/Types/Misc.hs | 2 +- src/Model/Types/Sheet.hs | 7 ------- src/Utils.hs | 13 ------------- 5 files changed, 2 insertions(+), 25 deletions(-) diff --git a/src/Handler/Profile.hs b/src/Handler/Profile.hs index 611e82cdb..4bb679ec3 100644 --- a/src/Handler/Profile.hs +++ b/src/Handler/Profile.hs @@ -45,8 +45,7 @@ makeSettingForm template html = do <*> notificationForm (stgNotificationSettings <$> template) return (result, widget) -- no validation required here where - -- TODO: replace display - themeList = [Option (display t) t (toPathPiece t) | t <- universeF] + themeList = [Option (toMessage t) t (toPathPiece t) | t <- universeF] -- -- Version with proper grouping: -- diff --git a/src/Model/Types/DateTime.hs b/src/Model/Types/DateTime.hs index 10783550e..fd497cc40 100644 --- a/src/Model/Types/DateTime.hs +++ b/src/Model/Types/DateTime.hs @@ -45,8 +45,6 @@ seasonFromChar c where (~=) = (==) `on` CI.mk --- instance DisplayAble Season - data TermIdentifier = TermIdentifier { year :: Integer -- ^ Using 'Integer' to model years is consistent with 'Data.Time.Calendar' , season :: Season diff --git a/src/Model/Types/Misc.hs b/src/Model/Types/Misc.hs index efe0308a6..510b21251 100644 --- a/src/Model/Types/Misc.hs +++ b/src/Model/Types/Misc.hs @@ -39,6 +39,6 @@ instance Finite Theme nullaryPathPiece ''Theme $ camelToPathPiece' 1 -$(deriveSimpleWith ''DisplayAble 'display (over Text.packed $ Text.intercalate " " . unsafeTail . splitCamel) ''Theme) -- describe theme to user +$(deriveSimpleWith ''ToMessage 'toMessage (over Text.packed $ Text.intercalate " " . unsafeTail . splitCamel) ''Theme) -- describe theme to user derivePersistField "Theme" diff --git a/src/Model/Types/Sheet.hs b/src/Model/Types/Sheet.hs index 5e971fb1d..b4a6b0a90 100644 --- a/src/Model/Types/Sheet.hs +++ b/src/Model/Types/Sheet.hs @@ -164,13 +164,6 @@ sheetFile2markup SheetHint = iconHint sheetFile2markup SheetSolution = iconSolution sheetFile2markup SheetMarking = iconMarking --- $(deriveSimpleWith ''DisplayAble 'display (drop 17) ''SheetFileType) --- instance DisplayAble SheetFileType where -- deprecated, see RenderMessage instance in Foundation --- display SheetExercise = "Aufgabenstellung" --- display SheetHint = "Hinweise" --- display SheetSolution = "Musterlösung" --- display SheetMarking = "Korrekturhinweise" - -- partitionFileType' :: Ord a => [(SheetFileType,a)] -> Map SheetFileType (Set a) -- partitionFileType' = groupMap diff --git a/src/Utils.hs b/src/Utils.hs index 66fe2b006..35ca18bcc 100644 --- a/src/Utils.hs +++ b/src/Utils.hs @@ -231,22 +231,9 @@ str2widget :: (MonadBaseControl IO m, MonadThrow m, MonadIO m) => String -> WidgetT site m () str2widget s = [whamlet|#{s}|] -display2widget :: (MonadBaseControl IO m, MonadThrow m, MonadIO m, DisplayAble a) - => a -> WidgetT site m () -display2widget = text2widget . display - withFragment :: Monad m => MForm m (a, WidgetT site IO ()) -> Markup -> MForm m (a, WidgetT site IO ()) withFragment form html = flip fmap form $ over _2 (toWidget html >>) - --- Types that can be converted to Text for direct displayed to User! (Show for debugging, Display for Production) -{- (not so sure we really want to get rid of display?!) DEPRECATED display "Create RenderMessage Instances instead!" -} -class DisplayAble a where - display :: a -> Text - -- Default definitions for types belonging to Show (allows empty instance declarations) - default display :: Show a => a -> Text - display = pack . show - rationalToFixed3 :: Rational -> Fixed E3 rationalToFixed3 = fromRational