{-# LANGUAGE PatternSynonyms #-} -- For HasCallStack compatibility {-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} module JSDOM.Generated.SVGPoint (matrixTransform, matrixTransform_, matrixTransformUnsafe, matrixTransformUnchecked, setX, getX, setY, getY, SVGPoint(..), gTypeSVGPoint) where import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..)) import qualified Prelude (error) import Data.Typeable (Typeable) import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, new, array) import Data.Int (Int64) import Data.Word (Word, Word64) import JSDOM.Types import Control.Applicative ((<$>)) import Control.Monad (void) import Control.Lens.Operators ((^.)) import JSDOM.EventTargetClosures (EventName, unsafeEventName) import JSDOM.Enums -- | matrixTransform :: (MonadDOM m) => SVGPoint -> Maybe SVGMatrix -> m (Maybe SVGPoint) matrixTransform self matrix = liftDOM ((self ^. jsf "matrixTransform" [toJSVal matrix]) >>= fromJSVal) -- | matrixTransform_ :: (MonadDOM m) => SVGPoint -> Maybe SVGMatrix -> m () matrixTransform_ self matrix = liftDOM (void (self ^. jsf "matrixTransform" [toJSVal matrix])) -- | matrixTransformUnsafe :: (MonadDOM m, HasCallStack) => SVGPoint -> Maybe SVGMatrix -> m SVGPoint matrixTransformUnsafe self matrix = liftDOM (((self ^. jsf "matrixTransform" [toJSVal matrix]) >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | matrixTransformUnchecked :: (MonadDOM m) => SVGPoint -> Maybe SVGMatrix -> m SVGPoint matrixTransformUnchecked self matrix = liftDOM ((self ^. jsf "matrixTransform" [toJSVal matrix]) >>= fromJSValUnchecked) -- | setX :: (MonadDOM m) => SVGPoint -> Float -> m () setX self val = liftDOM (self ^. jss "x" (toJSVal val)) -- | getX :: (MonadDOM m) => SVGPoint -> m Float getX self = liftDOM (realToFrac <$> ((self ^. js "x") >>= valToNumber)) -- | setY :: (MonadDOM m) => SVGPoint -> Float -> m () setY self val = liftDOM (self ^. jss "y" (toJSVal val)) -- | getY :: (MonadDOM m) => SVGPoint -> m Float getY self = liftDOM (realToFrac <$> ((self ^. js "y") >>= valToNumber))