packages feed

svg2q-0.3.2: main.hs

module Main ( main ) where
import Data.SVG.SVG
import Data.Maybe (fromJust)
import System( getArgs )
import Text.XML.Light.Types as XML
import Translate(createGraphicsFromContent) --my translation functions
import Output (mkImplementation, mkHeader)

main :: IO ()
main = do
    args <- getArgs
    if or [null args, null (tail args)]
       then 
        putStrLn "usage: svg2q <filename to read svg from>\
                 \ <class name>"
        else do
          contents <- readFile $ head args
          let graphics = map createGraphicsFromContent
                             (extractSVGContent contents)
          mkImplementation graphics (args !! 1)
          mkHeader graphics (args!!1)

extractSVGContent :: String -> [Content]
extractSVGContent = elContent 
                    . getSVGElement 
                    . fromJust 
                    . parseSVG