{-# LANGUAGE PatternSynonyms #-} -- For HasCallStack compatibility {-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} module JSDOM.Generated.Event (stopPropagation, preventDefault, initEvent, stopImmediatePropagation, pattern NONE, pattern CAPTURING_PHASE, pattern AT_TARGET, pattern BUBBLING_PHASE, pattern MOUSEDOWN, pattern MOUSEUP, pattern MOUSEOVER, pattern MOUSEOUT, pattern MOUSEMOVE, pattern MOUSEDRAG, pattern CLICK, pattern DBLCLICK, pattern KEYDOWN, pattern KEYUP, pattern KEYPRESS, pattern DRAGDROP, pattern FOCUS, pattern BLUR, pattern SELECT, pattern CHANGE, getType, getTarget, getTargetUnsafe, getTargetUnchecked, getCurrentTarget, getCurrentTargetUnsafe, getCurrentTargetUnchecked, getEventPhase, getBubbles, getCancelable, getTimeStamp, getDefaultPrevented, getSrcElement, getSrcElementUnsafe, getSrcElementUnchecked, setReturnValue, getReturnValue, setCancelBubble, getCancelBubble, getClipboardData, getClipboardDataUnsafe, getClipboardDataUnchecked, Event(..), gTypeEvent, IsEvent, toEvent) 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.Enums -- | stopPropagation :: (MonadDOM m, IsEvent self) => self -> m () stopPropagation self = liftDOM (void ((toEvent self) ^. jsf "stopPropagation" ())) -- | preventDefault :: (MonadDOM m, IsEvent self) => self -> m () preventDefault self = liftDOM (void ((toEvent self) ^. jsf "preventDefault" ())) -- | initEvent :: (MonadDOM m, IsEvent self, ToJSString eventTypeArg) => self -> eventTypeArg -> Bool -> Bool -> m () initEvent self eventTypeArg canBubbleArg cancelableArg = liftDOM (void ((toEvent self) ^. jsf "initEvent" [toJSVal eventTypeArg, toJSVal canBubbleArg, toJSVal cancelableArg])) -- | stopImmediatePropagation :: (MonadDOM m, IsEvent self) => self -> m () stopImmediatePropagation self = liftDOM (void ((toEvent self) ^. jsf "stopImmediatePropagation" ())) pattern NONE = 0 pattern CAPTURING_PHASE = 1 pattern AT_TARGET = 2 pattern BUBBLING_PHASE = 3 pattern MOUSEDOWN = 1 pattern MOUSEUP = 2 pattern MOUSEOVER = 4 pattern MOUSEOUT = 8 pattern MOUSEMOVE = 16 pattern MOUSEDRAG = 32 pattern CLICK = 64 pattern DBLCLICK = 128 pattern KEYDOWN = 256 pattern KEYUP = 512 pattern KEYPRESS = 1024 pattern DRAGDROP = 2048 pattern FOCUS = 4096 pattern BLUR = 8192 pattern SELECT = 16384 pattern CHANGE = 32768 -- | getType :: (MonadDOM m, IsEvent self, FromJSString result) => self -> m result getType self = liftDOM (((toEvent self) ^. js "type") >>= fromJSValUnchecked) -- | getTarget :: (MonadDOM m, IsEvent self) => self -> m (Maybe EventTarget) getTarget self = liftDOM (((toEvent self) ^. js "target") >>= fromJSVal) -- | getTargetUnsafe :: (MonadDOM m, IsEvent self, HasCallStack) => self -> m EventTarget getTargetUnsafe self = liftDOM ((((toEvent self) ^. js "target") >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | getTargetUnchecked :: (MonadDOM m, IsEvent self) => self -> m EventTarget getTargetUnchecked self = liftDOM (((toEvent self) ^. js "target") >>= fromJSValUnchecked) -- | getCurrentTarget :: (MonadDOM m, IsEvent self) => self -> m (Maybe EventTarget) getCurrentTarget self = liftDOM (((toEvent self) ^. js "currentTarget") >>= fromJSVal) -- | getCurrentTargetUnsafe :: (MonadDOM m, IsEvent self, HasCallStack) => self -> m EventTarget getCurrentTargetUnsafe self = liftDOM ((((toEvent self) ^. js "currentTarget") >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | getCurrentTargetUnchecked :: (MonadDOM m, IsEvent self) => self -> m EventTarget getCurrentTargetUnchecked self = liftDOM (((toEvent self) ^. js "currentTarget") >>= fromJSValUnchecked) -- | getEventPhase :: (MonadDOM m, IsEvent self) => self -> m Word getEventPhase self = liftDOM (round <$> (((toEvent self) ^. js "eventPhase") >>= valToNumber)) -- | getBubbles :: (MonadDOM m, IsEvent self) => self -> m Bool getBubbles self = liftDOM (((toEvent self) ^. js "bubbles") >>= valToBool) -- | getCancelable :: (MonadDOM m, IsEvent self) => self -> m Bool getCancelable self = liftDOM (((toEvent self) ^. js "cancelable") >>= valToBool) -- | getTimeStamp :: (MonadDOM m, IsEvent self) => self -> m Word getTimeStamp self = liftDOM (round <$> (((toEvent self) ^. js "timeStamp") >>= valToNumber)) -- | getDefaultPrevented :: (MonadDOM m, IsEvent self) => self -> m Bool getDefaultPrevented self = liftDOM (((toEvent self) ^. js "defaultPrevented") >>= valToBool) -- | getSrcElement :: (MonadDOM m, IsEvent self) => self -> m (Maybe EventTarget) getSrcElement self = liftDOM (((toEvent self) ^. js "srcElement") >>= fromJSVal) -- | getSrcElementUnsafe :: (MonadDOM m, IsEvent self, HasCallStack) => self -> m EventTarget getSrcElementUnsafe self = liftDOM ((((toEvent self) ^. js "srcElement") >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | getSrcElementUnchecked :: (MonadDOM m, IsEvent self) => self -> m EventTarget getSrcElementUnchecked self = liftDOM (((toEvent self) ^. js "srcElement") >>= fromJSValUnchecked) -- | setReturnValue :: (MonadDOM m, IsEvent self) => self -> Bool -> m () setReturnValue self val = liftDOM ((toEvent self) ^. jss "returnValue" (toJSVal val)) -- | getReturnValue :: (MonadDOM m, IsEvent self) => self -> m Bool getReturnValue self = liftDOM (((toEvent self) ^. js "returnValue") >>= valToBool) -- | setCancelBubble :: (MonadDOM m, IsEvent self) => self -> Bool -> m () setCancelBubble self val = liftDOM ((toEvent self) ^. jss "cancelBubble" (toJSVal val)) -- | getCancelBubble :: (MonadDOM m, IsEvent self) => self -> m Bool getCancelBubble self = liftDOM (((toEvent self) ^. js "cancelBubble") >>= valToBool) -- | getClipboardData :: (MonadDOM m, IsEvent self) => self -> m (Maybe DataTransfer) getClipboardData self = liftDOM (((toEvent self) ^. js "clipboardData") >>= fromJSVal) -- | getClipboardDataUnsafe :: (MonadDOM m, IsEvent self, HasCallStack) => self -> m DataTransfer getClipboardDataUnsafe self = liftDOM ((((toEvent self) ^. js "clipboardData") >>= fromJSVal) >>= maybe (Prelude.error "Nothing to return") return) -- | getClipboardDataUnchecked :: (MonadDOM m, IsEvent self) => self -> m DataTransfer getClipboardDataUnchecked self = liftDOM (((toEvent self) ^. js "clipboardData") >>= fromJSValUnchecked)