{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (garetxe@gmail.com) -} module GI.WebKit.Objects.SoupAuthDialog ( -- * Exported types SoupAuthDialog(..) , SoupAuthDialogK , toSoupAuthDialog , noSoupAuthDialog , -- * Signals -- ** CurrentToplevel SoupAuthDialogCurrentToplevelCallback , SoupAuthDialogCurrentToplevelCallbackC , SoupAuthDialogCurrentToplevelSignalInfo , afterSoupAuthDialogCurrentToplevel , mkSoupAuthDialogCurrentToplevelCallback , noSoupAuthDialogCurrentToplevelCallback , onSoupAuthDialogCurrentToplevel , soupAuthDialogCurrentToplevelCallbackWrapper, soupAuthDialogCurrentToplevelClosure , ) where import Prelude () import Data.GI.Base.ShortPrelude import qualified Data.Text as T import qualified Data.ByteString.Char8 as B import qualified Data.Map as Map import GI.WebKit.Types import GI.WebKit.Callbacks import qualified GI.GObject as GObject import qualified GI.Gtk as Gtk import qualified GI.Soup as Soup newtype SoupAuthDialog = SoupAuthDialog (ForeignPtr SoupAuthDialog) foreign import ccall "webkit_soup_auth_dialog_get_type" c_webkit_soup_auth_dialog_get_type :: IO GType type instance ParentTypes SoupAuthDialog = SoupAuthDialogParentTypes type SoupAuthDialogParentTypes = '[GObject.Object, Soup.SessionFeature] instance GObject SoupAuthDialog where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_webkit_soup_auth_dialog_get_type class GObject o => SoupAuthDialogK o instance (GObject o, IsDescendantOf SoupAuthDialog o) => SoupAuthDialogK o toSoupAuthDialog :: SoupAuthDialogK o => o -> IO SoupAuthDialog toSoupAuthDialog = unsafeCastTo SoupAuthDialog noSoupAuthDialog :: Maybe SoupAuthDialog noSoupAuthDialog = Nothing -- signal SoupAuthDialog::current-toplevel type SoupAuthDialogCurrentToplevelCallback = Soup.Message -> IO Gtk.Widget noSoupAuthDialogCurrentToplevelCallback :: Maybe SoupAuthDialogCurrentToplevelCallback noSoupAuthDialogCurrentToplevelCallback = Nothing type SoupAuthDialogCurrentToplevelCallbackC = Ptr () -> -- object Ptr Soup.Message -> Ptr () -> -- user_data IO (Ptr Gtk.Widget) foreign import ccall "wrapper" mkSoupAuthDialogCurrentToplevelCallback :: SoupAuthDialogCurrentToplevelCallbackC -> IO (FunPtr SoupAuthDialogCurrentToplevelCallbackC) soupAuthDialogCurrentToplevelClosure :: SoupAuthDialogCurrentToplevelCallback -> IO Closure soupAuthDialogCurrentToplevelClosure cb = newCClosure =<< mkSoupAuthDialogCurrentToplevelCallback wrapped where wrapped = soupAuthDialogCurrentToplevelCallbackWrapper cb soupAuthDialogCurrentToplevelCallbackWrapper :: SoupAuthDialogCurrentToplevelCallback -> Ptr () -> Ptr Soup.Message -> Ptr () -> IO (Ptr Gtk.Widget) soupAuthDialogCurrentToplevelCallbackWrapper _cb _ message _ = do message' <- (newObject Soup.Message) message result <- _cb message' let result' = unsafeManagedPtrCastPtr result return result' onSoupAuthDialogCurrentToplevel :: (GObject a, MonadIO m) => a -> SoupAuthDialogCurrentToplevelCallback -> m SignalHandlerId onSoupAuthDialogCurrentToplevel obj cb = liftIO $ connectSoupAuthDialogCurrentToplevel obj cb SignalConnectBefore afterSoupAuthDialogCurrentToplevel :: (GObject a, MonadIO m) => a -> SoupAuthDialogCurrentToplevelCallback -> m SignalHandlerId afterSoupAuthDialogCurrentToplevel obj cb = connectSoupAuthDialogCurrentToplevel obj cb SignalConnectAfter connectSoupAuthDialogCurrentToplevel :: (GObject a, MonadIO m) => a -> SoupAuthDialogCurrentToplevelCallback -> SignalConnectMode -> m SignalHandlerId connectSoupAuthDialogCurrentToplevel obj cb after = liftIO $ do cb' <- mkSoupAuthDialogCurrentToplevelCallback (soupAuthDialogCurrentToplevelCallbackWrapper cb) connectSignalFunPtr obj "current-toplevel" cb' after type instance AttributeList SoupAuthDialog = SoupAuthDialogAttributeList type SoupAuthDialogAttributeList = ('[ ] :: [(Symbol, *)]) data SoupAuthDialogCurrentToplevelSignalInfo instance SignalInfo SoupAuthDialogCurrentToplevelSignalInfo where type HaskellCallbackType SoupAuthDialogCurrentToplevelSignalInfo = SoupAuthDialogCurrentToplevelCallback connectSignal _ = connectSoupAuthDialogCurrentToplevel type instance SignalList SoupAuthDialog = SoupAuthDialogSignalList type SoupAuthDialogSignalList = ('[ '("current-toplevel", SoupAuthDialogCurrentToplevelSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])