module GHCJS.DOM.JSFFI.Generated.VideoTrackList
(js_item, item, item_, itemUnsafe, itemUnchecked, js_getTrackById,
getTrackById, getTrackById_, getTrackByIdUnsafe,
getTrackByIdUnchecked, js_getLength, getLength,
js_getSelectedIndex, getSelectedIndex, change, addTrack,
removeTrack, VideoTrackList(..), gTypeVideoTrackList)
where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, fmap, Show, Read, Eq, Ord)
import qualified Prelude (error)
import Data.Typeable (Typeable)
import GHCJS.Types (JSVal(..), JSString)
import GHCJS.Foreign (jsNull)
import GHCJS.Foreign.Callback (syncCallback, asyncCallback, syncCallback1, asyncCallback1, syncCallback2, asyncCallback2, OnBlocked(..))
import GHCJS.Marshal (ToJSVal(..), FromJSVal(..))
import GHCJS.Marshal.Pure (PToJSVal(..), PFromJSVal(..))
import Control.Monad (void)
import Control.Monad.IO.Class (MonadIO(..))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import Data.Maybe (fromJust)
import GHCJS.DOM.Types
import Control.Applicative ((<$>))
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName)
import GHCJS.DOM.JSFFI.Generated.Enums
foreign import javascript unsafe "$1[\"item\"]($2)" js_item ::
VideoTrackList -> Word -> IO (Nullable VideoTrack)
item ::
(MonadIO m) => VideoTrackList -> Word -> m (Maybe VideoTrack)
item self index
= liftIO (nullableToMaybe <$> (js_item (self) index))
item_ :: (MonadIO m) => VideoTrackList -> Word -> m ()
item_ self index = liftIO (void (js_item (self) index))
itemUnsafe ::
(MonadIO m, HasCallStack) => VideoTrackList -> Word -> m VideoTrack
itemUnsafe self index
= liftIO
((nullableToMaybe <$> (js_item (self) index)) >>=
maybe (Prelude.error "Nothing to return") return)
itemUnchecked ::
(MonadIO m) => VideoTrackList -> Word -> m VideoTrack
itemUnchecked self index
= liftIO (fromJust . nullableToMaybe <$> (js_item (self) index))
foreign import javascript unsafe "$1[\"getTrackById\"]($2)"
js_getTrackById ::
VideoTrackList -> JSString -> IO (Nullable VideoTrack)
getTrackById ::
(MonadIO m, ToJSString id) =>
VideoTrackList -> id -> m (Maybe VideoTrack)
getTrackById self id
= liftIO
(nullableToMaybe <$> (js_getTrackById (self) (toJSString id)))
getTrackById_ ::
(MonadIO m, ToJSString id) => VideoTrackList -> id -> m ()
getTrackById_ self id
= liftIO (void (js_getTrackById (self) (toJSString id)))
getTrackByIdUnsafe ::
(MonadIO m, ToJSString id, HasCallStack) =>
VideoTrackList -> id -> m VideoTrack
getTrackByIdUnsafe self id
= liftIO
((nullableToMaybe <$> (js_getTrackById (self) (toJSString id))) >>=
maybe (Prelude.error "Nothing to return") return)
getTrackByIdUnchecked ::
(MonadIO m, ToJSString id) => VideoTrackList -> id -> m VideoTrack
getTrackByIdUnchecked self id
= liftIO
(fromJust . nullableToMaybe <$>
(js_getTrackById (self) (toJSString id)))
foreign import javascript unsafe "$1[\"length\"]" js_getLength ::
VideoTrackList -> IO Word
getLength :: (MonadIO m) => VideoTrackList -> m Word
getLength self = liftIO (js_getLength (self))
foreign import javascript unsafe "$1[\"selectedIndex\"]"
js_getSelectedIndex :: VideoTrackList -> IO Int
getSelectedIndex :: (MonadIO m) => VideoTrackList -> m Int
getSelectedIndex self = liftIO (js_getSelectedIndex (self))
change :: EventName VideoTrackList Event
change = unsafeEventName (toJSString "change")
addTrack :: EventName VideoTrackList Event
addTrack = unsafeEventName (toJSString "addtrack")
removeTrack :: EventName VideoTrackList Event
removeTrack = unsafeEventName (toJSString "removetrack")