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 +33/−1000
- GI/Notify/Callbacks.hs +70/−0
- GI/Notify/Constants.hs +44/−0
- GI/Notify/Enums.hs +47/−0
- GI/Notify/Functions.hs +236/−0
- GI/Notify/Objects.hs +26/−0
- GI/Notify/Objects/Notification.hs +1027/−0
- GI/Notify/Objects/Notification.hs-boot +20/−0
- GI/Notify/Types.hs +12/−0
- GI/NotifyAttributes.hs +0/−188
- GI/NotifySignals.hs +0/−24
- gi-notify.cabal +16/−6
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,