module GI.Gtk.Objects.AccelGroup
(
AccelGroup(..) ,
IsAccelGroup ,
toAccelGroup ,
noAccelGroup ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupActivateMethodInfo ,
#endif
accelGroupActivate ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupConnectMethodInfo ,
#endif
accelGroupConnect ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupConnectByPathMethodInfo ,
#endif
accelGroupConnectByPath ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupDisconnectMethodInfo ,
#endif
accelGroupDisconnect ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupDisconnectKeyMethodInfo ,
#endif
accelGroupDisconnectKey ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupFindMethodInfo ,
#endif
accelGroupFind ,
accelGroupFromAccelClosure ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupGetIsLockedMethodInfo ,
#endif
accelGroupGetIsLocked ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupGetModifierMaskMethodInfo ,
#endif
accelGroupGetModifierMask ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupLockMethodInfo ,
#endif
accelGroupLock ,
accelGroupNew ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupQueryMethodInfo ,
#endif
accelGroupQuery ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupUnlockMethodInfo ,
#endif
accelGroupUnlock ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupIsLockedPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
accelGroupIsLocked ,
#endif
getAccelGroupIsLocked ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupModifierMaskPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
accelGroupModifierMask ,
#endif
getAccelGroupModifierMask ,
AccelGroupAccelActivateCallback ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupAccelActivateSignalInfo ,
#endif
C_AccelGroupAccelActivateCallback ,
afterAccelGroupAccelActivate ,
genClosure_AccelGroupAccelActivate ,
mk_AccelGroupAccelActivateCallback ,
noAccelGroupAccelActivateCallback ,
onAccelGroupAccelActivate ,
wrap_AccelGroupAccelActivateCallback ,
AccelGroupAccelChangedCallback ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
AccelGroupAccelChangedSignalInfo ,
#endif
C_AccelGroupAccelChangedCallback ,
afterAccelGroupAccelChanged ,
genClosure_AccelGroupAccelChanged ,
mk_AccelGroupAccelChangedCallback ,
noAccelGroupAccelChangedCallback ,
onAccelGroupAccelChanged ,
wrap_AccelGroupAccelChangedCallback ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Flags as Gdk.Flags
import qualified GI.Gtk.Callbacks as Gtk.Callbacks
import qualified GI.Gtk.Flags as Gtk.Flags
import qualified GI.Gtk.Structs.AccelGroupEntry as Gtk.AccelGroupEntry
import qualified GI.Gtk.Structs.AccelKey as Gtk.AccelKey
newtype AccelGroup = AccelGroup (ManagedPtr AccelGroup)
foreign import ccall "gtk_accel_group_get_type"
c_gtk_accel_group_get_type :: IO GType
instance GObject AccelGroup where
gobjectType _ = c_gtk_accel_group_get_type
class GObject o => IsAccelGroup o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError AccelGroup a) =>
IsAccelGroup a
#endif
instance IsAccelGroup AccelGroup
instance GObject.Object.IsObject AccelGroup
toAccelGroup :: (MonadIO m, IsAccelGroup o) => o -> m AccelGroup
toAccelGroup = liftIO . unsafeCastTo AccelGroup
noAccelGroup :: Maybe AccelGroup
noAccelGroup = Nothing
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
type family ResolveAccelGroupMethod (t :: Symbol) (o :: *) :: * where
ResolveAccelGroupMethod "activate" o = AccelGroupActivateMethodInfo
ResolveAccelGroupMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAccelGroupMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAccelGroupMethod "connect" o = AccelGroupConnectMethodInfo
ResolveAccelGroupMethod "connectByPath" o = AccelGroupConnectByPathMethodInfo
ResolveAccelGroupMethod "disconnect" o = AccelGroupDisconnectMethodInfo
ResolveAccelGroupMethod "disconnectKey" o = AccelGroupDisconnectKeyMethodInfo
ResolveAccelGroupMethod "find" o = AccelGroupFindMethodInfo
ResolveAccelGroupMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAccelGroupMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAccelGroupMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAccelGroupMethod "lock" o = AccelGroupLockMethodInfo
ResolveAccelGroupMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAccelGroupMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAccelGroupMethod "query" o = AccelGroupQueryMethodInfo
ResolveAccelGroupMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveAccelGroupMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAccelGroupMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolveAccelGroupMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
ResolveAccelGroupMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAccelGroupMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAccelGroupMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAccelGroupMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAccelGroupMethod "unlock" o = AccelGroupUnlockMethodInfo
ResolveAccelGroupMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveAccelGroupMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAccelGroupMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAccelGroupMethod "getIsLocked" o = AccelGroupGetIsLockedMethodInfo
ResolveAccelGroupMethod "getModifierMask" o = AccelGroupGetModifierMaskMethodInfo
ResolveAccelGroupMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAccelGroupMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAccelGroupMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAccelGroupMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAccelGroupMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAccelGroupMethod t AccelGroup, O.MethodInfo info AccelGroup p) => O.IsLabelProxy t (AccelGroup -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveAccelGroupMethod t AccelGroup, O.MethodInfo info AccelGroup p) => O.IsLabel t (AccelGroup -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#endif
type AccelGroupAccelActivateCallback =
GObject.Object.Object ->
Word32 ->
[Gdk.Flags.ModifierType] ->
IO Bool
noAccelGroupAccelActivateCallback :: Maybe AccelGroupAccelActivateCallback
noAccelGroupAccelActivateCallback = Nothing
type C_AccelGroupAccelActivateCallback =
Ptr () ->
Ptr GObject.Object.Object ->
Word32 ->
CUInt ->
Ptr () ->
IO CInt
foreign import ccall "wrapper"
mk_AccelGroupAccelActivateCallback :: C_AccelGroupAccelActivateCallback -> IO (FunPtr C_AccelGroupAccelActivateCallback)
genClosure_AccelGroupAccelActivate :: AccelGroupAccelActivateCallback -> IO Closure
genClosure_AccelGroupAccelActivate cb = do
let cb' = wrap_AccelGroupAccelActivateCallback cb
mk_AccelGroupAccelActivateCallback cb' >>= newCClosure
wrap_AccelGroupAccelActivateCallback ::
AccelGroupAccelActivateCallback ->
Ptr () ->
Ptr GObject.Object.Object ->
Word32 ->
CUInt ->
Ptr () ->
IO CInt
wrap_AccelGroupAccelActivateCallback _cb _ acceleratable keyval modifier _ = do
acceleratable' <- (newObject GObject.Object.Object) acceleratable
let modifier' = wordToGFlags modifier
result <- _cb acceleratable' keyval modifier'
let result' = (fromIntegral . fromEnum) result
return result'
onAccelGroupAccelActivate :: (IsAccelGroup a, MonadIO m) => a -> AccelGroupAccelActivateCallback -> m SignalHandlerId
onAccelGroupAccelActivate obj cb = liftIO $ do
let cb' = wrap_AccelGroupAccelActivateCallback cb
cb'' <- mk_AccelGroupAccelActivateCallback cb'
connectSignalFunPtr obj "accel-activate" cb'' SignalConnectBefore
afterAccelGroupAccelActivate :: (IsAccelGroup a, MonadIO m) => a -> AccelGroupAccelActivateCallback -> m SignalHandlerId
afterAccelGroupAccelActivate obj cb = liftIO $ do
let cb' = wrap_AccelGroupAccelActivateCallback cb
cb'' <- mk_AccelGroupAccelActivateCallback cb'
connectSignalFunPtr obj "accel-activate" cb'' SignalConnectAfter
type AccelGroupAccelChangedCallback =
Word32 ->
[Gdk.Flags.ModifierType] ->
Closure ->
IO ()
noAccelGroupAccelChangedCallback :: Maybe AccelGroupAccelChangedCallback
noAccelGroupAccelChangedCallback = Nothing
type C_AccelGroupAccelChangedCallback =
Ptr () ->
Word32 ->
CUInt ->
Ptr Closure ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_AccelGroupAccelChangedCallback :: C_AccelGroupAccelChangedCallback -> IO (FunPtr C_AccelGroupAccelChangedCallback)
genClosure_AccelGroupAccelChanged :: AccelGroupAccelChangedCallback -> IO Closure
genClosure_AccelGroupAccelChanged cb = do
let cb' = wrap_AccelGroupAccelChangedCallback cb
mk_AccelGroupAccelChangedCallback cb' >>= newCClosure
wrap_AccelGroupAccelChangedCallback ::
AccelGroupAccelChangedCallback ->
Ptr () ->
Word32 ->
CUInt ->
Ptr Closure ->
Ptr () ->
IO ()
wrap_AccelGroupAccelChangedCallback _cb _ keyval modifier accelClosure _ = do
let modifier' = wordToGFlags modifier
B.ManagedPtr.withTransient Closure accelClosure $ \accelClosure' -> do
_cb keyval modifier' accelClosure'
onAccelGroupAccelChanged :: (IsAccelGroup a, MonadIO m) => a -> AccelGroupAccelChangedCallback -> m SignalHandlerId
onAccelGroupAccelChanged obj cb = liftIO $ do
let cb' = wrap_AccelGroupAccelChangedCallback cb
cb'' <- mk_AccelGroupAccelChangedCallback cb'
connectSignalFunPtr obj "accel-changed" cb'' SignalConnectBefore
afterAccelGroupAccelChanged :: (IsAccelGroup a, MonadIO m) => a -> AccelGroupAccelChangedCallback -> m SignalHandlerId
afterAccelGroupAccelChanged obj cb = liftIO $ do
let cb' = wrap_AccelGroupAccelChangedCallback cb
cb'' <- mk_AccelGroupAccelChangedCallback cb'
connectSignalFunPtr obj "accel-changed" cb'' SignalConnectAfter
getAccelGroupIsLocked :: (MonadIO m, IsAccelGroup o) => o -> m Bool
getAccelGroupIsLocked obj = liftIO $ getObjectPropertyBool obj "is-locked"
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupIsLockedPropertyInfo
instance AttrInfo AccelGroupIsLockedPropertyInfo where
type AttrAllowedOps AccelGroupIsLockedPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint AccelGroupIsLockedPropertyInfo = (~) ()
type AttrBaseTypeConstraint AccelGroupIsLockedPropertyInfo = IsAccelGroup
type AttrGetType AccelGroupIsLockedPropertyInfo = Bool
type AttrLabel AccelGroupIsLockedPropertyInfo = "is-locked"
type AttrOrigin AccelGroupIsLockedPropertyInfo = AccelGroup
attrGet _ = getAccelGroupIsLocked
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
getAccelGroupModifierMask :: (MonadIO m, IsAccelGroup o) => o -> m [Gdk.Flags.ModifierType]
getAccelGroupModifierMask obj = liftIO $ getObjectPropertyFlags obj "modifier-mask"
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupModifierMaskPropertyInfo
instance AttrInfo AccelGroupModifierMaskPropertyInfo where
type AttrAllowedOps AccelGroupModifierMaskPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint AccelGroupModifierMaskPropertyInfo = (~) ()
type AttrBaseTypeConstraint AccelGroupModifierMaskPropertyInfo = IsAccelGroup
type AttrGetType AccelGroupModifierMaskPropertyInfo = [Gdk.Flags.ModifierType]
type AttrLabel AccelGroupModifierMaskPropertyInfo = "modifier-mask"
type AttrOrigin AccelGroupModifierMaskPropertyInfo = AccelGroup
attrGet _ = getAccelGroupModifierMask
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
instance O.HasAttributeList AccelGroup
type instance O.AttributeList AccelGroup = AccelGroupAttributeList
type AccelGroupAttributeList = ('[ '("isLocked", AccelGroupIsLockedPropertyInfo), '("modifierMask", AccelGroupModifierMaskPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
accelGroupIsLocked :: AttrLabelProxy "isLocked"
accelGroupIsLocked = AttrLabelProxy
accelGroupModifierMask :: AttrLabelProxy "modifierMask"
accelGroupModifierMask = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupAccelActivateSignalInfo
instance SignalInfo AccelGroupAccelActivateSignalInfo where
type HaskellCallbackType AccelGroupAccelActivateSignalInfo = AccelGroupAccelActivateCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_AccelGroupAccelActivateCallback cb
cb'' <- mk_AccelGroupAccelActivateCallback cb'
connectSignalFunPtr obj "accel-activate" cb'' connectMode
data AccelGroupAccelChangedSignalInfo
instance SignalInfo AccelGroupAccelChangedSignalInfo where
type HaskellCallbackType AccelGroupAccelChangedSignalInfo = AccelGroupAccelChangedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_AccelGroupAccelChangedCallback cb
cb'' <- mk_AccelGroupAccelChangedCallback cb'
connectSignalFunPtr obj "accel-changed" cb'' connectMode
type instance O.SignalList AccelGroup = AccelGroupSignalList
type AccelGroupSignalList = ('[ '("accelActivate", AccelGroupAccelActivateSignalInfo), '("accelChanged", AccelGroupAccelChangedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_accel_group_new" gtk_accel_group_new ::
IO (Ptr AccelGroup)
accelGroupNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m AccelGroup
accelGroupNew = liftIO $ do
result <- gtk_accel_group_new
checkUnexpectedReturnNULL "accelGroupNew" result
result' <- (wrapObject AccelGroup) result
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
#endif
foreign import ccall "gtk_accel_group_activate" gtk_accel_group_activate ::
Ptr AccelGroup ->
Word32 ->
Ptr GObject.Object.Object ->
Word32 ->
CUInt ->
IO CInt
accelGroupActivate ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a, GObject.Object.IsObject b) =>
a
-> Word32
-> b
-> Word32
-> [Gdk.Flags.ModifierType]
-> m Bool
accelGroupActivate accelGroup accelQuark acceleratable accelKey accelMods = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
acceleratable' <- unsafeManagedPtrCastPtr acceleratable
let accelMods' = gflagsToWord accelMods
result <- gtk_accel_group_activate accelGroup' accelQuark acceleratable' accelKey accelMods'
let result' = (/= 0) result
touchManagedPtr accelGroup
touchManagedPtr acceleratable
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupActivateMethodInfo
instance (signature ~ (Word32 -> b -> Word32 -> [Gdk.Flags.ModifierType] -> m Bool), MonadIO m, IsAccelGroup a, GObject.Object.IsObject b) => O.MethodInfo AccelGroupActivateMethodInfo a signature where
overloadedMethod _ = accelGroupActivate
#endif
foreign import ccall "gtk_accel_group_connect" gtk_accel_group_connect ::
Ptr AccelGroup ->
Word32 ->
CUInt ->
CUInt ->
Ptr Closure ->
IO ()
accelGroupConnect ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> Word32
-> [Gdk.Flags.ModifierType]
-> [Gtk.Flags.AccelFlags]
-> Closure
-> m ()
accelGroupConnect accelGroup accelKey accelMods accelFlags closure = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
let accelMods' = gflagsToWord accelMods
let accelFlags' = gflagsToWord accelFlags
closure' <- unsafeManagedPtrGetPtr closure
gtk_accel_group_connect accelGroup' accelKey accelMods' accelFlags' closure'
touchManagedPtr accelGroup
touchManagedPtr closure
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupConnectMethodInfo
instance (signature ~ (Word32 -> [Gdk.Flags.ModifierType] -> [Gtk.Flags.AccelFlags] -> Closure -> m ()), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupConnectMethodInfo a signature where
overloadedMethod _ = accelGroupConnect
#endif
foreign import ccall "gtk_accel_group_connect_by_path" gtk_accel_group_connect_by_path ::
Ptr AccelGroup ->
CString ->
Ptr Closure ->
IO ()
accelGroupConnectByPath ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> T.Text
-> Closure
-> m ()
accelGroupConnectByPath accelGroup accelPath closure = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
accelPath' <- textToCString accelPath
closure' <- unsafeManagedPtrGetPtr closure
gtk_accel_group_connect_by_path accelGroup' accelPath' closure'
touchManagedPtr accelGroup
touchManagedPtr closure
freeMem accelPath'
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupConnectByPathMethodInfo
instance (signature ~ (T.Text -> Closure -> m ()), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupConnectByPathMethodInfo a signature where
overloadedMethod _ = accelGroupConnectByPath
#endif
foreign import ccall "gtk_accel_group_disconnect" gtk_accel_group_disconnect ::
Ptr AccelGroup ->
Ptr Closure ->
IO CInt
accelGroupDisconnect ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> Maybe (Closure)
-> m Bool
accelGroupDisconnect accelGroup closure = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
maybeClosure <- case closure of
Nothing -> return nullPtr
Just jClosure -> do
jClosure' <- unsafeManagedPtrGetPtr jClosure
return jClosure'
result <- gtk_accel_group_disconnect accelGroup' maybeClosure
let result' = (/= 0) result
touchManagedPtr accelGroup
whenJust closure touchManagedPtr
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupDisconnectMethodInfo
instance (signature ~ (Maybe (Closure) -> m Bool), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupDisconnectMethodInfo a signature where
overloadedMethod _ = accelGroupDisconnect
#endif
foreign import ccall "gtk_accel_group_disconnect_key" gtk_accel_group_disconnect_key ::
Ptr AccelGroup ->
Word32 ->
CUInt ->
IO CInt
accelGroupDisconnectKey ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> Word32
-> [Gdk.Flags.ModifierType]
-> m Bool
accelGroupDisconnectKey accelGroup accelKey accelMods = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
let accelMods' = gflagsToWord accelMods
result <- gtk_accel_group_disconnect_key accelGroup' accelKey accelMods'
let result' = (/= 0) result
touchManagedPtr accelGroup
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupDisconnectKeyMethodInfo
instance (signature ~ (Word32 -> [Gdk.Flags.ModifierType] -> m Bool), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupDisconnectKeyMethodInfo a signature where
overloadedMethod _ = accelGroupDisconnectKey
#endif
foreign import ccall "gtk_accel_group_find" gtk_accel_group_find ::
Ptr AccelGroup ->
FunPtr Gtk.Callbacks.C_AccelGroupFindFunc ->
Ptr () ->
IO (Ptr Gtk.AccelKey.AccelKey)
accelGroupFind ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> Gtk.Callbacks.AccelGroupFindFunc
-> m Gtk.AccelKey.AccelKey
accelGroupFind accelGroup findFunc = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
findFunc' <- Gtk.Callbacks.mk_AccelGroupFindFunc (Gtk.Callbacks.wrap_AccelGroupFindFunc Nothing (Gtk.Callbacks.drop_closures_AccelGroupFindFunc findFunc))
let data_ = nullPtr
result <- gtk_accel_group_find accelGroup' findFunc' data_
checkUnexpectedReturnNULL "accelGroupFind" result
result' <- (newPtr Gtk.AccelKey.AccelKey) result
safeFreeFunPtr $ castFunPtrToPtr findFunc'
touchManagedPtr accelGroup
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupFindMethodInfo
instance (signature ~ (Gtk.Callbacks.AccelGroupFindFunc -> m Gtk.AccelKey.AccelKey), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupFindMethodInfo a signature where
overloadedMethod _ = accelGroupFind
#endif
foreign import ccall "gtk_accel_group_get_is_locked" gtk_accel_group_get_is_locked ::
Ptr AccelGroup ->
IO CInt
accelGroupGetIsLocked ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> m Bool
accelGroupGetIsLocked accelGroup = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
result <- gtk_accel_group_get_is_locked accelGroup'
let result' = (/= 0) result
touchManagedPtr accelGroup
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupGetIsLockedMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupGetIsLockedMethodInfo a signature where
overloadedMethod _ = accelGroupGetIsLocked
#endif
foreign import ccall "gtk_accel_group_get_modifier_mask" gtk_accel_group_get_modifier_mask ::
Ptr AccelGroup ->
IO CUInt
accelGroupGetModifierMask ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> m [Gdk.Flags.ModifierType]
accelGroupGetModifierMask accelGroup = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
result <- gtk_accel_group_get_modifier_mask accelGroup'
let result' = wordToGFlags result
touchManagedPtr accelGroup
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupGetModifierMaskMethodInfo
instance (signature ~ (m [Gdk.Flags.ModifierType]), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupGetModifierMaskMethodInfo a signature where
overloadedMethod _ = accelGroupGetModifierMask
#endif
foreign import ccall "gtk_accel_group_lock" gtk_accel_group_lock ::
Ptr AccelGroup ->
IO ()
accelGroupLock ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> m ()
accelGroupLock accelGroup = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
gtk_accel_group_lock accelGroup'
touchManagedPtr accelGroup
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupLockMethodInfo
instance (signature ~ (m ()), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupLockMethodInfo a signature where
overloadedMethod _ = accelGroupLock
#endif
foreign import ccall "gtk_accel_group_query" gtk_accel_group_query ::
Ptr AccelGroup ->
Word32 ->
CUInt ->
Ptr Word32 ->
IO (Ptr Gtk.AccelGroupEntry.AccelGroupEntry)
accelGroupQuery ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> Word32
-> [Gdk.Flags.ModifierType]
-> m (Maybe [Gtk.AccelGroupEntry.AccelGroupEntry])
accelGroupQuery accelGroup accelKey accelMods = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
let accelMods' = gflagsToWord accelMods
nEntries <- allocMem :: IO (Ptr Word32)
result <- gtk_accel_group_query accelGroup' accelKey accelMods' nEntries
nEntries' <- peek nEntries
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (unpackBlockArrayWithLength 32 nEntries') result'
result''' <- mapM (newPtr Gtk.AccelGroupEntry.AccelGroupEntry) result''
return result'''
touchManagedPtr accelGroup
freeMem nEntries
return maybeResult
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupQueryMethodInfo
instance (signature ~ (Word32 -> [Gdk.Flags.ModifierType] -> m (Maybe [Gtk.AccelGroupEntry.AccelGroupEntry])), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupQueryMethodInfo a signature where
overloadedMethod _ = accelGroupQuery
#endif
foreign import ccall "gtk_accel_group_unlock" gtk_accel_group_unlock ::
Ptr AccelGroup ->
IO ()
accelGroupUnlock ::
(B.CallStack.HasCallStack, MonadIO m, IsAccelGroup a) =>
a
-> m ()
accelGroupUnlock accelGroup = liftIO $ do
accelGroup' <- unsafeManagedPtrCastPtr accelGroup
gtk_accel_group_unlock accelGroup'
touchManagedPtr accelGroup
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data AccelGroupUnlockMethodInfo
instance (signature ~ (m ()), MonadIO m, IsAccelGroup a) => O.MethodInfo AccelGroupUnlockMethodInfo a signature where
overloadedMethod _ = accelGroupUnlock
#endif
foreign import ccall "gtk_accel_group_from_accel_closure" gtk_accel_group_from_accel_closure ::
Ptr Closure ->
IO (Ptr AccelGroup)
accelGroupFromAccelClosure ::
(B.CallStack.HasCallStack, MonadIO m) =>
Closure
-> m (Maybe AccelGroup)
accelGroupFromAccelClosure closure = liftIO $ do
closure' <- unsafeManagedPtrGetPtr closure
result <- gtk_accel_group_from_accel_closure closure'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newObject AccelGroup) result'
return result''
touchManagedPtr closure
return maybeResult
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
#endif