module GHCJS.DOM.JSFFI.Generated.SVGTransform
(js_setMatrix, setMatrix, js_setTranslate, setTranslate,
js_setScale, setScale, js_setRotate, setRotate, js_setSkewX,
setSkewX, js_setSkewY, setSkewY, pattern SVG_TRANSFORM_UNKNOWN,
pattern SVG_TRANSFORM_MATRIX, pattern SVG_TRANSFORM_TRANSLATE,
pattern SVG_TRANSFORM_SCALE, pattern SVG_TRANSFORM_ROTATE,
pattern SVG_TRANSFORM_SKEWX, pattern SVG_TRANSFORM_SKEWY,
js_getType, getType, js_getMatrix, getMatrix, getMatrixUnsafe,
getMatrixUnchecked, js_getAngle, getAngle, SVGTransform(..),
gTypeSVGTransform)
where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, fmap, Show, Read, Eq, Ord)
import qualified Prelude (error)
import Data.Typeable (Typeable)
import GHCJS.Types (JSVal(..), JSString)
import GHCJS.Foreign (jsNull)
import GHCJS.Foreign.Callback (syncCallback, asyncCallback, syncCallback1, asyncCallback1, syncCallback2, asyncCallback2, OnBlocked(..))
import GHCJS.Marshal (ToJSVal(..), FromJSVal(..))
import GHCJS.Marshal.Pure (PToJSVal(..), PFromJSVal(..))
import Control.Monad (void)
import Control.Monad.IO.Class (MonadIO(..))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import Data.Maybe (fromJust)
import GHCJS.DOM.Types
import Control.Applicative ((<$>))
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName)
import GHCJS.DOM.JSFFI.Generated.Enums
foreign import javascript unsafe "$1[\"setMatrix\"]($2)"
js_setMatrix :: SVGTransform -> Nullable SVGMatrix -> IO ()
setMatrix :: (MonadIO m) => SVGTransform -> Maybe SVGMatrix -> m ()
setMatrix self matrix
= liftIO (js_setMatrix (self) (maybeToNullable matrix))
foreign import javascript unsafe "$1[\"setTranslate\"]($2, $3)"
js_setTranslate :: SVGTransform -> Float -> Float -> IO ()
setTranslate ::
(MonadIO m) => SVGTransform -> Float -> Float -> m ()
setTranslate self tx ty = liftIO (js_setTranslate (self) tx ty)
foreign import javascript unsafe "$1[\"setScale\"]($2, $3)"
js_setScale :: SVGTransform -> Float -> Float -> IO ()
setScale :: (MonadIO m) => SVGTransform -> Float -> Float -> m ()
setScale self sx sy = liftIO (js_setScale (self) sx sy)
foreign import javascript unsafe "$1[\"setRotate\"]($2, $3, $4)"
js_setRotate :: SVGTransform -> Float -> Float -> Float -> IO ()
setRotate ::
(MonadIO m) => SVGTransform -> Float -> Float -> Float -> m ()
setRotate self angle cx cy
= liftIO (js_setRotate (self) angle cx cy)
foreign import javascript unsafe "$1[\"setSkewX\"]($2)" js_setSkewX
:: SVGTransform -> Float -> IO ()
setSkewX :: (MonadIO m) => SVGTransform -> Float -> m ()
setSkewX self angle = liftIO (js_setSkewX (self) angle)
foreign import javascript unsafe "$1[\"setSkewY\"]($2)" js_setSkewY
:: SVGTransform -> Float -> IO ()
setSkewY :: (MonadIO m) => SVGTransform -> Float -> m ()
setSkewY self angle = liftIO (js_setSkewY (self) angle)
pattern SVG_TRANSFORM_UNKNOWN = 0
pattern SVG_TRANSFORM_MATRIX = 1
pattern SVG_TRANSFORM_TRANSLATE = 2
pattern SVG_TRANSFORM_SCALE = 3
pattern SVG_TRANSFORM_ROTATE = 4
pattern SVG_TRANSFORM_SKEWX = 5
pattern SVG_TRANSFORM_SKEWY = 6
foreign import javascript unsafe "$1[\"type\"]" js_getType ::
SVGTransform -> IO Word
getType :: (MonadIO m) => SVGTransform -> m Word
getType self = liftIO (js_getType (self))
foreign import javascript unsafe "$1[\"matrix\"]" js_getMatrix ::
SVGTransform -> IO (Nullable SVGMatrix)
getMatrix :: (MonadIO m) => SVGTransform -> m (Maybe SVGMatrix)
getMatrix self = liftIO (nullableToMaybe <$> (js_getMatrix (self)))
getMatrixUnsafe ::
(MonadIO m, HasCallStack) => SVGTransform -> m SVGMatrix
getMatrixUnsafe self
= liftIO
((nullableToMaybe <$> (js_getMatrix (self))) >>=
maybe (Prelude.error "Nothing to return") return)
getMatrixUnchecked :: (MonadIO m) => SVGTransform -> m SVGMatrix
getMatrixUnchecked self
= liftIO (fromJust . nullableToMaybe <$> (js_getMatrix (self)))
foreign import javascript unsafe "$1[\"angle\"]" js_getAngle ::
SVGTransform -> IO Float
getAngle :: (MonadIO m) => SVGTransform -> m Float
getAngle self = liftIO (js_getAngle (self))