{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Interfaces.AccessibleRange
(
AccessibleRange(..) ,
IsAccessibleRange ,
toAccessibleRange ,
#if defined(ENABLE_OVERLOADING)
ResolveAccessibleRangeMethod ,
#endif
) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gtk.Interfaces.Accessible as Gtk.Accessible
newtype AccessibleRange = AccessibleRange (SP.ManagedPtr AccessibleRange)
deriving (AccessibleRange -> AccessibleRange -> Bool
(AccessibleRange -> AccessibleRange -> Bool)
-> (AccessibleRange -> AccessibleRange -> Bool)
-> Eq AccessibleRange
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AccessibleRange -> AccessibleRange -> Bool
== :: AccessibleRange -> AccessibleRange -> Bool
$c/= :: AccessibleRange -> AccessibleRange -> Bool
/= :: AccessibleRange -> AccessibleRange -> Bool
Eq)
instance SP.ManagedPtrNewtype AccessibleRange where
toManagedPtr :: AccessibleRange -> ManagedPtr AccessibleRange
toManagedPtr (AccessibleRange ManagedPtr AccessibleRange
p) = ManagedPtr AccessibleRange
p
foreign import ccall "gtk_accessible_range_get_type"
c_gtk_accessible_range_get_type :: IO B.Types.GType
instance B.Types.TypedObject AccessibleRange where
glibType :: IO GType
glibType = IO GType
c_gtk_accessible_range_get_type
instance B.Types.GObject AccessibleRange
class (SP.GObject o, O.IsDescendantOf AccessibleRange o) => IsAccessibleRange o
instance (SP.GObject o, O.IsDescendantOf AccessibleRange o) => IsAccessibleRange o
instance O.HasParentTypes AccessibleRange
type instance O.ParentTypes AccessibleRange = '[Gtk.Accessible.Accessible, GObject.Object.Object]
toAccessibleRange :: (MIO.MonadIO m, IsAccessibleRange o) => o -> m AccessibleRange
toAccessibleRange :: forall (m :: * -> *) o.
(MonadIO m, IsAccessibleRange o) =>
o -> m AccessibleRange
toAccessibleRange = IO AccessibleRange -> m AccessibleRange
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO AccessibleRange -> m AccessibleRange)
-> (o -> IO AccessibleRange) -> o -> m AccessibleRange
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr AccessibleRange -> AccessibleRange)
-> o -> IO AccessibleRange
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr AccessibleRange -> AccessibleRange
AccessibleRange
instance B.GValue.IsGValue (Maybe AccessibleRange) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_gtk_accessible_range_get_type
gvalueSet_ :: Ptr GValue -> Maybe AccessibleRange -> IO ()
gvalueSet_ Ptr GValue
gv Maybe AccessibleRange
P.Nothing = Ptr GValue -> Ptr AccessibleRange -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr AccessibleRange
forall a. Ptr a
FP.nullPtr :: FP.Ptr AccessibleRange)
gvalueSet_ Ptr GValue
gv (P.Just AccessibleRange
obj) = AccessibleRange -> (Ptr AccessibleRange -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr AccessibleRange
obj (Ptr GValue -> Ptr AccessibleRange -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe AccessibleRange)
gvalueGet_ Ptr GValue
gv = do
Ptr AccessibleRange
ptr <- Ptr GValue -> IO (Ptr AccessibleRange)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr AccessibleRange)
if Ptr AccessibleRange
ptr Ptr AccessibleRange -> Ptr AccessibleRange -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr AccessibleRange
forall a. Ptr a
FP.nullPtr
then AccessibleRange -> Maybe AccessibleRange
forall a. a -> Maybe a
P.Just (AccessibleRange -> Maybe AccessibleRange)
-> IO AccessibleRange -> IO (Maybe AccessibleRange)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr AccessibleRange -> AccessibleRange)
-> Ptr AccessibleRange -> IO AccessibleRange
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr AccessibleRange -> AccessibleRange
AccessibleRange Ptr AccessibleRange
ptr
else Maybe AccessibleRange -> IO (Maybe AccessibleRange)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe AccessibleRange
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList AccessibleRange
type instance O.AttributeList AccessibleRange = AccessibleRangeAttributeList
type AccessibleRangeAttributeList = ('[ '("accessibleRole", Gtk.Accessible.AccessibleAccessibleRolePropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveAccessibleRangeMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveAccessibleRangeMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveAccessibleRangeMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveAccessibleRangeMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveAccessibleRangeMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveAccessibleRangeMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveAccessibleRangeMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveAccessibleRangeMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveAccessibleRangeMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveAccessibleRangeMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveAccessibleRangeMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveAccessibleRangeMethod "resetProperty" o = Gtk.Accessible.AccessibleResetPropertyMethodInfo
ResolveAccessibleRangeMethod "resetRelation" o = Gtk.Accessible.AccessibleResetRelationMethodInfo
ResolveAccessibleRangeMethod "resetState" o = Gtk.Accessible.AccessibleResetStateMethodInfo
ResolveAccessibleRangeMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveAccessibleRangeMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveAccessibleRangeMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveAccessibleRangeMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveAccessibleRangeMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveAccessibleRangeMethod "updateNextAccessibleSibling" o = Gtk.Accessible.AccessibleUpdateNextAccessibleSiblingMethodInfo
ResolveAccessibleRangeMethod "updateProperty" o = Gtk.Accessible.AccessibleUpdatePropertyMethodInfo
ResolveAccessibleRangeMethod "updateRelation" o = Gtk.Accessible.AccessibleUpdateRelationMethodInfo
ResolveAccessibleRangeMethod "updateState" o = Gtk.Accessible.AccessibleUpdateStateMethodInfo
ResolveAccessibleRangeMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveAccessibleRangeMethod "getAccessibleParent" o = Gtk.Accessible.AccessibleGetAccessibleParentMethodInfo
ResolveAccessibleRangeMethod "getAccessibleRole" o = Gtk.Accessible.AccessibleGetAccessibleRoleMethodInfo
ResolveAccessibleRangeMethod "getAtContext" o = Gtk.Accessible.AccessibleGetAtContextMethodInfo
ResolveAccessibleRangeMethod "getBounds" o = Gtk.Accessible.AccessibleGetBoundsMethodInfo
ResolveAccessibleRangeMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveAccessibleRangeMethod "getFirstAccessibleChild" o = Gtk.Accessible.AccessibleGetFirstAccessibleChildMethodInfo
ResolveAccessibleRangeMethod "getNextAccessibleSibling" o = Gtk.Accessible.AccessibleGetNextAccessibleSiblingMethodInfo
ResolveAccessibleRangeMethod "getPlatformState" o = Gtk.Accessible.AccessibleGetPlatformStateMethodInfo
ResolveAccessibleRangeMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveAccessibleRangeMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveAccessibleRangeMethod "setAccessibleParent" o = Gtk.Accessible.AccessibleSetAccessibleParentMethodInfo
ResolveAccessibleRangeMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveAccessibleRangeMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveAccessibleRangeMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveAccessibleRangeMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveAccessibleRangeMethod t AccessibleRange, O.OverloadedMethod info AccessibleRange p) => OL.IsLabel t (AccessibleRange -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveAccessibleRangeMethod t AccessibleRange, O.OverloadedMethod info AccessibleRange p, R.HasField t AccessibleRange p) => R.HasField t AccessibleRange p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveAccessibleRangeMethod t AccessibleRange, O.OverloadedMethodInfo info AccessibleRange) => OL.IsLabel t (O.MethodProxy info AccessibleRange) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList AccessibleRange = AccessibleRangeSignalList
type AccessibleRangeSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif