module GI.WebKit.Objects.FaviconDatabase
(
FaviconDatabase(..) ,
IsFaviconDatabase ,
toFaviconDatabase ,
noFaviconDatabase ,
FaviconDatabaseClearMethodInfo ,
faviconDatabaseClear ,
FaviconDatabaseGetFaviconPixbufMethodInfo,
faviconDatabaseGetFaviconPixbuf ,
FaviconDatabaseGetFaviconPixbufFinishMethodInfo,
faviconDatabaseGetFaviconPixbufFinish ,
FaviconDatabaseGetFaviconUriMethodInfo ,
faviconDatabaseGetFaviconUri ,
FaviconDatabaseGetPathMethodInfo ,
faviconDatabaseGetPath ,
FaviconDatabaseSetPathMethodInfo ,
faviconDatabaseSetPath ,
FaviconDatabaseTryGetFaviconPixbufMethodInfo,
faviconDatabaseTryGetFaviconPixbuf ,
FaviconDatabasePathPropertyInfo ,
clearFaviconDatabasePath ,
constructFaviconDatabasePath ,
faviconDatabasePath ,
getFaviconDatabasePath ,
setFaviconDatabasePath ,
C_FaviconDatabaseIconLoadedCallback ,
FaviconDatabaseIconLoadedCallback ,
FaviconDatabaseIconLoadedSignalInfo ,
afterFaviconDatabaseIconLoaded ,
genClosure_FaviconDatabaseIconLoaded ,
mk_FaviconDatabaseIconLoadedCallback ,
noFaviconDatabaseIconLoadedCallback ,
onFaviconDatabaseIconLoaded ,
wrap_FaviconDatabaseIconLoadedCallback ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.GdkPixbuf.Objects.Pixbuf as GdkPixbuf.Pixbuf
import qualified GI.Gio.Callbacks as Gio.Callbacks
import qualified GI.Gio.Interfaces.AsyncResult as Gio.AsyncResult
import qualified GI.Gio.Objects.Cancellable as Gio.Cancellable
newtype FaviconDatabase = FaviconDatabase (ManagedPtr FaviconDatabase)
foreign import ccall "webkit_favicon_database_get_type"
c_webkit_favicon_database_get_type :: IO GType
instance GObject FaviconDatabase where
gobjectType _ = c_webkit_favicon_database_get_type
class GObject o => IsFaviconDatabase o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError FaviconDatabase a) =>
IsFaviconDatabase a
#endif
instance IsFaviconDatabase FaviconDatabase
instance GObject.Object.IsObject FaviconDatabase
toFaviconDatabase :: IsFaviconDatabase o => o -> IO FaviconDatabase
toFaviconDatabase = unsafeCastTo FaviconDatabase
noFaviconDatabase :: Maybe FaviconDatabase
noFaviconDatabase = Nothing
type family ResolveFaviconDatabaseMethod (t :: Symbol) (o :: *) :: * where
ResolveFaviconDatabaseMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveFaviconDatabaseMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveFaviconDatabaseMethod "clear" o = FaviconDatabaseClearMethodInfo
ResolveFaviconDatabaseMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveFaviconDatabaseMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveFaviconDatabaseMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveFaviconDatabaseMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveFaviconDatabaseMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveFaviconDatabaseMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveFaviconDatabaseMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveFaviconDatabaseMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolveFaviconDatabaseMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
ResolveFaviconDatabaseMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveFaviconDatabaseMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveFaviconDatabaseMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveFaviconDatabaseMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveFaviconDatabaseMethod "tryGetFaviconPixbuf" o = FaviconDatabaseTryGetFaviconPixbufMethodInfo
ResolveFaviconDatabaseMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveFaviconDatabaseMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveFaviconDatabaseMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveFaviconDatabaseMethod "getFaviconPixbuf" o = FaviconDatabaseGetFaviconPixbufMethodInfo
ResolveFaviconDatabaseMethod "getFaviconPixbufFinish" o = FaviconDatabaseGetFaviconPixbufFinishMethodInfo
ResolveFaviconDatabaseMethod "getFaviconUri" o = FaviconDatabaseGetFaviconUriMethodInfo
ResolveFaviconDatabaseMethod "getPath" o = FaviconDatabaseGetPathMethodInfo
ResolveFaviconDatabaseMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveFaviconDatabaseMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveFaviconDatabaseMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveFaviconDatabaseMethod "setPath" o = FaviconDatabaseSetPathMethodInfo
ResolveFaviconDatabaseMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveFaviconDatabaseMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveFaviconDatabaseMethod t FaviconDatabase, O.MethodInfo info FaviconDatabase p) => O.IsLabelProxy t (FaviconDatabase -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveFaviconDatabaseMethod t FaviconDatabase, O.MethodInfo info FaviconDatabase p) => O.IsLabel t (FaviconDatabase -> p) where
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
type FaviconDatabaseIconLoadedCallback =
T.Text ->
IO ()
noFaviconDatabaseIconLoadedCallback :: Maybe FaviconDatabaseIconLoadedCallback
noFaviconDatabaseIconLoadedCallback = Nothing
type C_FaviconDatabaseIconLoadedCallback =
Ptr () ->
CString ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_FaviconDatabaseIconLoadedCallback :: C_FaviconDatabaseIconLoadedCallback -> IO (FunPtr C_FaviconDatabaseIconLoadedCallback)
genClosure_FaviconDatabaseIconLoaded :: FaviconDatabaseIconLoadedCallback -> IO Closure
genClosure_FaviconDatabaseIconLoaded cb = do
let cb' = wrap_FaviconDatabaseIconLoadedCallback cb
mk_FaviconDatabaseIconLoadedCallback cb' >>= newCClosure
wrap_FaviconDatabaseIconLoadedCallback ::
FaviconDatabaseIconLoadedCallback ->
Ptr () ->
CString ->
Ptr () ->
IO ()
wrap_FaviconDatabaseIconLoadedCallback _cb _ frameUri _ = do
frameUri' <- cstringToText frameUri
_cb frameUri'
onFaviconDatabaseIconLoaded :: (GObject a, MonadIO m) => a -> FaviconDatabaseIconLoadedCallback -> m SignalHandlerId
onFaviconDatabaseIconLoaded obj cb = liftIO $ connectFaviconDatabaseIconLoaded obj cb SignalConnectBefore
afterFaviconDatabaseIconLoaded :: (GObject a, MonadIO m) => a -> FaviconDatabaseIconLoadedCallback -> m SignalHandlerId
afterFaviconDatabaseIconLoaded obj cb = connectFaviconDatabaseIconLoaded obj cb SignalConnectAfter
connectFaviconDatabaseIconLoaded :: (GObject a, MonadIO m) =>
a -> FaviconDatabaseIconLoadedCallback -> SignalConnectMode -> m SignalHandlerId
connectFaviconDatabaseIconLoaded obj cb after = liftIO $ do
let cb' = wrap_FaviconDatabaseIconLoadedCallback cb
cb'' <- mk_FaviconDatabaseIconLoadedCallback cb'
connectSignalFunPtr obj "icon-loaded" cb'' after
getFaviconDatabasePath :: (MonadIO m, IsFaviconDatabase o) => o -> m T.Text
getFaviconDatabasePath obj = liftIO $ checkUnexpectedNothing "getFaviconDatabasePath" $ getObjectPropertyString obj "path"
setFaviconDatabasePath :: (MonadIO m, IsFaviconDatabase o) => o -> T.Text -> m ()
setFaviconDatabasePath obj val = liftIO $ setObjectPropertyString obj "path" (Just val)
constructFaviconDatabasePath :: (IsFaviconDatabase o) => T.Text -> IO (GValueConstruct o)
constructFaviconDatabasePath val = constructObjectPropertyString "path" (Just val)
clearFaviconDatabasePath :: (MonadIO m, IsFaviconDatabase o) => o -> m ()
clearFaviconDatabasePath obj = liftIO $ setObjectPropertyString obj "path" (Nothing :: Maybe T.Text)
data FaviconDatabasePathPropertyInfo
instance AttrInfo FaviconDatabasePathPropertyInfo where
type AttrAllowedOps FaviconDatabasePathPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint FaviconDatabasePathPropertyInfo = (~) T.Text
type AttrBaseTypeConstraint FaviconDatabasePathPropertyInfo = IsFaviconDatabase
type AttrGetType FaviconDatabasePathPropertyInfo = T.Text
type AttrLabel FaviconDatabasePathPropertyInfo = "path"
type AttrOrigin FaviconDatabasePathPropertyInfo = FaviconDatabase
attrGet _ = getFaviconDatabasePath
attrSet _ = setFaviconDatabasePath
attrConstruct _ = constructFaviconDatabasePath
attrClear _ = clearFaviconDatabasePath
instance O.HasAttributeList FaviconDatabase
type instance O.AttributeList FaviconDatabase = FaviconDatabaseAttributeList
type FaviconDatabaseAttributeList = ('[ '("path", FaviconDatabasePathPropertyInfo)] :: [(Symbol, *)])
faviconDatabasePath :: AttrLabelProxy "path"
faviconDatabasePath = AttrLabelProxy
data FaviconDatabaseIconLoadedSignalInfo
instance SignalInfo FaviconDatabaseIconLoadedSignalInfo where
type HaskellCallbackType FaviconDatabaseIconLoadedSignalInfo = FaviconDatabaseIconLoadedCallback
connectSignal _ = connectFaviconDatabaseIconLoaded
type instance O.SignalList FaviconDatabase = FaviconDatabaseSignalList
type FaviconDatabaseSignalList = ('[ '("iconLoaded", FaviconDatabaseIconLoadedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
foreign import ccall "webkit_favicon_database_clear" webkit_favicon_database_clear ::
Ptr FaviconDatabase ->
IO ()
faviconDatabaseClear ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a) =>
a
-> m ()
faviconDatabaseClear database = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
webkit_favicon_database_clear database'
touchManagedPtr database
return ()
data FaviconDatabaseClearMethodInfo
instance (signature ~ (m ()), MonadIO m, IsFaviconDatabase a) => O.MethodInfo FaviconDatabaseClearMethodInfo a signature where
overloadedMethod _ = faviconDatabaseClear
foreign import ccall "webkit_favicon_database_get_favicon_pixbuf" webkit_favicon_database_get_favicon_pixbuf ::
Ptr FaviconDatabase ->
CString ->
Word32 ->
Word32 ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
faviconDatabaseGetFaviconPixbuf ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> Word32
-> Word32
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
faviconDatabaseGetFaviconPixbuf database pageUri width height cancellable callback = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
pageUri' <- textToCString pageUri
maybeCancellable <- case cancellable of
Nothing -> return nullPtr
Just jCancellable -> do
jCancellable' <- unsafeManagedPtrCastPtr jCancellable
return jCancellable'
ptrcallback <- callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
maybeCallback <- case callback of
Nothing -> return (castPtrToFunPtr nullPtr)
Just jCallback -> do
jCallback' <- Gio.Callbacks.mk_AsyncReadyCallback (Gio.Callbacks.wrap_AsyncReadyCallback (Just ptrcallback) (Gio.Callbacks.drop_closures_AsyncReadyCallback jCallback))
poke ptrcallback jCallback'
return jCallback'
let userData = nullPtr
webkit_favicon_database_get_favicon_pixbuf database' pageUri' width height maybeCancellable maybeCallback userData
touchManagedPtr database
whenJust cancellable touchManagedPtr
freeMem pageUri'
return ()
data FaviconDatabaseGetFaviconPixbufMethodInfo
instance (signature ~ (T.Text -> Word32 -> Word32 -> Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsFaviconDatabase a, Gio.Cancellable.IsCancellable b) => O.MethodInfo FaviconDatabaseGetFaviconPixbufMethodInfo a signature where
overloadedMethod _ = faviconDatabaseGetFaviconPixbuf
foreign import ccall "webkit_favicon_database_get_favicon_pixbuf_finish" webkit_favicon_database_get_favicon_pixbuf_finish ::
Ptr FaviconDatabase ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO (Ptr GdkPixbuf.Pixbuf.Pixbuf)
faviconDatabaseGetFaviconPixbufFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m GdkPixbuf.Pixbuf.Pixbuf
faviconDatabaseGetFaviconPixbufFinish database result_ = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
result_' <- unsafeManagedPtrCastPtr result_
onException (do
result <- propagateGError $ webkit_favicon_database_get_favicon_pixbuf_finish database' result_'
checkUnexpectedReturnNULL "faviconDatabaseGetFaviconPixbufFinish" result
result' <- (wrapObject GdkPixbuf.Pixbuf.Pixbuf) result
touchManagedPtr database
touchManagedPtr result_
return result'
) (do
return ()
)
data FaviconDatabaseGetFaviconPixbufFinishMethodInfo
instance (signature ~ (b -> m GdkPixbuf.Pixbuf.Pixbuf), MonadIO m, IsFaviconDatabase a, Gio.AsyncResult.IsAsyncResult b) => O.MethodInfo FaviconDatabaseGetFaviconPixbufFinishMethodInfo a signature where
overloadedMethod _ = faviconDatabaseGetFaviconPixbufFinish
foreign import ccall "webkit_favicon_database_get_favicon_uri" webkit_favicon_database_get_favicon_uri ::
Ptr FaviconDatabase ->
CString ->
IO CString
faviconDatabaseGetFaviconUri ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a) =>
a
-> T.Text
-> m T.Text
faviconDatabaseGetFaviconUri database pageUri = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
pageUri' <- textToCString pageUri
result <- webkit_favicon_database_get_favicon_uri database' pageUri'
checkUnexpectedReturnNULL "faviconDatabaseGetFaviconUri" result
result' <- cstringToText result
freeMem result
touchManagedPtr database
freeMem pageUri'
return result'
data FaviconDatabaseGetFaviconUriMethodInfo
instance (signature ~ (T.Text -> m T.Text), MonadIO m, IsFaviconDatabase a) => O.MethodInfo FaviconDatabaseGetFaviconUriMethodInfo a signature where
overloadedMethod _ = faviconDatabaseGetFaviconUri
foreign import ccall "webkit_favicon_database_get_path" webkit_favicon_database_get_path ::
Ptr FaviconDatabase ->
IO CString
faviconDatabaseGetPath ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a) =>
a
-> m T.Text
faviconDatabaseGetPath database = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
result <- webkit_favicon_database_get_path database'
checkUnexpectedReturnNULL "faviconDatabaseGetPath" result
result' <- cstringToText result
touchManagedPtr database
return result'
data FaviconDatabaseGetPathMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsFaviconDatabase a) => O.MethodInfo FaviconDatabaseGetPathMethodInfo a signature where
overloadedMethod _ = faviconDatabaseGetPath
foreign import ccall "webkit_favicon_database_set_path" webkit_favicon_database_set_path ::
Ptr FaviconDatabase ->
CString ->
IO ()
faviconDatabaseSetPath ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a) =>
a
-> Maybe (T.Text)
-> m ()
faviconDatabaseSetPath database path = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
maybePath <- case path of
Nothing -> return nullPtr
Just jPath -> do
jPath' <- textToCString jPath
return jPath'
webkit_favicon_database_set_path database' maybePath
touchManagedPtr database
freeMem maybePath
return ()
data FaviconDatabaseSetPathMethodInfo
instance (signature ~ (Maybe (T.Text) -> m ()), MonadIO m, IsFaviconDatabase a) => O.MethodInfo FaviconDatabaseSetPathMethodInfo a signature where
overloadedMethod _ = faviconDatabaseSetPath
foreign import ccall "webkit_favicon_database_try_get_favicon_pixbuf" webkit_favicon_database_try_get_favicon_pixbuf ::
Ptr FaviconDatabase ->
CString ->
Word32 ->
Word32 ->
IO (Ptr GdkPixbuf.Pixbuf.Pixbuf)
faviconDatabaseTryGetFaviconPixbuf ::
(B.CallStack.HasCallStack, MonadIO m, IsFaviconDatabase a) =>
a
-> T.Text
-> Word32
-> Word32
-> m GdkPixbuf.Pixbuf.Pixbuf
faviconDatabaseTryGetFaviconPixbuf database pageUri width height = liftIO $ do
database' <- unsafeManagedPtrCastPtr database
pageUri' <- textToCString pageUri
result <- webkit_favicon_database_try_get_favicon_pixbuf database' pageUri' width height
checkUnexpectedReturnNULL "faviconDatabaseTryGetFaviconPixbuf" result
result' <- (wrapObject GdkPixbuf.Pixbuf.Pixbuf) result
touchManagedPtr database
freeMem pageUri'
return result'
data FaviconDatabaseTryGetFaviconPixbufMethodInfo
instance (signature ~ (T.Text -> Word32 -> Word32 -> m GdkPixbuf.Pixbuf.Pixbuf), MonadIO m, IsFaviconDatabase a) => O.MethodInfo FaviconDatabaseTryGetFaviconPixbufMethodInfo a signature where
overloadedMethod _ = faviconDatabaseTryGetFaviconPixbuf