import Control.Concurrent import Control.Monad import Data.Text hiding (head) import Linear.V2 import Linear.V4 import SDL (quit, BlendMode(BlendAlphaBlend),defaultWindow,initializeAll, defaultRenderer,createWindow,createRenderer) import SDL.Compositor (present,clear,translateA,overC,blendMode,runRenderer,filledRectangleC) import SDL.Compositor.TTF (withFont,showText,Alignment(AlignLeft)) import SDL.Raw (Color(..)) import qualified SDL.TTF as TTF import System.Environment main = do void TTF.init initializeAll args <- getArgs let fontPath = head args font <- TTF.openFont fontPath 36 window <- createWindow (pack "Testwindow") defaultWindow rend <- createRenderer window (-1) defaultRenderer let hello = withFont font $ showText AlignLeft (Color 255 255 255 255) (pack "Hello, World!") rectangle = filledRectangleC (V2 400 200) (V4 255 0 0 255) clear rend runRenderer rend (translateA (V2 400 300) $ blendMode BlendAlphaBlend $ (hello `overC` rectangle)) present rend threadDelay (5*1000000) TTF.quit quit