{-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE JavaScriptFFI #-} -- For HasCallStack compatibility {-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-} module GHCJS.DOM.JSFFI.Generated.DataTransfer (js_clearData, clearData, js_getData, getData, getData_, js_setData, setData, js_setDragImage, setDragImage, js_setDropEffect, setDropEffect, js_getDropEffect, getDropEffect, js_setEffectAllowed, setEffectAllowed, js_getEffectAllowed, getEffectAllowed, js_getTypes, getTypes, getTypesUnsafe, getTypesUnchecked, js_getFiles, getFiles, getFilesUnsafe, getFilesUnchecked, js_getItems, getItems, getItemsUnsafe, getItemsUnchecked, DataTransfer(..), gTypeDataTransfer) 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[\"clearData\"]($2)" js_clearData :: DataTransfer -> JSString -> IO () -- | clearData :: (MonadIO m, ToJSString type') => DataTransfer -> type' -> m () clearData self type' = liftIO (js_clearData (self) (toJSString type')) foreign import javascript unsafe "$1[\"getData\"]($2)" js_getData :: DataTransfer -> JSString -> IO JSString -- | getData :: (MonadIO m, ToJSString type', FromJSString result) => DataTransfer -> type' -> m result getData self type' = liftIO (fromJSString <$> (js_getData (self) (toJSString type'))) -- | getData_ :: (MonadIO m, ToJSString type') => DataTransfer -> type' -> m () getData_ self type' = liftIO (void (js_getData (self) (toJSString type'))) foreign import javascript unsafe "$1[\"setData\"]($2, $3)" js_setData :: DataTransfer -> JSString -> JSString -> IO () -- | setData :: (MonadIO m, ToJSString type', ToJSString data') => DataTransfer -> type' -> data' -> m () setData self type' data' = liftIO (js_setData (self) (toJSString type') (toJSString data')) foreign import javascript unsafe "$1[\"setDragImage\"]($2, $3, $4)" js_setDragImage :: DataTransfer -> Nullable Element -> Int -> Int -> IO () -- | setDragImage :: (MonadIO m, IsElement image) => DataTransfer -> Maybe image -> Int -> Int -> m () setDragImage self image x y = liftIO (js_setDragImage (self) (maybeToNullable (fmap toElement image)) x y) foreign import javascript unsafe "$1[\"dropEffect\"] = $2;" js_setDropEffect :: DataTransfer -> JSString -> IO () -- | setDropEffect :: (MonadIO m, ToJSString val) => DataTransfer -> val -> m () setDropEffect self val = liftIO (js_setDropEffect (self) (toJSString val)) foreign import javascript unsafe "$1[\"dropEffect\"]" js_getDropEffect :: DataTransfer -> IO JSString -- | getDropEffect :: (MonadIO m, FromJSString result) => DataTransfer -> m result getDropEffect self = liftIO (fromJSString <$> (js_getDropEffect (self))) foreign import javascript unsafe "$1[\"effectAllowed\"] = $2;" js_setEffectAllowed :: DataTransfer -> JSString -> IO () -- | setEffectAllowed :: (MonadIO m, ToJSString val) => DataTransfer -> val -> m () setEffectAllowed self val = liftIO (js_setEffectAllowed (self) (toJSString val)) foreign import javascript unsafe "$1[\"effectAllowed\"]" js_getEffectAllowed :: DataTransfer -> IO JSString -- | getEffectAllowed :: (MonadIO m, FromJSString result) => DataTransfer -> m result getEffectAllowed self = liftIO (fromJSString <$> (js_getEffectAllowed (self))) foreign import javascript unsafe "$1[\"types\"]" js_getTypes :: DataTransfer -> IO (Nullable Array) -- | getTypes :: (MonadIO m) => DataTransfer -> m (Maybe Array) getTypes self = liftIO (nullableToMaybe <$> (js_getTypes (self))) -- | getTypesUnsafe :: (MonadIO m, HasCallStack) => DataTransfer -> m Array getTypesUnsafe self = liftIO ((nullableToMaybe <$> (js_getTypes (self))) >>= maybe (Prelude.error "Nothing to return") return) -- | getTypesUnchecked :: (MonadIO m) => DataTransfer -> m Array getTypesUnchecked self = liftIO (fromJust . nullableToMaybe <$> (js_getTypes (self))) foreign import javascript unsafe "$1[\"files\"]" js_getFiles :: DataTransfer -> IO (Nullable FileList) -- | getFiles :: (MonadIO m) => DataTransfer -> m (Maybe FileList) getFiles self = liftIO (nullableToMaybe <$> (js_getFiles (self))) -- | getFilesUnsafe :: (MonadIO m, HasCallStack) => DataTransfer -> m FileList getFilesUnsafe self = liftIO ((nullableToMaybe <$> (js_getFiles (self))) >>= maybe (Prelude.error "Nothing to return") return) -- | getFilesUnchecked :: (MonadIO m) => DataTransfer -> m FileList getFilesUnchecked self = liftIO (fromJust . nullableToMaybe <$> (js_getFiles (self))) foreign import javascript unsafe "$1[\"items\"]" js_getItems :: DataTransfer -> IO (Nullable DataTransferItemList) -- | getItems :: (MonadIO m) => DataTransfer -> m (Maybe DataTransferItemList) getItems self = liftIO (nullableToMaybe <$> (js_getItems (self))) -- | getItemsUnsafe :: (MonadIO m, HasCallStack) => DataTransfer -> m DataTransferItemList getItemsUnsafe self = liftIO ((nullableToMaybe <$> (js_getItems (self))) >>= maybe (Prelude.error "Nothing to return") return) -- | getItemsUnchecked :: (MonadIO m) => DataTransfer -> m DataTransferItemList getItemsUnchecked self = liftIO (fromJust . nullableToMaybe <$> (js_getItems (self)))