packages feed

webkit-0.14.2.1: Graphics/UI/Gtk/WebKit/DOM/TextTrackCue.chs

module Graphics.UI.Gtk.WebKit.DOM.TextTrackCue(
#if WEBKIT_CHECK_VERSION(2,2,2)
getTrack,
setId,
getId,
setStartTime,
getStartTime,
setEndTime,
getEndTime,
setPauseOnExit,
getPauseOnExit,
enter,
exit,
TextTrackCue,
castToTextTrackCue,
gTypeTextTrackCue,
TextTrackCueClass,
toTextTrackCue,
#endif
) where
#if WEBKIT_CHECK_VERSION(2,2,2)
import Prelude hiding (drop, error, print)
import Data.Typeable (Typeable)
import Foreign.Marshal (maybePeek, maybeWith)
import System.Glib.FFI (maybeNull, withForeignPtr, nullForeignPtr, Ptr, nullPtr, castPtr, Word, Int64, Word64, CChar(..), CInt(..), CUInt(..), CLong(..), CULong(..), CLLong(..), CULLong(..), CShort(..), CUShort(..), CFloat(..), CDouble(..), toBool, fromBool)
import System.Glib.UTFString (GlibString(..), readUTFString)
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Monad.IO.Class (MonadIO(..))
import System.Glib.GError
import Graphics.UI.Gtk.WebKit.DOM.EventTargetClosures
import Graphics.UI.Gtk.WebKit.DOM.EventM
{#import Graphics.UI.Gtk.WebKit.Types#}
import Graphics.UI.Gtk.WebKit.DOM.Enums

 
getTrack ::
         (MonadIO m, TextTrackCueClass self) => self -> m (Maybe TextTrack)
getTrack self
  = liftIO
      (maybeNull (makeNewGObject mkTextTrack)
         ({# call webkit_dom_text_track_cue_get_track #}
            (toTextTrackCue self)))
 
setId ::
      (MonadIO m, TextTrackCueClass self, GlibString string) =>
        self -> string -> m ()
setId self val
  = liftIO
      (withUTFString val $
         \ valPtr ->
           {# call webkit_dom_text_track_cue_set_id #} (toTextTrackCue self)
             valPtr)
 
getId ::
      (MonadIO m, TextTrackCueClass self, GlibString string) =>
        self -> m string
getId self
  = liftIO
      (({# call webkit_dom_text_track_cue_get_id #}
          (toTextTrackCue self))
         >>=
         readUTFString)
 
setStartTime ::
             (MonadIO m, TextTrackCueClass self) => self -> Double -> m ()
setStartTime self val
  = liftIO
      (propagateGError $
         \ errorPtr_ ->
           {# call webkit_dom_text_track_cue_set_start_time #}
             (toTextTrackCue self)
             (realToFrac val)
             errorPtr_)
 
getStartTime ::
             (MonadIO m, TextTrackCueClass self) => self -> m Double
getStartTime self
  = liftIO
      (realToFrac <$>
         ({# call webkit_dom_text_track_cue_get_start_time #}
            (toTextTrackCue self)))
 
setEndTime ::
           (MonadIO m, TextTrackCueClass self) => self -> Double -> m ()
setEndTime self val
  = liftIO
      (propagateGError $
         \ errorPtr_ ->
           {# call webkit_dom_text_track_cue_set_end_time #}
             (toTextTrackCue self)
             (realToFrac val)
             errorPtr_)
 
getEndTime ::
           (MonadIO m, TextTrackCueClass self) => self -> m Double
getEndTime self
  = liftIO
      (realToFrac <$>
         ({# call webkit_dom_text_track_cue_get_end_time #}
            (toTextTrackCue self)))
 
setPauseOnExit ::
               (MonadIO m, TextTrackCueClass self) => self -> Bool -> m ()
setPauseOnExit self val
  = liftIO
      ({# call webkit_dom_text_track_cue_set_pause_on_exit #}
         (toTextTrackCue self)
         (fromBool val))
 
getPauseOnExit ::
               (MonadIO m, TextTrackCueClass self) => self -> m Bool
getPauseOnExit self
  = liftIO
      (toBool <$>
         ({# call webkit_dom_text_track_cue_get_pause_on_exit #}
            (toTextTrackCue self)))
 
enter :: (TextTrackCueClass self) => EventName self Event
enter = EventName "enter"
 
exit :: (TextTrackCueClass self) => EventName self Event
exit = EventName "exit"
#endif