gi-gdkx11-3.0.5: GI/GdkX11/Objects/X11Visual.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
/No description available in the introspection data./
-}
#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.GdkX11.Objects.X11Visual
(
-- * Exported types
X11Visual(..) ,
IsX11Visual ,
toX11Visual ,
noX11Visual ,
-- * Methods
-- ** getXvisual #method:getXvisual#
#if ENABLE_OVERLOADING
X11VisualGetXvisualMethodInfo ,
#endif
x11VisualGetXvisual ,
) 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.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
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.Text as T
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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Objects.Visual as Gdk.Visual
import qualified GI.Xlib.Structs.Visual as Xlib.Visual
-- | Memory-managed wrapper type.
newtype X11Visual = X11Visual (ManagedPtr X11Visual)
foreign import ccall "gdk_x11_visual_get_type"
c_gdk_x11_visual_get_type :: IO GType
instance GObject X11Visual where
gobjectType = c_gdk_x11_visual_get_type
-- | Type class for types which can be safely cast to `X11Visual`, for instance with `toX11Visual`.
class (GObject o, O.IsDescendantOf X11Visual o) => IsX11Visual o
instance (GObject o, O.IsDescendantOf X11Visual o) => IsX11Visual o
instance O.HasParentTypes X11Visual
type instance O.ParentTypes X11Visual = '[Gdk.Visual.Visual, GObject.Object.Object]
-- | Cast to `X11Visual`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toX11Visual :: (MonadIO m, IsX11Visual o) => o -> m X11Visual
toX11Visual = liftIO . unsafeCastTo X11Visual
-- | A convenience alias for `Nothing` :: `Maybe` `X11Visual`.
noX11Visual :: Maybe X11Visual
noX11Visual = Nothing
#if ENABLE_OVERLOADING
type family ResolveX11VisualMethod (t :: Symbol) (o :: *) :: * where
ResolveX11VisualMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveX11VisualMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveX11VisualMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveX11VisualMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveX11VisualMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveX11VisualMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveX11VisualMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveX11VisualMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveX11VisualMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveX11VisualMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveX11VisualMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveX11VisualMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveX11VisualMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveX11VisualMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveX11VisualMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveX11VisualMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveX11VisualMethod "getBitsPerRgb" o = Gdk.Visual.VisualGetBitsPerRgbMethodInfo
ResolveX11VisualMethod "getBluePixelDetails" o = Gdk.Visual.VisualGetBluePixelDetailsMethodInfo
ResolveX11VisualMethod "getByteOrder" o = Gdk.Visual.VisualGetByteOrderMethodInfo
ResolveX11VisualMethod "getColormapSize" o = Gdk.Visual.VisualGetColormapSizeMethodInfo
ResolveX11VisualMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveX11VisualMethod "getDepth" o = Gdk.Visual.VisualGetDepthMethodInfo
ResolveX11VisualMethod "getGreenPixelDetails" o = Gdk.Visual.VisualGetGreenPixelDetailsMethodInfo
ResolveX11VisualMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveX11VisualMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveX11VisualMethod "getRedPixelDetails" o = Gdk.Visual.VisualGetRedPixelDetailsMethodInfo
ResolveX11VisualMethod "getScreen" o = Gdk.Visual.VisualGetScreenMethodInfo
ResolveX11VisualMethod "getVisualType" o = Gdk.Visual.VisualGetVisualTypeMethodInfo
ResolveX11VisualMethod "getXvisual" o = X11VisualGetXvisualMethodInfo
ResolveX11VisualMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveX11VisualMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveX11VisualMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveX11VisualMethod t X11Visual, O.MethodInfo info X11Visual p) => OL.IsLabel t (X11Visual -> 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
#if ENABLE_OVERLOADING
instance O.HasAttributeList X11Visual
type instance O.AttributeList X11Visual = X11VisualAttributeList
type X11VisualAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList X11Visual = X11VisualSignalList
type X11VisualSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
-- method X11Visual::get_xvisual
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "visual", argType = TInterface (Name {namespace = "GdkX11", name = "X11Visual"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GdkVisual.", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "xlib", name = "Visual"}))
-- throws : False
-- Skip return : False
foreign import ccall "gdk_x11_visual_get_xvisual" gdk_x11_visual_get_xvisual ::
Ptr X11Visual -> -- visual : TInterface (Name {namespace = "GdkX11", name = "X11Visual"})
IO (Ptr Xlib.Visual.Visual)
{- |
Returns the X visual belonging to a 'GI.Gdk.Objects.Visual.Visual'.
-}
x11VisualGetXvisual ::
(B.CallStack.HasCallStack, MonadIO m, IsX11Visual a) =>
a
{- ^ /@visual@/: a 'GI.Gdk.Objects.Visual.Visual'. -}
-> m Xlib.Visual.Visual
{- ^ __Returns:__ an Xlib Visual*. -}
x11VisualGetXvisual visual = liftIO $ do
visual' <- unsafeManagedPtrCastPtr visual
result <- gdk_x11_visual_get_xvisual visual'
checkUnexpectedReturnNULL "x11VisualGetXvisual" result
result' <- (newPtr Xlib.Visual.Visual) result
touchManagedPtr visual
return result'
#if ENABLE_OVERLOADING
data X11VisualGetXvisualMethodInfo
instance (signature ~ (m Xlib.Visual.Visual), MonadIO m, IsX11Visual a) => O.MethodInfo X11VisualGetXvisualMethodInfo a signature where
overloadedMethod _ = x11VisualGetXvisual
#endif