packages feed

gi-notify 0.2.31.11 → 0.2.31.12

raw patch · 12 files changed

+1531/−1218 lines, 12 filesdep ~gi-gdkpixbufdep ~gi-glibdep ~gi-gobject

Dependency ranges changed: gi-gdkpixbuf, gi-glib, gi-gobject, haskell-gi-base

Files

GI/Notify.hs view
@@ -1,1001 +1,34 @@--- Generated code.--{-# OPTIONS_GHC -fno-warn-unused-imports #-}--{-# LANGUAGE ForeignFunctionInterface, ConstraintKinds,-    TypeFamilies, MultiParamTypeClasses, KindSignatures,-    FlexibleInstances, UndecidableInstances, DataKinds,-    OverloadedStrings, NegativeLiterals, FlexibleContexts #-}--module GI.Notify where--import Prelude ()-import Data.GI.Base.ShortPrelude-import Data.Char-import Data.Int-import Data.Word-import qualified Data.ByteString.Char8 as B-import Data.ByteString.Char8 (ByteString)-import qualified Data.Map as Map-import Foreign.C-import Foreign.Ptr-import Foreign.ForeignPtr-import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)-import Foreign.Storable (peek, poke, sizeOf)-import Control.Applicative ((<$>))-import Control.Exception (onException)-import Control.Monad.IO.Class-import qualified Data.Text as T--import Data.GI.Base.Attributes hiding (get, set)-import Data.GI.Base.BasicTypes-import Data.GI.Base.BasicConversions-import Data.GI.Base.Closure-import Data.GI.Base.GError-import Data.GI.Base.GHashTable-import Data.GI.Base.GParamSpec-import Data.GI.Base.GVariant-import Data.GI.Base.GValue-import Data.GI.Base.ManagedPtr-import Data.GI.Base.Overloading-import Data.GI.Base.Properties hiding (new)-import Data.GI.Base.Signals (SignalConnectMode(..), connectSignalFunPtr, SignalHandlerId)-import Data.GI.Base.Utils--import qualified GI.GLib as GLib-import qualified GI.GLibAttributes as GLibA-import qualified GI.GObject as GObject-import qualified GI.GObjectAttributes as GObjectA-import qualified GI.GdkPixbuf as GdkPixbuf-import qualified GI.GdkPixbufAttributes as GdkPixbufA---- callback ActionCallback-actionCallbackClosure :: ActionCallback -> IO Closure-actionCallbackClosure cb = newCClosure =<< mkActionCallback wrapped-    where wrapped = actionCallbackWrapper Nothing cb--type ActionCallbackC =-    Ptr Notification ->-    CString ->-    Ptr () ->-    IO ()--foreign import ccall "wrapper"-    mkActionCallback :: ActionCallbackC -> IO (FunPtr ActionCallbackC)--type ActionCallback =-    Notification ->-    T.Text ->-    IO ()--noActionCallback :: Maybe ActionCallback-noActionCallback = Nothing--actionCallbackWrapper ::-    Maybe (Ptr (FunPtr (ActionCallbackC))) ->-    ActionCallback ->-    Ptr Notification ->-    CString ->-    Ptr () ->-    IO ()-actionCallbackWrapper funptrptr _cb notification action _ = do-    notification' <- (newObject Notification) notification-    action' <- cstringToText action-    _cb  notification' action'-    maybeReleaseFunPtr funptrptr---- object Notification -newtype Notification = Notification (ForeignPtr Notification)-noNotification :: Maybe Notification-noNotification = Nothing--foreign import ccall "notify_notification_get_type"-    c_notify_notification_get_type :: IO GType--type instance ParentTypes Notification = '[GObject.Object]--instance GObject Notification where-    gobjectIsInitiallyUnowned _ = False-    gobjectType _ = c_notify_notification_get_type-    --class GObject o => NotificationK o-instance (GObject o, IsDescendantOf Notification o) => NotificationK o--toNotification :: NotificationK o => o -> IO Notification-toNotification = unsafeCastTo Notification---- method Notification::new--- method type : Constructor--- Args : [Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TInterface "Notify" "Notification"--- throws : False--- Skip return : False--foreign import ccall "notify_notification_new" notify_notification_new :: -    CString ->                              -- summary : TBasicType TUTF8-    CString ->                              -- body : TBasicType TUTF8-    CString ->                              -- icon : TBasicType TUTF8-    IO (Ptr Notification)---notificationNew ::-    (MonadIO m) =>-    T.Text ->                               -- summary-    Maybe (T.Text) ->                       -- body-    Maybe (T.Text) ->                       -- icon-    m Notification-notificationNew summary body icon = liftIO $ do-    summary' <- textToCString summary-    maybeBody <- case body of-        Nothing -> return nullPtr-        Just jBody -> do-            jBody' <- textToCString jBody-            return jBody'-    maybeIcon <- case icon of-        Nothing -> return nullPtr-        Just jIcon -> do-            jIcon' <- textToCString jIcon-            return jIcon'-    result <- notify_notification_new summary' maybeBody maybeIcon-    checkUnexpectedReturnNULL "notify_notification_new" result-    result' <- (wrapObject Notification) result-    freeMem summary'-    freeMem maybeBody-    freeMem maybeIcon-    return result'---- method Notification::add_action--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "action", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Notify" "ActionCallback", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 4, argDestroy = 5, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "free_func", argType = TInterface "GLib" "DestroyNotify", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "action", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Notify" "ActionCallback", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 4, argDestroy = 5, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_add_action" notify_notification_add_action :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- action : TBasicType TUTF8-    CString ->                              -- label : TBasicType TUTF8-    FunPtr ActionCallbackC ->               -- callback : TInterface "Notify" "ActionCallback"-    Ptr () ->                               -- user_data : TBasicType TVoid-    FunPtr GLib.DestroyNotifyC ->           -- free_func : TInterface "GLib" "DestroyNotify"-    IO ()---notificationAddAction ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- action-    T.Text ->                               -- label-    ActionCallback ->                       -- callback-    m ()-notificationAddAction _obj action label callback = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    action' <- textToCString action-    label' <- textToCString label-    callback' <- mkActionCallback (actionCallbackWrapper Nothing callback)-    let user_data = castFunPtrToPtr callback'-    let free_func = safeFreeFunPtrPtr-    notify_notification_add_action _obj' action' label' callback' user_data free_func-    touchManagedPtr _obj-    freeMem action'-    freeMem label'-    return ()---- method Notification::clear_actions--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_clear_actions" notify_notification_clear_actions :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    IO ()---notificationClearActions ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    m ()-notificationClearActions _obj = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    notify_notification_clear_actions _obj'-    touchManagedPtr _obj-    return ()---- method Notification::clear_hints--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_clear_hints" notify_notification_clear_hints :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    IO ()---notificationClearHints ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    m ()-notificationClearHints _obj = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    notify_notification_clear_hints _obj'-    touchManagedPtr _obj-    return ()---- method Notification::close--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TBoolean--- throws : True--- Skip return : False--foreign import ccall "notify_notification_close" notify_notification_close :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    Ptr (Ptr GError) ->                     -- error-    IO CInt---notificationClose ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    m ()-notificationClose _obj = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    onException (do-        _ <- propagateGError $ notify_notification_close _obj'-        touchManagedPtr _obj-        return ()-     ) (do-        return ()-     )---- method Notification::get_closed_reason--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TInt32--- throws : False--- Skip return : False--foreign import ccall "notify_notification_get_closed_reason" notify_notification_get_closed_reason :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    IO Int32---notificationGetClosedReason ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    m Int32-notificationGetClosedReason _obj = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    result <- notify_notification_get_closed_reason _obj'-    touchManagedPtr _obj-    return result---- method Notification::set_app_name--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_app_name" notify_notification_set_app_name :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- app_name : TBasicType TUTF8-    IO ()---notificationSetAppName ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- app_name-    m ()-notificationSetAppName _obj app_name = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    app_name' <- textToCString app_name-    notify_notification_set_app_name _obj' app_name'-    touchManagedPtr _obj-    freeMem app_name'-    return ()---- method Notification::set_category--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "category", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "category", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_category" notify_notification_set_category :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- category : TBasicType TUTF8-    IO ()---notificationSetCategory ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- category-    m ()-notificationSetCategory _obj category = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    category' <- textToCString category-    notify_notification_set_category _obj' category'-    touchManagedPtr _obj-    freeMem category'-    return ()---- method Notification::set_hint--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint" notify_notification_set_hint :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    Ptr GVariant ->                         -- value : TVariant-    IO ()---notificationSetHint ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Maybe (GVariant) ->                     -- value-    m ()-notificationSetHint _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    maybeValue <- case value of-        Nothing -> return nullPtr-        Just jValue -> do-            let jValue' = unsafeManagedPtrGetPtr jValue-            return jValue'-    notify_notification_set_hint _obj' key' maybeValue-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_hint_byte--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_byte" notify_notification_set_hint_byte :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    Word8 ->                                -- value : TBasicType TUInt8-    IO ()--{-# DEPRECATED notificationSetHintByte ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintByte ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Word8 ->                                -- value-    m ()-notificationSetHintByte _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    notify_notification_set_hint_byte _obj' key' value-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_hint_byte_array--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_byte_array" notify_notification_set_hint_byte_array :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    Word8 ->                                -- value : TBasicType TUInt8-    Word64 ->                               -- len : TBasicType TUInt64-    IO ()--{-# DEPRECATED notificationSetHintByteArray ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintByteArray ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Word8 ->                                -- value-    Word64 ->                               -- len-    m ()-notificationSetHintByteArray _obj key value len = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    notify_notification_set_hint_byte_array _obj' key' value len-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_hint_double--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_double" notify_notification_set_hint_double :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    CDouble ->                              -- value : TBasicType TDouble-    IO ()--{-# DEPRECATED notificationSetHintDouble ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintDouble ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Double ->                               -- value-    m ()-notificationSetHintDouble _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    let value' = realToFrac value-    notify_notification_set_hint_double _obj' key' value'-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_hint_int32--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_int32" notify_notification_set_hint_int32 :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    Int32 ->                                -- value : TBasicType TInt32-    IO ()--{-# DEPRECATED notificationSetHintInt32 ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintInt32 ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Int32 ->                                -- value-    m ()-notificationSetHintInt32 _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    notify_notification_set_hint_int32 _obj' key' value-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_hint_string--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_string" notify_notification_set_hint_string :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    CString ->                              -- value : TBasicType TUTF8-    IO ()--{-# DEPRECATED notificationSetHintString ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintString ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    T.Text ->                               -- value-    m ()-notificationSetHintString _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    value' <- textToCString value-    notify_notification_set_hint_string _obj' key' value'-    touchManagedPtr _obj-    freeMem key'-    freeMem value'-    return ()---- method Notification::set_hint_uint32--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_hint_uint32" notify_notification_set_hint_uint32 :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- key : TBasicType TUTF8-    Word32 ->                               -- value : TBasicType TUInt32-    IO ()--{-# DEPRECATED notificationSetHintUint32 ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}-notificationSetHintUint32 ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- key-    Word32 ->                               -- value-    m ()-notificationSetHintUint32 _obj key value = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    key' <- textToCString key-    notify_notification_set_hint_uint32 _obj' key' value-    touchManagedPtr _obj-    freeMem key'-    return ()---- method Notification::set_icon_from_pixbuf--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_icon_from_pixbuf" notify_notification_set_icon_from_pixbuf :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    Ptr GdkPixbuf.Pixbuf ->                 -- icon : TInterface "GdkPixbuf" "Pixbuf"-    IO ()--{-# DEPRECATED notificationSetIconFromPixbuf ["use notify_notification_set_image_from_pixbuf() instead."]#-}-notificationSetIconFromPixbuf ::-    (MonadIO m, NotificationK a, GdkPixbuf.PixbufK b) =>-    a ->                                    -- _obj-    b ->                                    -- icon-    m ()-notificationSetIconFromPixbuf _obj icon = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    let icon' = unsafeManagedPtrCastPtr icon-    notify_notification_set_icon_from_pixbuf _obj' icon'-    touchManagedPtr _obj-    touchManagedPtr icon-    return ()---- method Notification::set_image_from_pixbuf--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pixbuf", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pixbuf", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_image_from_pixbuf" notify_notification_set_image_from_pixbuf :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    Ptr GdkPixbuf.Pixbuf ->                 -- pixbuf : TInterface "GdkPixbuf" "Pixbuf"-    IO ()---notificationSetImageFromPixbuf ::-    (MonadIO m, NotificationK a, GdkPixbuf.PixbufK b) =>-    a ->                                    -- _obj-    b ->                                    -- pixbuf-    m ()-notificationSetImageFromPixbuf _obj pixbuf = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    let pixbuf' = unsafeManagedPtrCastPtr pixbuf-    notify_notification_set_image_from_pixbuf _obj' pixbuf'-    touchManagedPtr _obj-    touchManagedPtr pixbuf-    return ()---- method Notification::set_timeout--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timeout", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timeout", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_timeout" notify_notification_set_timeout :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    Int32 ->                                -- timeout : TBasicType TInt32-    IO ()---notificationSetTimeout ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    Int32 ->                                -- timeout-    m ()-notificationSetTimeout _obj timeout = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    notify_notification_set_timeout _obj' timeout-    touchManagedPtr _obj-    return ()---- method Notification::set_urgency--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "urgency", argType = TInterface "Notify" "Urgency", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "urgency", argType = TInterface "Notify" "Urgency", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_notification_set_urgency" notify_notification_set_urgency :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CUInt ->                                -- urgency : TInterface "Notify" "Urgency"-    IO ()---notificationSetUrgency ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    Urgency ->                              -- urgency-    m ()-notificationSetUrgency _obj urgency = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    let urgency' = (fromIntegral . fromEnum) urgency-    notify_notification_set_urgency _obj' urgency'-    touchManagedPtr _obj-    return ()---- method Notification::show--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TBoolean--- throws : True--- Skip return : False--foreign import ccall "notify_notification_show" notify_notification_show :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    Ptr (Ptr GError) ->                     -- error-    IO CInt---notificationShow ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    m ()-notificationShow _obj = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    onException (do-        _ <- propagateGError $ notify_notification_show _obj'-        touchManagedPtr _obj-        return ()-     ) (do-        return ()-     )---- method Notification::update--- method type : OrdinaryMethod--- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TBoolean--- throws : False--- Skip return : False--foreign import ccall "notify_notification_update" notify_notification_update :: -    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"-    CString ->                              -- summary : TBasicType TUTF8-    CString ->                              -- body : TBasicType TUTF8-    CString ->                              -- icon : TBasicType TUTF8-    IO CInt---notificationUpdate ::-    (MonadIO m, NotificationK a) =>-    a ->                                    -- _obj-    T.Text ->                               -- summary-    Maybe (T.Text) ->                       -- body-    Maybe (T.Text) ->                       -- icon-    m Bool-notificationUpdate _obj summary body icon = liftIO $ do-    let _obj' = unsafeManagedPtrCastPtr _obj-    summary' <- textToCString summary-    maybeBody <- case body of-        Nothing -> return nullPtr-        Just jBody -> do-            jBody' <- textToCString jBody-            return jBody'-    maybeIcon <- case icon of-        Nothing -> return nullPtr-        Just jIcon -> do-            jIcon' <- textToCString jIcon-            return jIcon'-    result <- notify_notification_update _obj' summary' maybeBody maybeIcon-    let result' = (/= 0) result-    touchManagedPtr _obj-    freeMem summary'-    freeMem maybeBody-    freeMem maybeIcon-    return result'---- signal Notification::closed-type NotificationClosedCallback =-    IO ()--noNotificationClosedCallback :: Maybe NotificationClosedCallback-noNotificationClosedCallback = Nothing--type NotificationClosedCallbackC =-    Ptr () ->                               -- object-    Ptr () ->                               -- user_data-    IO ()--foreign import ccall "wrapper"-    mkNotificationClosedCallback :: NotificationClosedCallbackC -> IO (FunPtr NotificationClosedCallbackC)--notificationClosedClosure :: NotificationClosedCallback -> IO Closure-notificationClosedClosure cb = newCClosure =<< mkNotificationClosedCallback wrapped-    where wrapped = notificationClosedCallbackWrapper cb--notificationClosedCallbackWrapper ::-    NotificationClosedCallback ->-    Ptr () ->-    Ptr () ->-    IO ()-notificationClosedCallbackWrapper _cb _ _ = do-    _cb --onNotificationClosed :: (GObject a, MonadIO m) => a -> NotificationClosedCallback -> m SignalHandlerId-onNotificationClosed obj cb = liftIO $ connectNotificationClosed obj cb SignalConnectBefore-afterNotificationClosed :: (GObject a, MonadIO m) => a -> NotificationClosedCallback -> m SignalHandlerId-afterNotificationClosed obj cb = connectNotificationClosed obj cb SignalConnectAfter--connectNotificationClosed :: (GObject a, MonadIO m) =>-                             a -> NotificationClosedCallback -> SignalConnectMode -> m SignalHandlerId-connectNotificationClosed obj cb after = liftIO $ do-    cb' <- mkNotificationClosedCallback (notificationClosedCallbackWrapper cb)-    connectSignalFunPtr obj "closed" cb' after---- Enum Urgency--data Urgency = -      UrgencyLow-    | UrgencyNormal-    | UrgencyCritical-    | AnotherUrgency Int-    deriving (Show, Eq)--instance Enum Urgency where-    fromEnum UrgencyLow = 0-    fromEnum UrgencyNormal = 1-    fromEnum UrgencyCritical = 2-    fromEnum (AnotherUrgency k) = k--    toEnum 0 = UrgencyLow-    toEnum 1 = UrgencyNormal-    toEnum 2 = UrgencyCritical-    toEnum k = AnotherUrgency k---- constant _EXPIRES_DEFAULT--_EXPIRES_DEFAULT :: Int32-_EXPIRES_DEFAULT = -1--- constant _EXPIRES_NEVER--_EXPIRES_NEVER :: Int32-_EXPIRES_NEVER = 0--- constant _VERSION_MAJOR--_VERSION_MAJOR :: Int32-_VERSION_MAJOR = 0--- constant _VERSION_MICRO--_VERSION_MICRO :: Int32-_VERSION_MICRO = 6--- constant _VERSION_MINOR--_VERSION_MINOR :: Int32-_VERSION_MINOR = 7--- function notify_get_app_name--- Args : []--- Lengths : []--- hInArgs : []--- returnType : TBasicType TUTF8--- throws : False--- Skip return : False--foreign import ccall "notify_get_app_name" notify_get_app_name :: -    IO CString---getAppName ::-    (MonadIO m) =>-    m T.Text-getAppName  = liftIO $ do-    result <- notify_get_app_name-    checkUnexpectedReturnNULL "notify_get_app_name" result-    result' <- cstringToText result-    return result'---- function notify_get_server_caps--- Args : []--- Lengths : []--- hInArgs : []--- returnType : TGList (TBasicType TUTF8)--- throws : False--- Skip return : False--foreign import ccall "notify_get_server_caps" notify_get_server_caps :: -    IO (Ptr (GList CString))---getServerCaps ::-    (MonadIO m) =>-    m [T.Text]-getServerCaps  = liftIO $ do-    result <- notify_get_server_caps-    checkUnexpectedReturnNULL "notify_get_server_caps" result-    result' <- unpackGList result-    result'' <- mapM cstringToText result'-    mapGList freeMem result-    g_list_free result-    return result''---- function notify_get_server_info--- Args : [Arg {argName = "ret_name", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_vendor", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_version", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_spec_version", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]--- Lengths : []--- hInArgs : []--- returnType : TBasicType TBoolean--- throws : False--- Skip return : False--foreign import ccall "notify_get_server_info" notify_get_server_info :: -    Ptr CString ->                          -- ret_name : TBasicType TUTF8-    Ptr CString ->                          -- ret_vendor : TBasicType TUTF8-    Ptr CString ->                          -- ret_version : TBasicType TUTF8-    Ptr CString ->                          -- ret_spec_version : TBasicType TUTF8-    IO CInt---getServerInfo ::-    (MonadIO m) =>-    m (Bool,T.Text,T.Text,T.Text,T.Text)-getServerInfo  = liftIO $ do-    ret_name <- allocMem :: IO (Ptr CString)-    ret_vendor <- allocMem :: IO (Ptr CString)-    ret_version <- allocMem :: IO (Ptr CString)-    ret_spec_version <- allocMem :: IO (Ptr CString)-    result <- notify_get_server_info ret_name ret_vendor ret_version ret_spec_version-    let result' = (/= 0) result-    ret_name' <- peek ret_name-    ret_name'' <- cstringToText ret_name'-    freeMem ret_name'-    ret_vendor' <- peek ret_vendor-    ret_vendor'' <- cstringToText ret_vendor'-    freeMem ret_vendor'-    ret_version' <- peek ret_version-    ret_version'' <- cstringToText ret_version'-    freeMem ret_version'-    ret_spec_version' <- peek ret_spec_version-    ret_spec_version'' <- cstringToText ret_spec_version'-    freeMem ret_spec_version'-    freeMem ret_name-    freeMem ret_vendor-    freeMem ret_version-    freeMem ret_spec_version-    return (result', ret_name'', ret_vendor'', ret_version'', ret_spec_version'')---- function notify_init--- Args : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TBoolean--- throws : False--- Skip return : False--foreign import ccall "notify_init" notify_init :: -    CString ->                              -- app_name : TBasicType TUTF8-    IO CInt---init ::-    (MonadIO m) =>-    T.Text ->                               -- app_name-    m Bool-init app_name = liftIO $ do-    app_name' <- textToCString app_name-    result <- notify_init app_name'-    let result' = (/= 0) result-    freeMem app_name'-    return result'---- function notify_is_initted--- Args : []--- Lengths : []--- hInArgs : []--- returnType : TBasicType TBoolean--- throws : False--- Skip return : False--foreign import ccall "notify_is_initted" notify_is_initted :: -    IO CInt---isInitted ::-    (MonadIO m) =>-    m Bool-isInitted  = liftIO $ do-    result <- notify_is_initted-    let result' = (/= 0) result-    return result'---- function notify_set_app_name--- Args : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- Lengths : []--- hInArgs : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_set_app_name" notify_set_app_name :: -    CString ->                              -- app_name : TBasicType TUTF8-    IO ()---setAppName ::-    (MonadIO m) =>-    T.Text ->                               -- app_name-    m ()-setAppName app_name = liftIO $ do-    app_name' <- textToCString app_name-    notify_set_app_name app_name'-    freeMem app_name'-    return ()---- function notify_uninit--- Args : []--- Lengths : []--- hInArgs : []--- returnType : TBasicType TVoid--- throws : False--- Skip return : False--foreign import ccall "notify_uninit" notify_uninit :: -    IO ()---uninit ::-    (MonadIO m) =>-    m ()-uninit  = liftIO $ do-    notify_uninit-    return ()++{- |+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.Notify+    (     module GI.Notify.Callbacks              ,+    module GI.Notify.Constants              ,+    module GI.Notify.Enums                  ,+    module GI.Notify.Functions              ,+    module GI.Notify.Objects                ,+++    ) where++import GI.Notify.Callbacks+import GI.Notify.Constants+import GI.Notify.Enums+import GI.Notify.Functions+import GI.Notify.Objects++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.Notify.Types+import GI.Notify.Callbacks+ 
+ GI/Notify/Callbacks.hs view
@@ -0,0 +1,70 @@++{- |+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.Notify.Callbacks+    ( ++ -- * Signals+-- ** ActionCallback+    ActionCallback                          ,+    ActionCallbackC                         ,+    actionCallbackClosure                   ,+    actionCallbackWrapper                   ,+    mkActionCallback                        ,+    noActionCallback                        ,+++++    ) 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.Notify.Types+++-- callback ActionCallback+actionCallbackClosure :: ActionCallback -> IO Closure+actionCallbackClosure cb = newCClosure =<< mkActionCallback wrapped+    where wrapped = actionCallbackWrapper Nothing cb++type ActionCallbackC =+    Ptr Notification ->+    CString ->+    Ptr () ->+    IO ()++foreign import ccall "wrapper"+    mkActionCallback :: ActionCallbackC -> IO (FunPtr ActionCallbackC)++type ActionCallback =+    Notification ->+    T.Text ->+    IO ()++noActionCallback :: Maybe ActionCallback+noActionCallback = Nothing++actionCallbackWrapper ::+    Maybe (Ptr (FunPtr (ActionCallbackC))) ->+    ActionCallback ->+    Ptr Notification ->+    CString ->+    Ptr () ->+    IO ()+actionCallbackWrapper funptrptr _cb notification action _ = do+    notification' <- (newObject Notification) notification+    action' <- cstringToText action+    _cb  notification' action'+    maybeReleaseFunPtr funptrptr++
+ GI/Notify/Constants.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}++{- |+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.Notify.Constants+    ( +    pattern VERSION_MINOR                   ,+    pattern VERSION_MICRO                   ,+    pattern VERSION_MAJOR                   ,+    pattern EXPIRES_NEVER                   ,+    pattern EXPIRES_DEFAULT                 ,++    ) 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.Notify.Types+import GI.Notify.Callbacks+++pattern VERSION_MINOR = 7 :: Int32+++pattern VERSION_MICRO = 6 :: Int32+++pattern VERSION_MAJOR = 0 :: Int32+++pattern EXPIRES_NEVER = 0 :: Int32+++pattern EXPIRES_DEFAULT = -1 :: Int32++
+ GI/Notify/Enums.hs view
@@ -0,0 +1,47 @@++{- |+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.Notify.Enums+    ( ++-- * Exported types+    Urgency(..)                             ,+++    ) 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+++++-- Enum Urgency++data Urgency = +      UrgencyLow+    | UrgencyNormal+    | UrgencyCritical+    | AnotherUrgency Int+    deriving (Show, Eq)++instance Enum Urgency where+    fromEnum UrgencyLow = 0+    fromEnum UrgencyNormal = 1+    fromEnum UrgencyCritical = 2+    fromEnum (AnotherUrgency k) = k++    toEnum 0 = UrgencyLow+    toEnum 1 = UrgencyNormal+    toEnum 2 = UrgencyCritical+    toEnum k = AnotherUrgency k++
+ GI/Notify/Functions.hs view
@@ -0,0 +1,236 @@++{- |+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.Notify.Functions+    ( ++ -- * Methods+-- ** getAppName+    getAppName                              ,+++-- ** getServerCaps+    getServerCaps                           ,+++-- ** getServerInfo+    getServerInfo                           ,+++-- ** init+    init                                    ,+++-- ** isInitted+    isInitted                               ,+++-- ** setAppName+    setAppName                              ,+++-- ** uninit+    uninit                                  ,+++++    ) 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.Notify.Types+import GI.Notify.Callbacks++-- function notify_uninit+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_uninit" notify_uninit :: +    IO ()+++uninit ::+    (MonadIO m) =>+    m ()+uninit  = liftIO $ do+    notify_uninit+    return ()+++-- function notify_set_app_name+-- Args : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_set_app_name" notify_set_app_name :: +    CString ->                              -- app_name : TBasicType TUTF8+    IO ()+++setAppName ::+    (MonadIO m) =>+    T.Text ->                               -- app_name+    m ()+setAppName app_name = liftIO $ do+    app_name' <- textToCString app_name+    notify_set_app_name app_name'+    freeMem app_name'+    return ()+++-- function notify_is_initted+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "notify_is_initted" notify_is_initted :: +    IO CInt+++isInitted ::+    (MonadIO m) =>+    m Bool+isInitted  = liftIO $ do+    result <- notify_is_initted+    let result' = (/= 0) result+    return result'+++-- function notify_init+-- Args : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "notify_init" notify_init :: +    CString ->                              -- app_name : TBasicType TUTF8+    IO CInt+++init ::+    (MonadIO m) =>+    T.Text ->                               -- app_name+    m Bool+init app_name = liftIO $ do+    app_name' <- textToCString app_name+    result <- notify_init app_name'+    let result' = (/= 0) result+    freeMem app_name'+    return result'+++-- function notify_get_server_info+-- Args : [Arg {argName = "ret_name", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_vendor", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_version", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "ret_spec_version", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "notify_get_server_info" notify_get_server_info :: +    Ptr CString ->                          -- ret_name : TBasicType TUTF8+    Ptr CString ->                          -- ret_vendor : TBasicType TUTF8+    Ptr CString ->                          -- ret_version : TBasicType TUTF8+    Ptr CString ->                          -- ret_spec_version : TBasicType TUTF8+    IO CInt+++getServerInfo ::+    (MonadIO m) =>+    m (Bool,T.Text,T.Text,T.Text,T.Text)+getServerInfo  = liftIO $ do+    ret_name <- allocMem :: IO (Ptr CString)+    ret_vendor <- allocMem :: IO (Ptr CString)+    ret_version <- allocMem :: IO (Ptr CString)+    ret_spec_version <- allocMem :: IO (Ptr CString)+    result <- notify_get_server_info ret_name ret_vendor ret_version ret_spec_version+    let result' = (/= 0) result+    ret_name' <- peek ret_name+    ret_name'' <- cstringToText ret_name'+    freeMem ret_name'+    ret_vendor' <- peek ret_vendor+    ret_vendor'' <- cstringToText ret_vendor'+    freeMem ret_vendor'+    ret_version' <- peek ret_version+    ret_version'' <- cstringToText ret_version'+    freeMem ret_version'+    ret_spec_version' <- peek ret_spec_version+    ret_spec_version'' <- cstringToText ret_spec_version'+    freeMem ret_spec_version'+    freeMem ret_name+    freeMem ret_vendor+    freeMem ret_version+    freeMem ret_spec_version+    return (result', ret_name'', ret_vendor'', ret_version'', ret_spec_version'')+++-- function notify_get_server_caps+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TGList (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "notify_get_server_caps" notify_get_server_caps :: +    IO (Ptr (GList CString))+++getServerCaps ::+    (MonadIO m) =>+    m [T.Text]+getServerCaps  = liftIO $ do+    result <- notify_get_server_caps+    checkUnexpectedReturnNULL "notify_get_server_caps" result+    result' <- unpackGList result+    result'' <- mapM cstringToText result'+    mapGList freeMem result+    g_list_free result+    return result''+++-- function notify_get_app_name+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "notify_get_app_name" notify_get_app_name :: +    IO CString+++getAppName ::+    (MonadIO m) =>+    m T.Text+getAppName  = liftIO $ do+    result <- notify_get_app_name+    checkUnexpectedReturnNULL "notify_get_app_name" result+    result' <- cstringToText result+    return result'+++
+ GI/Notify/Objects.hs view
@@ -0,0 +1,26 @@++{- |+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.Notify.Objects+    (     module GI.Notify.Objects.Notification   ,+++    ) where++import GI.Notify.Objects.Notification++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.Notify.Types+import GI.Notify.Callbacks++
+ GI/Notify/Objects/Notification.hs view
@@ -0,0 +1,1027 @@++{- |+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.Notify.Objects.Notification+    ( ++-- * Exported types+    Notification(..)                        ,+    NotificationK                           ,+    toNotification                          ,+    noNotification                          ,+++ -- * Methods+-- ** notificationAddAction+    notificationAddAction                   ,+++-- ** notificationClearActions+    notificationClearActions                ,+++-- ** notificationClearHints+    notificationClearHints                  ,+++-- ** notificationClose+    notificationClose                       ,+++-- ** notificationGetClosedReason+    notificationGetClosedReason             ,+++-- ** notificationNew+    notificationNew                         ,+++-- ** notificationSetAppName+    notificationSetAppName                  ,+++-- ** notificationSetCategory+    notificationSetCategory                 ,+++-- ** notificationSetHint+    notificationSetHint                     ,+++-- ** notificationSetHintByte+    notificationSetHintByte                 ,+++-- ** notificationSetHintByteArray+    notificationSetHintByteArray            ,+++-- ** notificationSetHintDouble+    notificationSetHintDouble               ,+++-- ** notificationSetHintInt32+    notificationSetHintInt32                ,+++-- ** notificationSetHintString+    notificationSetHintString               ,+++-- ** notificationSetHintUint32+    notificationSetHintUint32               ,+++-- ** notificationSetIconFromPixbuf+    notificationSetIconFromPixbuf           ,+++-- ** notificationSetImageFromPixbuf+    notificationSetImageFromPixbuf          ,+++-- ** notificationSetTimeout+    notificationSetTimeout                  ,+++-- ** notificationSetUrgency+    notificationSetUrgency                  ,+++-- ** notificationShow+    notificationShow                        ,+++-- ** notificationUpdate+    notificationUpdate                      ,+++++ -- * Properties+-- ** AppName+    NotificationAppNamePropertyInfo         ,+    constructNotificationAppName            ,+    getNotificationAppName                  ,+    setNotificationAppName                  ,+++-- ** Body+    NotificationBodyPropertyInfo            ,+    constructNotificationBody               ,+    getNotificationBody                     ,+    setNotificationBody                     ,+++-- ** ClosedReason+    NotificationClosedReasonPropertyInfo    ,+    getNotificationClosedReason             ,+++-- ** IconName+    NotificationIconNamePropertyInfo        ,+    constructNotificationIconName           ,+    getNotificationIconName                 ,+    setNotificationIconName                 ,+++-- ** Id+    NotificationIdPropertyInfo              ,+    constructNotificationId                 ,+    getNotificationId                       ,+    setNotificationId                       ,+++-- ** Summary+    NotificationSummaryPropertyInfo         ,+    constructNotificationSummary            ,+    getNotificationSummary                  ,+    setNotificationSummary                  ,+++++ -- * Signals+-- ** Closed+    NotificationClosedCallback              ,+    NotificationClosedCallbackC             ,+    NotificationClosedSignalInfo            ,+    afterNotificationClosed                 ,+    mkNotificationClosedCallback            ,+    noNotificationClosedCallback            ,+    notificationClosedCallbackWrapper       ,+    notificationClosedClosure               ,+    onNotificationClosed                    ,+++++    ) 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.Notify.Types+import GI.Notify.Callbacks+import qualified GI.GLib as GLib+import qualified GI.GObject as GObject+import qualified GI.GdkPixbuf as GdkPixbuf++newtype Notification = Notification (ForeignPtr Notification)+foreign import ccall "notify_notification_get_type"+    c_notify_notification_get_type :: IO GType++type instance ParentTypes Notification = NotificationParentTypes+type NotificationParentTypes = '[GObject.Object]++instance GObject Notification where+    gobjectIsInitiallyUnowned _ = False+    gobjectType _ = c_notify_notification_get_type+    ++class GObject o => NotificationK o+instance (GObject o, IsDescendantOf Notification o) => NotificationK o++toNotification :: NotificationK o => o -> IO Notification+toNotification = unsafeCastTo Notification++noNotification :: Maybe Notification+noNotification = Nothing++-- signal Notification::closed+type NotificationClosedCallback =+    IO ()++noNotificationClosedCallback :: Maybe NotificationClosedCallback+noNotificationClosedCallback = Nothing++type NotificationClosedCallbackC =+    Ptr () ->                               -- object+    Ptr () ->                               -- user_data+    IO ()++foreign import ccall "wrapper"+    mkNotificationClosedCallback :: NotificationClosedCallbackC -> IO (FunPtr NotificationClosedCallbackC)++notificationClosedClosure :: NotificationClosedCallback -> IO Closure+notificationClosedClosure cb = newCClosure =<< mkNotificationClosedCallback wrapped+    where wrapped = notificationClosedCallbackWrapper cb++notificationClosedCallbackWrapper ::+    NotificationClosedCallback ->+    Ptr () ->+    Ptr () ->+    IO ()+notificationClosedCallbackWrapper _cb _ _ = do+    _cb ++onNotificationClosed :: (GObject a, MonadIO m) => a -> NotificationClosedCallback -> m SignalHandlerId+onNotificationClosed obj cb = liftIO $ connectNotificationClosed obj cb SignalConnectBefore+afterNotificationClosed :: (GObject a, MonadIO m) => a -> NotificationClosedCallback -> m SignalHandlerId+afterNotificationClosed obj cb = connectNotificationClosed obj cb SignalConnectAfter++connectNotificationClosed :: (GObject a, MonadIO m) =>+                             a -> NotificationClosedCallback -> SignalConnectMode -> m SignalHandlerId+connectNotificationClosed obj cb after = liftIO $ do+    cb' <- mkNotificationClosedCallback (notificationClosedCallbackWrapper cb)+    connectSignalFunPtr obj "closed" cb' after++-- VVV Prop "app-name"+   -- Type: TBasicType TUTF8+   -- Flags: [PropertyReadable,PropertyWritable]++getNotificationAppName :: (MonadIO m, NotificationK o) => o -> m T.Text+getNotificationAppName obj = liftIO $ getObjectPropertyString obj "app-name"++setNotificationAppName :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()+setNotificationAppName obj val = liftIO $ setObjectPropertyString obj "app-name" val++constructNotificationAppName :: T.Text -> IO ([Char], GValue)+constructNotificationAppName val = constructObjectPropertyString "app-name" val++data NotificationAppNamePropertyInfo+instance AttrInfo NotificationAppNamePropertyInfo where+    type AttrAllowedOps NotificationAppNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]+    type AttrSetTypeConstraint NotificationAppNamePropertyInfo = (~) T.Text+    type AttrBaseTypeConstraint NotificationAppNamePropertyInfo = NotificationK+    type AttrGetType NotificationAppNamePropertyInfo = T.Text+    type AttrLabel NotificationAppNamePropertyInfo = "Notification::app-name"+    attrGet _ = getNotificationAppName+    attrSet _ = setNotificationAppName+    attrConstruct _ = constructNotificationAppName++-- VVV Prop "body"+   -- Type: TBasicType TUTF8+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]++getNotificationBody :: (MonadIO m, NotificationK o) => o -> m T.Text+getNotificationBody obj = liftIO $ getObjectPropertyString obj "body"++setNotificationBody :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()+setNotificationBody obj val = liftIO $ setObjectPropertyString obj "body" val++constructNotificationBody :: T.Text -> IO ([Char], GValue)+constructNotificationBody val = constructObjectPropertyString "body" val++data NotificationBodyPropertyInfo+instance AttrInfo NotificationBodyPropertyInfo where+    type AttrAllowedOps NotificationBodyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]+    type AttrSetTypeConstraint NotificationBodyPropertyInfo = (~) T.Text+    type AttrBaseTypeConstraint NotificationBodyPropertyInfo = NotificationK+    type AttrGetType NotificationBodyPropertyInfo = T.Text+    type AttrLabel NotificationBodyPropertyInfo = "Notification::body"+    attrGet _ = getNotificationBody+    attrSet _ = setNotificationBody+    attrConstruct _ = constructNotificationBody++-- VVV Prop "closed-reason"+   -- Type: TBasicType TInt32+   -- Flags: [PropertyReadable]++getNotificationClosedReason :: (MonadIO m, NotificationK o) => o -> m Int32+getNotificationClosedReason obj = liftIO $ getObjectPropertyCInt obj "closed-reason"++data NotificationClosedReasonPropertyInfo+instance AttrInfo NotificationClosedReasonPropertyInfo where+    type AttrAllowedOps NotificationClosedReasonPropertyInfo = '[ 'AttrGet]+    type AttrSetTypeConstraint NotificationClosedReasonPropertyInfo = (~) ()+    type AttrBaseTypeConstraint NotificationClosedReasonPropertyInfo = NotificationK+    type AttrGetType NotificationClosedReasonPropertyInfo = Int32+    type AttrLabel NotificationClosedReasonPropertyInfo = "Notification::closed-reason"+    attrGet _ = getNotificationClosedReason+    attrSet _ = undefined+    attrConstruct _ = undefined++-- VVV Prop "icon-name"+   -- Type: TBasicType TUTF8+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]++getNotificationIconName :: (MonadIO m, NotificationK o) => o -> m T.Text+getNotificationIconName obj = liftIO $ getObjectPropertyString obj "icon-name"++setNotificationIconName :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()+setNotificationIconName obj val = liftIO $ setObjectPropertyString obj "icon-name" val++constructNotificationIconName :: T.Text -> IO ([Char], GValue)+constructNotificationIconName val = constructObjectPropertyString "icon-name" val++data NotificationIconNamePropertyInfo+instance AttrInfo NotificationIconNamePropertyInfo where+    type AttrAllowedOps NotificationIconNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]+    type AttrSetTypeConstraint NotificationIconNamePropertyInfo = (~) T.Text+    type AttrBaseTypeConstraint NotificationIconNamePropertyInfo = NotificationK+    type AttrGetType NotificationIconNamePropertyInfo = T.Text+    type AttrLabel NotificationIconNamePropertyInfo = "Notification::icon-name"+    attrGet _ = getNotificationIconName+    attrSet _ = setNotificationIconName+    attrConstruct _ = constructNotificationIconName++-- VVV Prop "id"+   -- Type: TBasicType TInt32+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]++getNotificationId :: (MonadIO m, NotificationK o) => o -> m Int32+getNotificationId obj = liftIO $ getObjectPropertyCInt obj "id"++setNotificationId :: (MonadIO m, NotificationK o) => o -> Int32 -> m ()+setNotificationId obj val = liftIO $ setObjectPropertyCInt obj "id" val++constructNotificationId :: Int32 -> IO ([Char], GValue)+constructNotificationId val = constructObjectPropertyCInt "id" val++data NotificationIdPropertyInfo+instance AttrInfo NotificationIdPropertyInfo where+    type AttrAllowedOps NotificationIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]+    type AttrSetTypeConstraint NotificationIdPropertyInfo = (~) Int32+    type AttrBaseTypeConstraint NotificationIdPropertyInfo = NotificationK+    type AttrGetType NotificationIdPropertyInfo = Int32+    type AttrLabel NotificationIdPropertyInfo = "Notification::id"+    attrGet _ = getNotificationId+    attrSet _ = setNotificationId+    attrConstruct _ = constructNotificationId++-- VVV Prop "summary"+   -- Type: TBasicType TUTF8+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]++getNotificationSummary :: (MonadIO m, NotificationK o) => o -> m T.Text+getNotificationSummary obj = liftIO $ getObjectPropertyString obj "summary"++setNotificationSummary :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()+setNotificationSummary obj val = liftIO $ setObjectPropertyString obj "summary" val++constructNotificationSummary :: T.Text -> IO ([Char], GValue)+constructNotificationSummary val = constructObjectPropertyString "summary" val++data NotificationSummaryPropertyInfo+instance AttrInfo NotificationSummaryPropertyInfo where+    type AttrAllowedOps NotificationSummaryPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]+    type AttrSetTypeConstraint NotificationSummaryPropertyInfo = (~) T.Text+    type AttrBaseTypeConstraint NotificationSummaryPropertyInfo = NotificationK+    type AttrGetType NotificationSummaryPropertyInfo = T.Text+    type AttrLabel NotificationSummaryPropertyInfo = "Notification::summary"+    attrGet _ = getNotificationSummary+    attrSet _ = setNotificationSummary+    attrConstruct _ = constructNotificationSummary++type instance AttributeList Notification = NotificationAttributeList+type NotificationAttributeList = ('[ '("app-name", NotificationAppNamePropertyInfo), '("body", NotificationBodyPropertyInfo), '("closed-reason", NotificationClosedReasonPropertyInfo), '("icon-name", NotificationIconNamePropertyInfo), '("id", NotificationIdPropertyInfo), '("summary", NotificationSummaryPropertyInfo)] :: [(Symbol, *)])++data NotificationClosedSignalInfo+instance SignalInfo NotificationClosedSignalInfo where+    type HaskellCallbackType NotificationClosedSignalInfo = NotificationClosedCallback+    connectSignal _ = connectNotificationClosed++type instance SignalList Notification = NotificationSignalList+type NotificationSignalList = ('[ '("closed", NotificationClosedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- method Notification::new+-- method type : Constructor+-- Args : [Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Notify" "Notification"+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_new" notify_notification_new :: +    CString ->                              -- summary : TBasicType TUTF8+    CString ->                              -- body : TBasicType TUTF8+    CString ->                              -- icon : TBasicType TUTF8+    IO (Ptr Notification)+++notificationNew ::+    (MonadIO m) =>+    T.Text ->                               -- summary+    Maybe (T.Text) ->                       -- body+    Maybe (T.Text) ->                       -- icon+    m Notification+notificationNew summary body icon = liftIO $ do+    summary' <- textToCString summary+    maybeBody <- case body of+        Nothing -> return nullPtr+        Just jBody -> do+            jBody' <- textToCString jBody+            return jBody'+    maybeIcon <- case icon of+        Nothing -> return nullPtr+        Just jIcon -> do+            jIcon' <- textToCString jIcon+            return jIcon'+    result <- notify_notification_new summary' maybeBody maybeIcon+    checkUnexpectedReturnNULL "notify_notification_new" result+    result' <- (wrapObject Notification) result+    freeMem summary'+    freeMem maybeBody+    freeMem maybeIcon+    return result'++-- method Notification::add_action+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "action", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Notify" "ActionCallback", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 4, argDestroy = 5, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "free_func", argType = TInterface "GLib" "DestroyNotify", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeAsync, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "action", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "callback", argType = TInterface "Notify" "ActionCallback", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeNotified, argClosure = 4, argDestroy = 5, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_add_action" notify_notification_add_action :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- action : TBasicType TUTF8+    CString ->                              -- label : TBasicType TUTF8+    FunPtr ActionCallbackC ->               -- callback : TInterface "Notify" "ActionCallback"+    Ptr () ->                               -- user_data : TBasicType TVoid+    FunPtr GLib.DestroyNotifyC ->           -- free_func : TInterface "GLib" "DestroyNotify"+    IO ()+++notificationAddAction ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- action+    T.Text ->                               -- label+    ActionCallback ->                       -- callback+    m ()+notificationAddAction _obj action label callback = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    action' <- textToCString action+    label' <- textToCString label+    callback' <- mkActionCallback (actionCallbackWrapper Nothing callback)+    let user_data = castFunPtrToPtr callback'+    let free_func = safeFreeFunPtrPtr+    notify_notification_add_action _obj' action' label' callback' user_data free_func+    touchManagedPtr _obj+    freeMem action'+    freeMem label'+    return ()++-- method Notification::clear_actions+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_clear_actions" notify_notification_clear_actions :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    IO ()+++notificationClearActions ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    m ()+notificationClearActions _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    notify_notification_clear_actions _obj'+    touchManagedPtr _obj+    return ()++-- method Notification::clear_hints+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_clear_hints" notify_notification_clear_hints :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    IO ()+++notificationClearHints ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    m ()+notificationClearHints _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    notify_notification_clear_hints _obj'+    touchManagedPtr _obj+    return ()++-- method Notification::close+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "notify_notification_close" notify_notification_close :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    Ptr (Ptr GError) ->                     -- error+    IO CInt+++notificationClose ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    m ()+notificationClose _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    onException (do+        _ <- propagateGError $ notify_notification_close _obj'+        touchManagedPtr _obj+        return ()+     ) (do+        return ()+     )++-- method Notification::get_closed_reason+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_get_closed_reason" notify_notification_get_closed_reason :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    IO Int32+++notificationGetClosedReason ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    m Int32+notificationGetClosedReason _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    result <- notify_notification_get_closed_reason _obj'+    touchManagedPtr _obj+    return result++-- method Notification::set_app_name+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "app_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_app_name" notify_notification_set_app_name :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- app_name : TBasicType TUTF8+    IO ()+++notificationSetAppName ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- app_name+    m ()+notificationSetAppName _obj app_name = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    app_name' <- textToCString app_name+    notify_notification_set_app_name _obj' app_name'+    touchManagedPtr _obj+    freeMem app_name'+    return ()++-- method Notification::set_category+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "category", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "category", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_category" notify_notification_set_category :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- category : TBasicType TUTF8+    IO ()+++notificationSetCategory ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- category+    m ()+notificationSetCategory _obj category = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    category' <- textToCString category+    notify_notification_set_category _obj' category'+    touchManagedPtr _obj+    freeMem category'+    return ()++-- method Notification::set_hint+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TVariant, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint" notify_notification_set_hint :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    Ptr GVariant ->                         -- value : TVariant+    IO ()+++notificationSetHint ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Maybe (GVariant) ->                     -- value+    m ()+notificationSetHint _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    maybeValue <- case value of+        Nothing -> return nullPtr+        Just jValue -> do+            let jValue' = unsafeManagedPtrGetPtr jValue+            return jValue'+    notify_notification_set_hint _obj' key' maybeValue+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_hint_byte+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_byte" notify_notification_set_hint_byte :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    Word8 ->                                -- value : TBasicType TUInt8+    IO ()++{-# DEPRECATED notificationSetHintByte ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintByte ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Word8 ->                                -- value+    m ()+notificationSetHintByte _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    notify_notification_set_hint_byte _obj' key' value+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_hint_byte_array+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_byte_array" notify_notification_set_hint_byte_array :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    Word8 ->                                -- value : TBasicType TUInt8+    Word64 ->                               -- len : TBasicType TUInt64+    IO ()++{-# DEPRECATED notificationSetHintByteArray ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintByteArray ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Word8 ->                                -- value+    Word64 ->                               -- len+    m ()+notificationSetHintByteArray _obj key value len = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    notify_notification_set_hint_byte_array _obj' key' value len+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_hint_double+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_double" notify_notification_set_hint_double :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    CDouble ->                              -- value : TBasicType TDouble+    IO ()++{-# DEPRECATED notificationSetHintDouble ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintDouble ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Double ->                               -- value+    m ()+notificationSetHintDouble _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    let value' = realToFrac value+    notify_notification_set_hint_double _obj' key' value'+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_hint_int32+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_int32" notify_notification_set_hint_int32 :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    Int32 ->                                -- value : TBasicType TInt32+    IO ()++{-# DEPRECATED notificationSetHintInt32 ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintInt32 ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Int32 ->                                -- value+    m ()+notificationSetHintInt32 _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    notify_notification_set_hint_int32 _obj' key' value+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_hint_string+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_string" notify_notification_set_hint_string :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    CString ->                              -- value : TBasicType TUTF8+    IO ()++{-# DEPRECATED notificationSetHintString ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintString ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    T.Text ->                               -- value+    m ()+notificationSetHintString _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    value' <- textToCString value+    notify_notification_set_hint_string _obj' key' value'+    touchManagedPtr _obj+    freeMem key'+    freeMem value'+    return ()++-- method Notification::set_hint_uint32+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_hint_uint32" notify_notification_set_hint_uint32 :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- key : TBasicType TUTF8+    Word32 ->                               -- value : TBasicType TUInt32+    IO ()++{-# DEPRECATED notificationSetHintUint32 ["(Since version 0.6.)","Use notify_notification_set_hint() instead"]#-}+notificationSetHintUint32 ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- key+    Word32 ->                               -- value+    m ()+notificationSetHintUint32 _obj key value = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    key' <- textToCString key+    notify_notification_set_hint_uint32 _obj' key' value+    touchManagedPtr _obj+    freeMem key'+    return ()++-- method Notification::set_icon_from_pixbuf+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_icon_from_pixbuf" notify_notification_set_icon_from_pixbuf :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    Ptr GdkPixbuf.Pixbuf ->                 -- icon : TInterface "GdkPixbuf" "Pixbuf"+    IO ()++{-# DEPRECATED notificationSetIconFromPixbuf ["use notify_notification_set_image_from_pixbuf() instead."]#-}+notificationSetIconFromPixbuf ::+    (MonadIO m, NotificationK a, GdkPixbuf.PixbufK b) =>+    a ->                                    -- _obj+    b ->                                    -- icon+    m ()+notificationSetIconFromPixbuf _obj icon = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    let icon' = unsafeManagedPtrCastPtr icon+    notify_notification_set_icon_from_pixbuf _obj' icon'+    touchManagedPtr _obj+    touchManagedPtr icon+    return ()++-- method Notification::set_image_from_pixbuf+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pixbuf", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pixbuf", argType = TInterface "GdkPixbuf" "Pixbuf", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_image_from_pixbuf" notify_notification_set_image_from_pixbuf :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    Ptr GdkPixbuf.Pixbuf ->                 -- pixbuf : TInterface "GdkPixbuf" "Pixbuf"+    IO ()+++notificationSetImageFromPixbuf ::+    (MonadIO m, NotificationK a, GdkPixbuf.PixbufK b) =>+    a ->                                    -- _obj+    b ->                                    -- pixbuf+    m ()+notificationSetImageFromPixbuf _obj pixbuf = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    let pixbuf' = unsafeManagedPtrCastPtr pixbuf+    notify_notification_set_image_from_pixbuf _obj' pixbuf'+    touchManagedPtr _obj+    touchManagedPtr pixbuf+    return ()++-- method Notification::set_timeout+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timeout", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "timeout", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_timeout" notify_notification_set_timeout :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    Int32 ->                                -- timeout : TBasicType TInt32+    IO ()+++notificationSetTimeout ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    Int32 ->                                -- timeout+    m ()+notificationSetTimeout _obj timeout = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    notify_notification_set_timeout _obj' timeout+    touchManagedPtr _obj+    return ()++-- method Notification::set_urgency+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "urgency", argType = TInterface "Notify" "Urgency", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "urgency", argType = TInterface "Notify" "Urgency", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_set_urgency" notify_notification_set_urgency :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CUInt ->                                -- urgency : TInterface "Notify" "Urgency"+    IO ()+++notificationSetUrgency ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    Urgency ->                              -- urgency+    m ()+notificationSetUrgency _obj urgency = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    let urgency' = (fromIntegral . fromEnum) urgency+    notify_notification_set_urgency _obj' urgency'+    touchManagedPtr _obj+    return ()++-- method Notification::show+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "notify_notification_show" notify_notification_show :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    Ptr (Ptr GError) ->                     -- error+    IO CInt+++notificationShow ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    m ()+notificationShow _obj = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    onException (do+        _ <- propagateGError $ notify_notification_show _obj'+        touchManagedPtr _obj+        return ()+     ) (do+        return ()+     )++-- method Notification::update+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Notify" "Notification", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "summary", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "body", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "notify_notification_update" notify_notification_update :: +    Ptr Notification ->                     -- _obj : TInterface "Notify" "Notification"+    CString ->                              -- summary : TBasicType TUTF8+    CString ->                              -- body : TBasicType TUTF8+    CString ->                              -- icon : TBasicType TUTF8+    IO CInt+++notificationUpdate ::+    (MonadIO m, NotificationK a) =>+    a ->                                    -- _obj+    T.Text ->                               -- summary+    Maybe (T.Text) ->                       -- body+    Maybe (T.Text) ->                       -- icon+    m Bool+notificationUpdate _obj summary body icon = liftIO $ do+    let _obj' = unsafeManagedPtrCastPtr _obj+    summary' <- textToCString summary+    maybeBody <- case body of+        Nothing -> return nullPtr+        Just jBody -> do+            jBody' <- textToCString jBody+            return jBody'+    maybeIcon <- case icon of+        Nothing -> return nullPtr+        Just jIcon -> do+            jIcon' <- textToCString jIcon+            return jIcon'+    result <- notify_notification_update _obj' summary' maybeBody maybeIcon+    let result' = (/= 0) result+    touchManagedPtr _obj+    freeMem summary'+    freeMem maybeBody+    freeMem maybeIcon+    return result'++
+ GI/Notify/Objects/Notification.hs-boot view
@@ -0,0 +1,20 @@+module GI.Notify.Objects.Notification 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++newtype Notification = Notification (ForeignPtr Notification)+instance GObject Notification where+class GObject o => NotificationK o+instance (GObject o, IsDescendantOf Notification o) => NotificationK o+data NotificationAppNamePropertyInfo+data NotificationBodyPropertyInfo+data NotificationClosedReasonPropertyInfo+data NotificationIconNamePropertyInfo+data NotificationIdPropertyInfo+data NotificationSummaryPropertyInfo+data NotificationClosedSignalInfo
+ GI/Notify/Types.hs view
@@ -0,0 +1,12 @@+module GI.Notify.Types+    (     module GI.Notify.Objects.Notification   ,+    module GI.Notify.Enums                  ,+++    ) where+++import {-# SOURCE #-} GI.Notify.Objects.Notification++import GI.Notify.Enums+
− GI/NotifyAttributes.hs
@@ -1,188 +0,0 @@-{-# OPTIONS_GHC -fno-warn-orphans -fno-warn-unused-imports #-}---- Generated code.--{-# OPTIONS_GHC -fno-warn-unused-imports #-}--{-# LANGUAGE ForeignFunctionInterface, ConstraintKinds,-    TypeFamilies, MultiParamTypeClasses, KindSignatures,-    FlexibleInstances, UndecidableInstances, DataKinds,-    OverloadedStrings, NegativeLiterals, FlexibleContexts #-}--module GI.NotifyAttributes where--import Prelude ()-import Data.GI.Base.ShortPrelude-import Data.Char-import Data.Int-import Data.Word-import qualified Data.ByteString.Char8 as B-import Data.ByteString.Char8 (ByteString)-import qualified Data.Map as Map-import Foreign.C-import Foreign.Ptr-import Foreign.ForeignPtr-import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)-import Foreign.Storable (peek, poke, sizeOf)-import Control.Applicative ((<$>))-import Control.Exception (onException)-import Control.Monad.IO.Class-import qualified Data.Text as T--import Data.GI.Base.Attributes hiding (get, set)-import Data.GI.Base.BasicTypes-import Data.GI.Base.BasicConversions-import Data.GI.Base.Closure-import Data.GI.Base.GError-import Data.GI.Base.GHashTable-import Data.GI.Base.GParamSpec-import Data.GI.Base.GVariant-import Data.GI.Base.GValue-import Data.GI.Base.ManagedPtr-import Data.GI.Base.Overloading-import Data.GI.Base.Properties hiding (new)-import Data.GI.Base.Signals (SignalConnectMode(..), connectSignalFunPtr, SignalHandlerId)-import Data.GI.Base.Utils--import GI.Notify---- VVV Prop "app-name"-   -- Type: TBasicType TUTF8-   -- Flags: [PropertyReadable,PropertyWritable]--getNotificationAppName :: (MonadIO m, NotificationK o) => o -> m T.Text-getNotificationAppName obj = liftIO $ getObjectPropertyString obj "app-name"--setNotificationAppName :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()-setNotificationAppName obj val = liftIO $ setObjectPropertyString obj "app-name" val--constructNotificationAppName :: T.Text -> IO ([Char], GValue)-constructNotificationAppName val = constructObjectPropertyString "app-name" val--data NotificationAppNamePropertyInfo-instance AttrInfo NotificationAppNamePropertyInfo where-    type AttrAllowedOps NotificationAppNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]-    type AttrSetTypeConstraint NotificationAppNamePropertyInfo = (~) T.Text-    type AttrBaseTypeConstraint NotificationAppNamePropertyInfo = NotificationK-    type AttrGetType NotificationAppNamePropertyInfo = T.Text-    type AttrLabel NotificationAppNamePropertyInfo = "Notification::app-name"-    attrGet _ = getNotificationAppName-    attrSet _ = setNotificationAppName-    attrConstruct _ = constructNotificationAppName---- VVV Prop "body"-   -- Type: TBasicType TUTF8-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]--getNotificationBody :: (MonadIO m, NotificationK o) => o -> m T.Text-getNotificationBody obj = liftIO $ getObjectPropertyString obj "body"--setNotificationBody :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()-setNotificationBody obj val = liftIO $ setObjectPropertyString obj "body" val--constructNotificationBody :: T.Text -> IO ([Char], GValue)-constructNotificationBody val = constructObjectPropertyString "body" val--data NotificationBodyPropertyInfo-instance AttrInfo NotificationBodyPropertyInfo where-    type AttrAllowedOps NotificationBodyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]-    type AttrSetTypeConstraint NotificationBodyPropertyInfo = (~) T.Text-    type AttrBaseTypeConstraint NotificationBodyPropertyInfo = NotificationK-    type AttrGetType NotificationBodyPropertyInfo = T.Text-    type AttrLabel NotificationBodyPropertyInfo = "Notification::body"-    attrGet _ = getNotificationBody-    attrSet _ = setNotificationBody-    attrConstruct _ = constructNotificationBody---- VVV Prop "closed-reason"-   -- Type: TBasicType TInt32-   -- Flags: [PropertyReadable]--getNotificationClosedReason :: (MonadIO m, NotificationK o) => o -> m Int32-getNotificationClosedReason obj = liftIO $ getObjectPropertyCInt obj "closed-reason"--data NotificationClosedReasonPropertyInfo-instance AttrInfo NotificationClosedReasonPropertyInfo where-    type AttrAllowedOps NotificationClosedReasonPropertyInfo = '[ 'AttrGet]-    type AttrSetTypeConstraint NotificationClosedReasonPropertyInfo = (~) ()-    type AttrBaseTypeConstraint NotificationClosedReasonPropertyInfo = NotificationK-    type AttrGetType NotificationClosedReasonPropertyInfo = Int32-    type AttrLabel NotificationClosedReasonPropertyInfo = "Notification::closed-reason"-    attrGet _ = getNotificationClosedReason-    attrSet _ = undefined-    attrConstruct _ = undefined---- VVV Prop "icon-name"-   -- Type: TBasicType TUTF8-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]--getNotificationIconName :: (MonadIO m, NotificationK o) => o -> m T.Text-getNotificationIconName obj = liftIO $ getObjectPropertyString obj "icon-name"--setNotificationIconName :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()-setNotificationIconName obj val = liftIO $ setObjectPropertyString obj "icon-name" val--constructNotificationIconName :: T.Text -> IO ([Char], GValue)-constructNotificationIconName val = constructObjectPropertyString "icon-name" val--data NotificationIconNamePropertyInfo-instance AttrInfo NotificationIconNamePropertyInfo where-    type AttrAllowedOps NotificationIconNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]-    type AttrSetTypeConstraint NotificationIconNamePropertyInfo = (~) T.Text-    type AttrBaseTypeConstraint NotificationIconNamePropertyInfo = NotificationK-    type AttrGetType NotificationIconNamePropertyInfo = T.Text-    type AttrLabel NotificationIconNamePropertyInfo = "Notification::icon-name"-    attrGet _ = getNotificationIconName-    attrSet _ = setNotificationIconName-    attrConstruct _ = constructNotificationIconName---- VVV Prop "id"-   -- Type: TBasicType TInt32-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]--getNotificationId :: (MonadIO m, NotificationK o) => o -> m Int32-getNotificationId obj = liftIO $ getObjectPropertyCInt obj "id"--setNotificationId :: (MonadIO m, NotificationK o) => o -> Int32 -> m ()-setNotificationId obj val = liftIO $ setObjectPropertyCInt obj "id" val--constructNotificationId :: Int32 -> IO ([Char], GValue)-constructNotificationId val = constructObjectPropertyCInt "id" val--data NotificationIdPropertyInfo-instance AttrInfo NotificationIdPropertyInfo where-    type AttrAllowedOps NotificationIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]-    type AttrSetTypeConstraint NotificationIdPropertyInfo = (~) Int32-    type AttrBaseTypeConstraint NotificationIdPropertyInfo = NotificationK-    type AttrGetType NotificationIdPropertyInfo = Int32-    type AttrLabel NotificationIdPropertyInfo = "Notification::id"-    attrGet _ = getNotificationId-    attrSet _ = setNotificationId-    attrConstruct _ = constructNotificationId---- VVV Prop "summary"-   -- Type: TBasicType TUTF8-   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]--getNotificationSummary :: (MonadIO m, NotificationK o) => o -> m T.Text-getNotificationSummary obj = liftIO $ getObjectPropertyString obj "summary"--setNotificationSummary :: (MonadIO m, NotificationK o) => o -> T.Text -> m ()-setNotificationSummary obj val = liftIO $ setObjectPropertyString obj "summary" val--constructNotificationSummary :: T.Text -> IO ([Char], GValue)-constructNotificationSummary val = constructObjectPropertyString "summary" val--data NotificationSummaryPropertyInfo-instance AttrInfo NotificationSummaryPropertyInfo where-    type AttrAllowedOps NotificationSummaryPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]-    type AttrSetTypeConstraint NotificationSummaryPropertyInfo = (~) T.Text-    type AttrBaseTypeConstraint NotificationSummaryPropertyInfo = NotificationK-    type AttrGetType NotificationSummaryPropertyInfo = T.Text-    type AttrLabel NotificationSummaryPropertyInfo = "Notification::summary"-    attrGet _ = getNotificationSummary-    attrSet _ = setNotificationSummary-    attrConstruct _ = constructNotificationSummary--type instance AttributeList Notification = '[ '("app-name", NotificationAppNamePropertyInfo), '("body", NotificationBodyPropertyInfo), '("closed-reason", NotificationClosedReasonPropertyInfo), '("icon-name", NotificationIconNamePropertyInfo), '("id", NotificationIdPropertyInfo), '("summary", NotificationSummaryPropertyInfo)]-
− GI/NotifySignals.hs
@@ -1,24 +0,0 @@--- Generated code.--{-# OPTIONS_GHC -fno-warn-orphans #-}--{-# LANGUAGE DataKinds,    FlexibleInstances,-             TypeFamilies, MultiParamTypeClasses,-               TypeOperators #-}--module GI.NotifySignals where--import Data.GI.Base.Properties (GObjectNotifySignalInfo)-import Data.GI.Base.Signals-import Data.GI.Base.Overloading--import qualified GI.GObjectSignals as GObject-import GI.Notify--data NotificationClosedSignalInfo-instance SignalInfo NotificationClosedSignalInfo where-    type HaskellCallbackType NotificationClosedSignalInfo = NotificationClosedCallback-    connectSignal _ = connectNotificationClosed--type instance SignalList Notification = '[ '("closed", NotificationClosedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]-
gi-notify.cabal view
@@ -1,6 +1,6 @@ -- Autogenerated, do not edit. name:               gi-notify-version:            0.2.31.11+version:            0.2.31.12 synopsis:           Notify bindings description:        Bindings for Notify, autogenerated by haskell-gi. homepage:           https://github.com/haskell-gi/haskell-gi@@ -14,13 +14,23 @@  library     default-language:   Haskell2010-    exposed-modules:    GI.Notify, GI.NotifyAttributes, GI.NotifySignals+    default-extensions: OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts+    other-extensions:   PatternSynonyms ScopedTypeVariables, ViewPatterns+    ghc-options:        -fno-warn-unused-imports -fno-warn-warnings-deprecations+    exposed-modules:    GI.Notify.Types+                        GI.Notify+                        GI.Notify.Callbacks+                        GI.Notify.Constants+                        GI.Notify.Enums+                        GI.Notify.Functions+                        GI.Notify.Objects+                        GI.Notify.Objects.Notification     pkgconfig-depends:  gdk-pixbuf-2.0 >= 2.31     build-depends: base >= 4.7 && <5,-        haskell-gi-base >= 0.11 && < 1,-        gi-glib >= 0.2.44.11 && < 0.2.45,-        gi-gobject >= 0.2.44.11 && < 0.2.45,-        gi-gdkpixbuf >= 0.2.31.11 && < 0.2.32,+        haskell-gi-base >= 0.12 && < 1,+        gi-glib >= 0.2.44.12 && < 0.2.45,+        gi-gobject >= 0.2.44.12 && < 0.2.45,+        gi-gdkpixbuf >= 0.2.31.12 && < 0.2.32,         bytestring >= 0.10,         containers >= 0.5,         text >= 1.0,