{-# LANGUAGE PatternSynonyms #-} module Language.Javascript.JSaddle.DOM.Generated.TextTrackCue (newTextTrackCue, getTrack, setId, getId, setStartTime, getStartTime, setEndTime, getEndTime, setPauseOnExit, getPauseOnExit, enter, exit, TextTrackCue, castToTextTrackCue, gTypeTextTrackCue, IsTextTrackCue, toTextTrackCue) 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 -- | newTextTrackCue :: (MonadDOM m, ToJSString text) => Double -> Double -> text -> m TextTrackCue newTextTrackCue startTime endTime text = liftDOM (TextTrackCue <$> new (jsg "TextTrackCue") [toJSVal startTime, toJSVal endTime, toJSVal text]) -- | getTrack :: (MonadDOM m, IsTextTrackCue self) => self -> m (Maybe TextTrack) getTrack self = liftDOM (((toTextTrackCue self) ^. js "track") >>= fromJSVal) -- | setId :: (MonadDOM m, IsTextTrackCue self, ToJSString val) => self -> val -> m () setId self val = liftDOM ((toTextTrackCue self) ^. jss "id" (toJSVal val)) -- | getId :: (MonadDOM m, IsTextTrackCue self, FromJSString result) => self -> m result getId self = liftDOM (((toTextTrackCue self) ^. js "id") >>= fromJSValUnchecked) -- | setStartTime :: (MonadDOM m, IsTextTrackCue self) => self -> Double -> m () setStartTime self val = liftDOM ((toTextTrackCue self) ^. jss "startTime" (toJSVal val)) -- | getStartTime :: (MonadDOM m, IsTextTrackCue self) => self -> m Double getStartTime self = liftDOM (((toTextTrackCue self) ^. js "startTime") >>= valToNumber) -- | setEndTime :: (MonadDOM m, IsTextTrackCue self) => self -> Double -> m () setEndTime self val = liftDOM ((toTextTrackCue self) ^. jss "endTime" (toJSVal val)) -- | getEndTime :: (MonadDOM m, IsTextTrackCue self) => self -> m Double getEndTime self = liftDOM (((toTextTrackCue self) ^. js "endTime") >>= valToNumber) -- | setPauseOnExit :: (MonadDOM m, IsTextTrackCue self) => self -> Bool -> m () setPauseOnExit self val = liftDOM ((toTextTrackCue self) ^. jss "pauseOnExit" (toJSVal val)) -- | getPauseOnExit :: (MonadDOM m, IsTextTrackCue self) => self -> m Bool getPauseOnExit self = liftDOM (((toTextTrackCue self) ^. js "pauseOnExit") >>= valToBool) -- | enter :: (IsTextTrackCue self, IsEventTarget self) => EventName self Event enter = unsafeEventName (toJSString "enter") -- | exit :: (IsTextTrackCue self, IsEventTarget self) => EventName self Event exit = unsafeEventName (toJSString "exit")