{-|
Module      : Diagrams.Backend.HsQML
Description : Main module.
Copyright   : (c) Marcin Mrotek, 2015
License     : BSD-3
Maintainer  : marcin.jan.mrotek@gmail.com
Stability   : experimental

The end-user API.
-} 

module Diagrams.Backend.HsQML (
    renderHsQML
  , SizeSpec
  , mkSizeSpec
  , HsQML(..), Options(..)
  , B
  , DiagramObj
) where

import Diagrams.Backend.HsQML.Render hiding (renderHsQML)
import Diagrams.Backend.HsQML.DiagramObj.Type
import Diagrams.Core
import Diagrams.TwoD.Types
import Diagrams.Size
import Graphics.QML

type B = HsQML

renderHsQML :: SizeSpec V2 Double -> Diagram HsQML -> IO (ObjRef (DiagramObj ()))
-- ^Render a diagram to a QML object that controls a Canvas.
renderHsQML s = renderDia HsQML (HsQMLOptions s)