{-# LANGUAGE PatternSynonyms #-} module Language.Javascript.JSaddle.DOM.Generated.SVGSVGElement (suspendRedraw, unsuspendRedraw, unsuspendRedrawAll, forceRedraw, pauseAnimations, unpauseAnimations, animationsPaused, getCurrentTime, setCurrentTime, getIntersectionList, getEnclosureList, checkIntersection, checkEnclosure, deselectAll, createSVGNumber, createSVGLength, createSVGAngle, createSVGPoint, createSVGMatrix, createSVGRect, createSVGTransform, createSVGTransformFromMatrix, getElementById, getX, getY, getWidth, getHeight, setContentScriptType, getContentScriptType, setContentStyleType, getContentStyleType, getViewport, getPixelUnitToMillimeterX, getPixelUnitToMillimeterY, getScreenPixelToMillimeterX, getScreenPixelToMillimeterY, getUseCurrentView, getCurrentView, setCurrentScale, getCurrentScale, getCurrentTranslate, SVGSVGElement, castToSVGSVGElement, gTypeSVGSVGElement) where import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..)) 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 Language.Javascript.JSaddle.DOM.Types import Control.Applicative ((<$>)) import Control.Monad (void) import Control.Lens.Operators ((^.)) import Language.Javascript.JSaddle.DOM.EventTargetClosures (EventName, unsafeEventName) import Language.Javascript.JSaddle.DOM.Enums -- | suspendRedraw :: (MonadDOM m) => SVGSVGElement -> Word -> m Word suspendRedraw self maxWaitMilliseconds = liftDOM (round <$> ((self ^. jsf "suspendRedraw" [toJSVal maxWaitMilliseconds]) >>= valToNumber)) -- | unsuspendRedraw :: (MonadDOM m) => SVGSVGElement -> Word -> m () unsuspendRedraw self suspendHandleId = liftDOM (void (self ^. jsf "unsuspendRedraw" [toJSVal suspendHandleId])) -- | unsuspendRedrawAll :: (MonadDOM m) => SVGSVGElement -> m () unsuspendRedrawAll self = liftDOM (void (self ^. js "unsuspendRedrawAll")) -- | forceRedraw :: (MonadDOM m) => SVGSVGElement -> m () forceRedraw self = liftDOM (void (self ^. js "forceRedraw")) -- | pauseAnimations :: (MonadDOM m) => SVGSVGElement -> m () pauseAnimations self = liftDOM (void (self ^. js "pauseAnimations")) -- | unpauseAnimations :: (MonadDOM m) => SVGSVGElement -> m () unpauseAnimations self = liftDOM (void (self ^. js "unpauseAnimations")) -- | animationsPaused :: (MonadDOM m) => SVGSVGElement -> m Bool animationsPaused self = liftDOM ((self ^. js "animationsPaused") >>= valToBool) -- | getCurrentTime :: (MonadDOM m) => SVGSVGElement -> m Float getCurrentTime self = liftDOM (realToFrac <$> ((self ^. js "getCurrentTime") >>= valToNumber)) -- | setCurrentTime :: (MonadDOM m) => SVGSVGElement -> Float -> m () setCurrentTime self seconds = liftDOM (void (self ^. jsf "setCurrentTime" [toJSVal seconds])) -- | getIntersectionList :: (MonadDOM m, IsSVGElement referenceElement) => SVGSVGElement -> Maybe SVGRect -> Maybe referenceElement -> m (Maybe NodeList) getIntersectionList self rect referenceElement = liftDOM ((self ^. jsf "getIntersectionList" [toJSVal rect, toJSVal referenceElement]) >>= fromJSVal) -- | getEnclosureList :: (MonadDOM m, IsSVGElement referenceElement) => SVGSVGElement -> Maybe SVGRect -> Maybe referenceElement -> m (Maybe NodeList) getEnclosureList self rect referenceElement = liftDOM ((self ^. jsf "getEnclosureList" [toJSVal rect, toJSVal referenceElement]) >>= fromJSVal) -- | checkIntersection :: (MonadDOM m, IsSVGElement element) => SVGSVGElement -> Maybe element -> Maybe SVGRect -> m Bool checkIntersection self element rect = liftDOM ((self ^. jsf "checkIntersection" [toJSVal element, toJSVal rect]) >>= valToBool) -- | checkEnclosure :: (MonadDOM m, IsSVGElement element) => SVGSVGElement -> Maybe element -> Maybe SVGRect -> m Bool checkEnclosure self element rect = liftDOM ((self ^. jsf "checkEnclosure" [toJSVal element, toJSVal rect]) >>= valToBool) -- | deselectAll :: (MonadDOM m) => SVGSVGElement -> m () deselectAll self = liftDOM (void (self ^. js "deselectAll")) -- | createSVGNumber :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGNumber) createSVGNumber self = liftDOM ((self ^. js "createSVGNumber") >>= fromJSVal) -- | createSVGLength :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGLength) createSVGLength self = liftDOM ((self ^. js "createSVGLength") >>= fromJSVal) -- | createSVGAngle :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGAngle) createSVGAngle self = liftDOM ((self ^. js "createSVGAngle") >>= fromJSVal) -- | createSVGPoint :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGPoint) createSVGPoint self = liftDOM ((self ^. js "createSVGPoint") >>= fromJSVal) -- | createSVGMatrix :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGMatrix) createSVGMatrix self = liftDOM ((self ^. js "createSVGMatrix") >>= fromJSVal) -- | createSVGRect :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGRect) createSVGRect self = liftDOM ((self ^. js "createSVGRect") >>= fromJSVal) -- | createSVGTransform :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGTransform) createSVGTransform self = liftDOM ((self ^. js "createSVGTransform") >>= fromJSVal) -- | createSVGTransformFromMatrix :: (MonadDOM m) => SVGSVGElement -> Maybe SVGMatrix -> m (Maybe SVGTransform) createSVGTransformFromMatrix self matrix = liftDOM ((self ^. jsf "createSVGTransformFromMatrix" [toJSVal matrix]) >>= fromJSVal) -- | getElementById :: (MonadDOM m, ToJSString elementId) => SVGSVGElement -> elementId -> m (Maybe Element) getElementById self elementId = liftDOM ((self ^. jsf "getElementById" [toJSVal elementId]) >>= fromJSVal) -- | getX :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGAnimatedLength) getX self = liftDOM ((self ^. js "x") >>= fromJSVal) -- | getY :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGAnimatedLength) getY self = liftDOM ((self ^. js "y") >>= fromJSVal) -- | getWidth :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGAnimatedLength) getWidth self = liftDOM ((self ^. js "width") >>= fromJSVal) -- | getHeight :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGAnimatedLength) getHeight self = liftDOM ((self ^. js "height") >>= fromJSVal) -- | setContentScriptType :: (MonadDOM m, ToJSString val) => SVGSVGElement -> val -> m () setContentScriptType self val = liftDOM (self ^. jss "contentScriptType" (toJSVal val)) -- | getContentScriptType :: (MonadDOM m, FromJSString result) => SVGSVGElement -> m result getContentScriptType self = liftDOM ((self ^. js "contentScriptType") >>= fromJSValUnchecked) -- | setContentStyleType :: (MonadDOM m, ToJSString val) => SVGSVGElement -> val -> m () setContentStyleType self val = liftDOM (self ^. jss "contentStyleType" (toJSVal val)) -- | getContentStyleType :: (MonadDOM m, FromJSString result) => SVGSVGElement -> m result getContentStyleType self = liftDOM ((self ^. js "contentStyleType") >>= fromJSValUnchecked) -- | getViewport :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGRect) getViewport self = liftDOM ((self ^. js "viewport") >>= fromJSVal) -- | getPixelUnitToMillimeterX :: (MonadDOM m) => SVGSVGElement -> m Float getPixelUnitToMillimeterX self = liftDOM (realToFrac <$> ((self ^. js "pixelUnitToMillimeterX") >>= valToNumber)) -- | getPixelUnitToMillimeterY :: (MonadDOM m) => SVGSVGElement -> m Float getPixelUnitToMillimeterY self = liftDOM (realToFrac <$> ((self ^. js "pixelUnitToMillimeterY") >>= valToNumber)) -- | getScreenPixelToMillimeterX :: (MonadDOM m) => SVGSVGElement -> m Float getScreenPixelToMillimeterX self = liftDOM (realToFrac <$> ((self ^. js "screenPixelToMillimeterX") >>= valToNumber)) -- | getScreenPixelToMillimeterY :: (MonadDOM m) => SVGSVGElement -> m Float getScreenPixelToMillimeterY self = liftDOM (realToFrac <$> ((self ^. js "screenPixelToMillimeterY") >>= valToNumber)) -- | getUseCurrentView :: (MonadDOM m) => SVGSVGElement -> m Bool getUseCurrentView self = liftDOM ((self ^. js "useCurrentView") >>= valToBool) -- | getCurrentView :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGViewSpec) getCurrentView self = liftDOM ((self ^. js "currentView") >>= fromJSVal) -- | setCurrentScale :: (MonadDOM m) => SVGSVGElement -> Float -> m () setCurrentScale self val = liftDOM (self ^. jss "currentScale" (toJSVal val)) -- | getCurrentScale :: (MonadDOM m) => SVGSVGElement -> m Float getCurrentScale self = liftDOM (realToFrac <$> ((self ^. js "currentScale") >>= valToNumber)) -- | getCurrentTranslate :: (MonadDOM m) => SVGSVGElement -> m (Maybe SVGPoint) getCurrentTranslate self = liftDOM ((self ^. js "currentTranslate") >>= fromJSVal)