{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.DOMRect
(newDOMRect, fromRect, fromRect_, setX, getX, setY, getY, setWidth,
getWidth, setHeight, getHeight, DOMRect(..), gTypeDOMRect)
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 Data.Traversable (mapM)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, asyncFunction, new, array, jsUndefined, (!), (!!))
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, unsafeEventNameAsync)
import JSDOM.Enums
newDOMRect ::
(MonadDOM m) =>
Maybe Double ->
Maybe Double -> Maybe Double -> Maybe Double -> m DOMRect
newDOMRect :: forall (m :: * -> *).
MonadDOM m =>
Maybe Double
-> Maybe Double -> Maybe Double -> Maybe Double -> m DOMRect
newDOMRect Maybe Double
x Maybe Double
y Maybe Double
width Maybe Double
height
= DOM DOMRect -> m DOMRect
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSVal -> DOMRect
DOMRect (JSVal -> DOMRect) -> JSM JSVal -> DOM DOMRect
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
JSM JSVal -> [JSM JSVal] -> JSM JSVal
forall constructor args.
(MakeObject constructor, MakeArgs args) =>
constructor -> args -> JSM JSVal
new (String -> JSM JSVal
forall a. ToJSString a => a -> JSM JSVal
jsg String
"DOMRect")
[Maybe Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe Double
x, Maybe Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe Double
y, Maybe Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe Double
width, Maybe Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe Double
height])
fromRect :: (MonadDOM m) => Maybe DOMRectInit -> m DOMRect
fromRect :: forall (m :: * -> *). MonadDOM m => Maybe DOMRectInit -> m DOMRect
fromRect Maybe DOMRectInit
other
= DOM DOMRect -> m DOMRect
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(((String -> JSM JSVal
forall a. ToJSString a => a -> JSM JSVal
jsg String
"DOMRect") JSM JSVal
-> Getting (JSM JSVal) (JSM JSVal) (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"fromRect" [Maybe DOMRectInit -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe DOMRectInit
other]) JSM JSVal -> (JSVal -> DOM DOMRect) -> DOM DOMRect
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
JSVal -> DOM DOMRect
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)
fromRect_ :: (MonadDOM m) => Maybe DOMRectInit -> m ()
fromRect_ :: forall (m :: * -> *). MonadDOM m => Maybe DOMRectInit -> m ()
fromRect_ Maybe DOMRectInit
other
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void ((String -> JSM JSVal
forall a. ToJSString a => a -> JSM JSVal
jsg String
"DOMRect") JSM JSVal
-> Getting (JSM JSVal) (JSM JSVal) (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"fromRect" [Maybe DOMRectInit -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe DOMRectInit
other]))
setX :: (MonadDOM m) => DOMRect -> Double -> m ()
setX :: forall (m :: * -> *). MonadDOM m => DOMRect -> Double -> m ()
setX DOMRect
self Double
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (DOMRect
self DOMRect -> Getting (DOM ()) DOMRect (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. String
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss String
"x" (Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
val))
getX :: (MonadDOM m) => DOMRect -> m Double
getX :: forall (m :: * -> *). MonadDOM m => DOMRect -> m Double
getX DOMRect
self = DOM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((DOMRect
self DOMRect -> Getting (JSM JSVal) DOMRect (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter DOMRect (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"x") JSM JSVal -> (JSVal -> DOM Double) -> DOM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Double
forall value. ToJSVal value => value -> DOM Double
valToNumber)
setY :: (MonadDOM m) => DOMRect -> Double -> m ()
setY :: forall (m :: * -> *). MonadDOM m => DOMRect -> Double -> m ()
setY DOMRect
self Double
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (DOMRect
self DOMRect -> Getting (DOM ()) DOMRect (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. String
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss String
"y" (Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
val))
getY :: (MonadDOM m) => DOMRect -> m Double
getY :: forall (m :: * -> *). MonadDOM m => DOMRect -> m Double
getY DOMRect
self = DOM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((DOMRect
self DOMRect -> Getting (JSM JSVal) DOMRect (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter DOMRect (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"y") JSM JSVal -> (JSVal -> DOM Double) -> DOM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Double
forall value. ToJSVal value => value -> DOM Double
valToNumber)
setWidth :: (MonadDOM m) => DOMRect -> Double -> m ()
setWidth :: forall (m :: * -> *). MonadDOM m => DOMRect -> Double -> m ()
setWidth DOMRect
self Double
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (DOMRect
self DOMRect -> Getting (DOM ()) DOMRect (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. String
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss String
"width" (Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
val))
getWidth :: (MonadDOM m) => DOMRect -> m Double
getWidth :: forall (m :: * -> *). MonadDOM m => DOMRect -> m Double
getWidth DOMRect
self = DOM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((DOMRect
self DOMRect -> Getting (JSM JSVal) DOMRect (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter DOMRect (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"width") JSM JSVal -> (JSVal -> DOM Double) -> DOM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Double
forall value. ToJSVal value => value -> DOM Double
valToNumber)
setHeight :: (MonadDOM m) => DOMRect -> Double -> m ()
setHeight :: forall (m :: * -> *). MonadDOM m => DOMRect -> Double -> m ()
setHeight DOMRect
self Double
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (DOMRect
self DOMRect -> Getting (DOM ()) DOMRect (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. String
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss String
"height" (Double -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Double
val))
getHeight :: (MonadDOM m) => DOMRect -> m Double
getHeight :: forall (m :: * -> *). MonadDOM m => DOMRect -> m Double
getHeight DOMRect
self = DOM Double -> m Double
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((DOMRect
self DOMRect -> Getting (JSM JSVal) DOMRect (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter DOMRect (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"height") JSM JSVal -> (JSVal -> DOM Double) -> DOM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Double
forall value. ToJSVal value => value -> DOM Double
valToNumber)