packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/MouseEventInit.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from pointerevents4 (webref). Do not edit.
module JSDOM.Generated.MouseEventInit
       (newMouseEventInit, setScreenX, getScreenX, getScreenXUnsafe, getScreenXUnchecked, setScreenY, getScreenY, getScreenYUnsafe, getScreenYUnchecked, setClientX, getClientX, getClientXUnsafe, getClientXUnchecked, setClientY, getClientY, getClientYUnsafe, getClientYUnchecked, setButton, getButton, getButtonUnsafe, getButtonUnchecked, setButtons, getButtons, getButtonsUnsafe, getButtonsUnchecked, setRelatedTarget, getRelatedTarget, getRelatedTargetUnsafe, getRelatedTargetUnchecked, setMovementX, getMovementX, getMovementXUnsafe, getMovementXUnchecked, setMovementY, getMovementY, getMovementYUnsafe, getMovementYUnchecked, MouseEventInit(..), gTypeMouseEventInit, IsMouseEventInit, toMouseEventInit)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit MouseEventInit specification>
newMouseEventInit :: (MonadDOM m) => m MouseEventInit
newMouseEventInit = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screenx MouseEventInit.screenX specification>
setScreenX :: (MonadDOM m, IsMouseEventInit self) => self -> Int -> m ()
setScreenX self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "screenX" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screenx MouseEventInit.screenX specification>
getScreenX :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Int)
getScreenX self = liftDOM ((((Types.toMouseEventInit self) ^. js "screenX") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screenx MouseEventInit.screenX specification>
getScreenXUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Int
getScreenXUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "screenX") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screenx MouseEventInit.screenX specification>
getScreenXUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Int
getScreenXUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "screenX") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screeny MouseEventInit.screenY specification>
setScreenY :: (MonadDOM m, IsMouseEventInit self) => self -> Int -> m ()
setScreenY self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "screenY" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screeny MouseEventInit.screenY specification>
getScreenY :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Int)
getScreenY self = liftDOM ((((Types.toMouseEventInit self) ^. js "screenY") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screeny MouseEventInit.screenY specification>
getScreenYUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Int
getScreenYUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "screenY") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-screeny MouseEventInit.screenY specification>
getScreenYUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Int
getScreenYUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "screenY") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clientx MouseEventInit.clientX specification>
setClientX :: (MonadDOM m, IsMouseEventInit self) => self -> Int -> m ()
setClientX self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "clientX" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clientx MouseEventInit.clientX specification>
getClientX :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Int)
getClientX self = liftDOM ((((Types.toMouseEventInit self) ^. js "clientX") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clientx MouseEventInit.clientX specification>
getClientXUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Int
getClientXUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "clientX") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clientx MouseEventInit.clientX specification>
getClientXUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Int
getClientXUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "clientX") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clienty MouseEventInit.clientY specification>
setClientY :: (MonadDOM m, IsMouseEventInit self) => self -> Int -> m ()
setClientY self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "clientY" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clienty MouseEventInit.clientY specification>
getClientY :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Int)
getClientY self = liftDOM ((((Types.toMouseEventInit self) ^. js "clientY") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clienty MouseEventInit.clientY specification>
getClientYUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Int
getClientYUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "clientY") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-clienty MouseEventInit.clientY specification>
getClientYUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Int
getClientYUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "clientY") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-button MouseEventInit.button specification>
setButton :: (MonadDOM m, IsMouseEventInit self) => self -> Int -> m ()
setButton self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "button" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-button MouseEventInit.button specification>
getButton :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Int)
getButton self = liftDOM ((((Types.toMouseEventInit self) ^. js "button") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-button MouseEventInit.button specification>
getButtonUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Int
getButtonUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "button") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-button MouseEventInit.button specification>
getButtonUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Int
getButtonUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "button") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-buttons MouseEventInit.buttons specification>
setButtons :: (MonadDOM m, IsMouseEventInit self) => self -> Word -> m ()
setButtons self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "buttons" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-buttons MouseEventInit.buttons specification>
getButtons :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Word)
getButtons self = liftDOM ((((Types.toMouseEventInit self) ^. js "buttons") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-buttons MouseEventInit.buttons specification>
getButtonsUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Word
getButtonsUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "buttons") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-buttons MouseEventInit.buttons specification>
getButtonsUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Word
getButtonsUnchecked self = liftDOM ((P.round <$> (((Types.toMouseEventInit self) ^. js "buttons") >>= valToNumber)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-relatedtarget MouseEventInit.relatedTarget specification>
setRelatedTarget :: (MonadDOM m, IsMouseEventInit self, IsEventTarget val) => self -> Maybe val -> m ()
setRelatedTarget self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "relatedTarget" (toJSVal val)))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-relatedtarget MouseEventInit.relatedTarget specification>
getRelatedTarget :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe EventTarget)
getRelatedTarget self = liftDOM ((((Types.toMouseEventInit self) ^. js "relatedTarget") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-relatedtarget MouseEventInit.relatedTarget specification>
getRelatedTargetUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m EventTarget
getRelatedTargetUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "relatedTarget") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerevents/#dom-mouseeventinit-relatedtarget MouseEventInit.relatedTarget specification>
getRelatedTargetUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m EventTarget
getRelatedTargetUnchecked self = liftDOM ((((Types.toMouseEventInit self) ^. js "relatedTarget") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementx MouseEventInit.movementX specification>
setMovementX :: (MonadDOM m, IsMouseEventInit self) => self -> Double -> m ()
setMovementX self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "movementX" (toJSVal val)))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementx MouseEventInit.movementX specification>
getMovementX :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Double)
getMovementX self = liftDOM ((((Types.toMouseEventInit self) ^. js "movementX") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementx MouseEventInit.movementX specification>
getMovementXUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Double
getMovementXUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "movementX") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementx MouseEventInit.movementX specification>
getMovementXUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Double
getMovementXUnchecked self = liftDOM ((((Types.toMouseEventInit self) ^. js "movementX") >>= valToNumber))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementy MouseEventInit.movementY specification>
setMovementY :: (MonadDOM m, IsMouseEventInit self) => self -> Double -> m ()
setMovementY self val = liftDOM (void ((Types.toMouseEventInit self) ^. jss "movementY" (toJSVal val)))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementy MouseEventInit.movementY specification>
getMovementY :: (MonadDOM m, IsMouseEventInit self) => self -> m (Maybe Double)
getMovementY self = liftDOM ((((Types.toMouseEventInit self) ^. js "movementY") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementy MouseEventInit.movementY specification>
getMovementYUnsafe :: (MonadDOM m, IsMouseEventInit self, HasCallStack) => self -> m Double
getMovementYUnsafe self = liftDOM (((((Types.toMouseEventInit self) ^. js "movementY") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/pointerlock/#dom-mouseeventinit-movementy MouseEventInit.movementY specification>
getMovementYUnchecked :: (MonadDOM m, IsMouseEventInit self) => self -> m Double
getMovementYUnchecked self = liftDOM ((((Types.toMouseEventInit self) ^. js "movementY") >>= valToNumber))