{-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE StrictData #-} module Codec.QRCode.Data.QRCodeOptions ( QRCodeOptions(..) , defaultQRCodeOptions ) where import Codec.QRCode.Base import Codec.QRCode.Data.ErrorLevel import Codec.QRCode.Data.Mask data QRCodeOptions = QRCodeOptions { qroMinVersion :: Int -- ^ Minimal version (i.e. size) the qr code may have , qroMaxVersion :: Int -- ^ Maximal version (i.e. size) the qr code may have , qroErrorLevel :: ErrorLevel -- ^ Selected error correction level , qroBoostErrorLevel :: Bool -- ^ Increase error correction level within the same version if possible , qroMask :: Maybe Mask -- ^ Specify a mask to be used, only use it if you know what you're doing } -- | The default options are all versions, boost error level and automatic mask, the error level has always to be specified defaultQRCodeOptions :: ErrorLevel -> QRCodeOptions defaultQRCodeOptions e = QRCodeOptions 1 40 e True Nothing