{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gtk.Interfaces.ColorChooser
(
ColorChooser(..) ,
noColorChooser ,
IsColorChooser ,
toColorChooser ,
#if defined(ENABLE_OVERLOADING)
ResolveColorChooserMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
ColorChooserAddPaletteMethodInfo ,
#endif
colorChooserAddPalette ,
#if defined(ENABLE_OVERLOADING)
ColorChooserGetRgbaMethodInfo ,
#endif
colorChooserGetRgba ,
#if defined(ENABLE_OVERLOADING)
ColorChooserGetUseAlphaMethodInfo ,
#endif
colorChooserGetUseAlpha ,
#if defined(ENABLE_OVERLOADING)
ColorChooserSetRgbaMethodInfo ,
#endif
colorChooserSetRgba ,
#if defined(ENABLE_OVERLOADING)
ColorChooserSetUseAlphaMethodInfo ,
#endif
colorChooserSetUseAlpha ,
#if defined(ENABLE_OVERLOADING)
ColorChooserRgbaPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
colorChooserRgba ,
#endif
constructColorChooserRgba ,
getColorChooserRgba ,
setColorChooserRgba ,
#if defined(ENABLE_OVERLOADING)
ColorChooserUseAlphaPropertyInfo ,
#endif
#if defined(ENABLE_OVERLOADING)
colorChooserUseAlpha ,
#endif
constructColorChooserUseAlpha ,
getColorChooserUseAlpha ,
setColorChooserUseAlpha ,
C_ColorChooserColorActivatedCallback ,
ColorChooserColorActivatedCallback ,
#if defined(ENABLE_OVERLOADING)
ColorChooserColorActivatedSignalInfo ,
#endif
afterColorChooserColorActivated ,
genClosure_ColorChooserColorActivated ,
mk_ColorChooserColorActivatedCallback ,
noColorChooserColorActivatedCallback ,
onColorChooserColorActivated ,
wrap_ColorChooserColorActivatedCallback ,
) 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.GI.Base.Signals as B.Signals
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.Structs.RGBA as Gdk.RGBA
import {-# SOURCE #-} qualified GI.Gtk.Enums as Gtk.Enums
newtype ColorChooser = ColorChooser (ManagedPtr ColorChooser)
deriving (ColorChooser -> ColorChooser -> Bool
(ColorChooser -> ColorChooser -> Bool)
-> (ColorChooser -> ColorChooser -> Bool) -> Eq ColorChooser
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ColorChooser -> ColorChooser -> Bool
$c/= :: ColorChooser -> ColorChooser -> Bool
== :: ColorChooser -> ColorChooser -> Bool
$c== :: ColorChooser -> ColorChooser -> Bool
Eq)
noColorChooser :: Maybe ColorChooser
noColorChooser :: Maybe ColorChooser
noColorChooser = Maybe ColorChooser
forall a. Maybe a
Nothing
type ColorChooserColorActivatedCallback =
Gdk.RGBA.RGBA
-> IO ()
noColorChooserColorActivatedCallback :: Maybe ColorChooserColorActivatedCallback
noColorChooserColorActivatedCallback :: Maybe ColorChooserColorActivatedCallback
noColorChooserColorActivatedCallback = Maybe ColorChooserColorActivatedCallback
forall a. Maybe a
Nothing
type C_ColorChooserColorActivatedCallback =
Ptr () ->
Ptr Gdk.RGBA.RGBA ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ColorChooserColorActivatedCallback :: C_ColorChooserColorActivatedCallback -> IO (FunPtr C_ColorChooserColorActivatedCallback)
genClosure_ColorChooserColorActivated :: MonadIO m => ColorChooserColorActivatedCallback -> m (GClosure C_ColorChooserColorActivatedCallback)
genClosure_ColorChooserColorActivated :: ColorChooserColorActivatedCallback
-> m (GClosure C_ColorChooserColorActivatedCallback)
genClosure_ColorChooserColorActivated cb :: ColorChooserColorActivatedCallback
cb = IO (GClosure C_ColorChooserColorActivatedCallback)
-> m (GClosure C_ColorChooserColorActivatedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ColorChooserColorActivatedCallback)
-> m (GClosure C_ColorChooserColorActivatedCallback))
-> IO (GClosure C_ColorChooserColorActivatedCallback)
-> m (GClosure C_ColorChooserColorActivatedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ColorChooserColorActivatedCallback
cb' = ColorChooserColorActivatedCallback
-> C_ColorChooserColorActivatedCallback
wrap_ColorChooserColorActivatedCallback ColorChooserColorActivatedCallback
cb
C_ColorChooserColorActivatedCallback
-> IO (FunPtr C_ColorChooserColorActivatedCallback)
mk_ColorChooserColorActivatedCallback C_ColorChooserColorActivatedCallback
cb' IO (FunPtr C_ColorChooserColorActivatedCallback)
-> (FunPtr C_ColorChooserColorActivatedCallback
-> IO (GClosure C_ColorChooserColorActivatedCallback))
-> IO (GClosure C_ColorChooserColorActivatedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ColorChooserColorActivatedCallback
-> IO (GClosure C_ColorChooserColorActivatedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ColorChooserColorActivatedCallback ::
ColorChooserColorActivatedCallback ->
C_ColorChooserColorActivatedCallback
wrap_ColorChooserColorActivatedCallback :: ColorChooserColorActivatedCallback
-> C_ColorChooserColorActivatedCallback
wrap_ColorChooserColorActivatedCallback _cb :: ColorChooserColorActivatedCallback
_cb _ color :: Ptr RGBA
color _ = do
(ManagedPtr RGBA -> RGBA)
-> Ptr RGBA -> ColorChooserColorActivatedCallback -> IO ()
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
(ManagedPtr a -> a) -> Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient ManagedPtr RGBA -> RGBA
Gdk.RGBA.RGBA Ptr RGBA
color (ColorChooserColorActivatedCallback -> IO ())
-> ColorChooserColorActivatedCallback -> IO ()
forall a b. (a -> b) -> a -> b
$ \color' :: RGBA
color' -> do
ColorChooserColorActivatedCallback
_cb RGBA
color'
onColorChooserColorActivated :: (IsColorChooser a, MonadIO m) => a -> ColorChooserColorActivatedCallback -> m SignalHandlerId
onColorChooserColorActivated :: a -> ColorChooserColorActivatedCallback -> m SignalHandlerId
onColorChooserColorActivated obj :: a
obj cb :: ColorChooserColorActivatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ColorChooserColorActivatedCallback
cb' = ColorChooserColorActivatedCallback
-> C_ColorChooserColorActivatedCallback
wrap_ColorChooserColorActivatedCallback ColorChooserColorActivatedCallback
cb
FunPtr C_ColorChooserColorActivatedCallback
cb'' <- C_ColorChooserColorActivatedCallback
-> IO (FunPtr C_ColorChooserColorActivatedCallback)
mk_ColorChooserColorActivatedCallback C_ColorChooserColorActivatedCallback
cb'
a
-> Text
-> FunPtr C_ColorChooserColorActivatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "color-activated" FunPtr C_ColorChooserColorActivatedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterColorChooserColorActivated :: (IsColorChooser a, MonadIO m) => a -> ColorChooserColorActivatedCallback -> m SignalHandlerId
afterColorChooserColorActivated :: a -> ColorChooserColorActivatedCallback -> m SignalHandlerId
afterColorChooserColorActivated obj :: a
obj cb :: ColorChooserColorActivatedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ColorChooserColorActivatedCallback
cb' = ColorChooserColorActivatedCallback
-> C_ColorChooserColorActivatedCallback
wrap_ColorChooserColorActivatedCallback ColorChooserColorActivatedCallback
cb
FunPtr C_ColorChooserColorActivatedCallback
cb'' <- C_ColorChooserColorActivatedCallback
-> IO (FunPtr C_ColorChooserColorActivatedCallback)
mk_ColorChooserColorActivatedCallback C_ColorChooserColorActivatedCallback
cb'
a
-> Text
-> FunPtr C_ColorChooserColorActivatedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj "color-activated" FunPtr C_ColorChooserColorActivatedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ColorChooserColorActivatedSignalInfo
instance SignalInfo ColorChooserColorActivatedSignalInfo where
type HaskellCallbackType ColorChooserColorActivatedSignalInfo = ColorChooserColorActivatedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ColorChooserColorActivatedCallback cb
cb'' <- mk_ColorChooserColorActivatedCallback cb'
connectSignalFunPtr obj "color-activated" cb'' connectMode detail
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList ColorChooser = ColorChooserSignalList
type ColorChooserSignalList = ('[ '("colorActivated", ColorChooserColorActivatedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "gtk_color_chooser_get_type"
c_gtk_color_chooser_get_type :: IO GType
instance GObject ColorChooser where
gobjectType :: IO GType
gobjectType = IO GType
c_gtk_color_chooser_get_type
instance B.GValue.IsGValue ColorChooser where
toGValue :: ColorChooser -> IO GValue
toGValue o :: ColorChooser
o = do
GType
gtype <- IO GType
c_gtk_color_chooser_get_type
ColorChooser -> (Ptr ColorChooser -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr ColorChooser
o (GType
-> (GValue -> Ptr ColorChooser -> IO ())
-> Ptr ColorChooser
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr ColorChooser -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO ColorChooser
fromGValue gv :: GValue
gv = do
Ptr ColorChooser
ptr <- GValue -> IO (Ptr ColorChooser)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr ColorChooser)
(ManagedPtr ColorChooser -> ColorChooser)
-> Ptr ColorChooser -> IO ColorChooser
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr ColorChooser -> ColorChooser
ColorChooser Ptr ColorChooser
ptr
class (GObject o, O.IsDescendantOf ColorChooser o) => IsColorChooser o
instance (GObject o, O.IsDescendantOf ColorChooser o) => IsColorChooser o
instance O.HasParentTypes ColorChooser
type instance O.ParentTypes ColorChooser = '[GObject.Object.Object]
toColorChooser :: (MonadIO m, IsColorChooser o) => o -> m ColorChooser
toColorChooser :: o -> m ColorChooser
toColorChooser = IO ColorChooser -> m ColorChooser
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ColorChooser -> m ColorChooser)
-> (o -> IO ColorChooser) -> o -> m ColorChooser
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr ColorChooser -> ColorChooser) -> o -> IO ColorChooser
forall o o'.
(HasCallStack, GObject o, GObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr ColorChooser -> ColorChooser
ColorChooser
getColorChooserRgba :: (MonadIO m, IsColorChooser o) => o -> m (Maybe Gdk.RGBA.RGBA)
getColorChooserRgba :: o -> m (Maybe RGBA)
getColorChooserRgba obj :: o
obj = IO (Maybe RGBA) -> m (Maybe RGBA)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe RGBA) -> m (Maybe RGBA))
-> IO (Maybe RGBA) -> m (Maybe RGBA)
forall a b. (a -> b) -> a -> b
$ o -> String -> (ManagedPtr RGBA -> RGBA) -> IO (Maybe RGBA)
forall a b.
(GObject a, BoxedObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyBoxed o
obj "rgba" ManagedPtr RGBA -> RGBA
Gdk.RGBA.RGBA
setColorChooserRgba :: (MonadIO m, IsColorChooser o) => o -> Gdk.RGBA.RGBA -> m ()
setColorChooserRgba :: o -> RGBA -> m ()
setColorChooserRgba obj :: o
obj val :: RGBA
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Maybe RGBA -> IO ()
forall a b.
(GObject a, BoxedObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyBoxed o
obj "rgba" (RGBA -> Maybe RGBA
forall a. a -> Maybe a
Just RGBA
val)
constructColorChooserRgba :: (IsColorChooser o) => Gdk.RGBA.RGBA -> IO (GValueConstruct o)
constructColorChooserRgba :: RGBA -> IO (GValueConstruct o)
constructColorChooserRgba val :: RGBA
val = String -> Maybe RGBA -> IO (GValueConstruct o)
forall a o.
BoxedObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBoxed "rgba" (RGBA -> Maybe RGBA
forall a. a -> Maybe a
Just RGBA
val)
#if defined(ENABLE_OVERLOADING)
data ColorChooserRgbaPropertyInfo
instance AttrInfo ColorChooserRgbaPropertyInfo where
type AttrAllowedOps ColorChooserRgbaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint ColorChooserRgbaPropertyInfo = IsColorChooser
type AttrSetTypeConstraint ColorChooserRgbaPropertyInfo = (~) Gdk.RGBA.RGBA
type AttrTransferTypeConstraint ColorChooserRgbaPropertyInfo = (~) Gdk.RGBA.RGBA
type AttrTransferType ColorChooserRgbaPropertyInfo = Gdk.RGBA.RGBA
type AttrGetType ColorChooserRgbaPropertyInfo = (Maybe Gdk.RGBA.RGBA)
type AttrLabel ColorChooserRgbaPropertyInfo = "rgba"
type AttrOrigin ColorChooserRgbaPropertyInfo = ColorChooser
attrGet = getColorChooserRgba
attrSet = setColorChooserRgba
attrTransfer _ v = do
return v
attrConstruct = constructColorChooserRgba
attrClear = undefined
#endif
getColorChooserUseAlpha :: (MonadIO m, IsColorChooser o) => o -> m Bool
getColorChooserUseAlpha :: o -> m Bool
getColorChooserUseAlpha obj :: o
obj = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ o -> String -> IO Bool
forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj "use-alpha"
setColorChooserUseAlpha :: (MonadIO m, IsColorChooser o) => o -> Bool -> m ()
setColorChooserUseAlpha :: o -> Bool -> m ()
setColorChooserUseAlpha obj :: o
obj val :: Bool
val = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ o -> String -> Bool -> IO ()
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj "use-alpha" Bool
val
constructColorChooserUseAlpha :: (IsColorChooser o) => Bool -> IO (GValueConstruct o)
constructColorChooserUseAlpha :: Bool -> IO (GValueConstruct o)
constructColorChooserUseAlpha val :: Bool
val = String -> Bool -> IO (GValueConstruct o)
forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool "use-alpha" Bool
val
#if defined(ENABLE_OVERLOADING)
data ColorChooserUseAlphaPropertyInfo
instance AttrInfo ColorChooserUseAlphaPropertyInfo where
type AttrAllowedOps ColorChooserUseAlphaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint ColorChooserUseAlphaPropertyInfo = IsColorChooser
type AttrSetTypeConstraint ColorChooserUseAlphaPropertyInfo = (~) Bool
type AttrTransferTypeConstraint ColorChooserUseAlphaPropertyInfo = (~) Bool
type AttrTransferType ColorChooserUseAlphaPropertyInfo = Bool
type AttrGetType ColorChooserUseAlphaPropertyInfo = Bool
type AttrLabel ColorChooserUseAlphaPropertyInfo = "use-alpha"
type AttrOrigin ColorChooserUseAlphaPropertyInfo = ColorChooser
attrGet = getColorChooserUseAlpha
attrSet = setColorChooserUseAlpha
attrTransfer _ v = do
return v
attrConstruct = constructColorChooserUseAlpha
attrClear = undefined
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList ColorChooser
type instance O.AttributeList ColorChooser = ColorChooserAttributeList
type ColorChooserAttributeList = ('[ '("rgba", ColorChooserRgbaPropertyInfo), '("useAlpha", ColorChooserUseAlphaPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
colorChooserRgba :: AttrLabelProxy "rgba"
colorChooserRgba = AttrLabelProxy
colorChooserUseAlpha :: AttrLabelProxy "useAlpha"
colorChooserUseAlpha = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveColorChooserMethod (t :: Symbol) (o :: *) :: * where
ResolveColorChooserMethod "addPalette" o = ColorChooserAddPaletteMethodInfo
ResolveColorChooserMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveColorChooserMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveColorChooserMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveColorChooserMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveColorChooserMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveColorChooserMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveColorChooserMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveColorChooserMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveColorChooserMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveColorChooserMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveColorChooserMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveColorChooserMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveColorChooserMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveColorChooserMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveColorChooserMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveColorChooserMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveColorChooserMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveColorChooserMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveColorChooserMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveColorChooserMethod "getRgba" o = ColorChooserGetRgbaMethodInfo
ResolveColorChooserMethod "getUseAlpha" o = ColorChooserGetUseAlphaMethodInfo
ResolveColorChooserMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveColorChooserMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveColorChooserMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveColorChooserMethod "setRgba" o = ColorChooserSetRgbaMethodInfo
ResolveColorChooserMethod "setUseAlpha" o = ColorChooserSetUseAlphaMethodInfo
ResolveColorChooserMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveColorChooserMethod t ColorChooser, O.MethodInfo info ColorChooser p) => OL.IsLabel t (ColorChooser -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
foreign import ccall "gtk_color_chooser_add_palette" gtk_color_chooser_add_palette ::
Ptr ColorChooser ->
CUInt ->
Int32 ->
Int32 ->
Ptr Gdk.RGBA.RGBA ->
IO ()
colorChooserAddPalette ::
(B.CallStack.HasCallStack, MonadIO m, IsColorChooser a) =>
a
-> Gtk.Enums.Orientation
-> Int32
-> Maybe ([Gdk.RGBA.RGBA])
-> m ()
colorChooserAddPalette :: a -> Orientation -> Int32 -> Maybe [RGBA] -> m ()
colorChooserAddPalette chooser :: a
chooser orientation :: Orientation
orientation colorsPerLine :: Int32
colorsPerLine colors :: Maybe [RGBA]
colors = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
let nColors :: Int32
nColors = case Maybe [RGBA]
colors of
Nothing -> 0
Just jColors :: [RGBA]
jColors -> Int -> Int32
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> Int32) -> Int -> Int32
forall a b. (a -> b) -> a -> b
$ [RGBA] -> Int
forall (t :: * -> *) a. Foldable t => t a -> Int
length [RGBA]
jColors
Ptr ColorChooser
chooser' <- a -> IO (Ptr ColorChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
let orientation' :: CUInt
orientation' = (Int -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CUInt) -> (Orientation -> Int) -> Orientation -> CUInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Orientation -> Int
forall a. Enum a => a -> Int
fromEnum) Orientation
orientation
Ptr RGBA
maybeColors <- case Maybe [RGBA]
colors of
Nothing -> Ptr RGBA -> IO (Ptr RGBA)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr RGBA
forall a. Ptr a
nullPtr
Just jColors :: [RGBA]
jColors -> do
[Ptr RGBA]
jColors' <- (RGBA -> IO (Ptr RGBA)) -> [RGBA] -> IO [Ptr RGBA]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
mapM RGBA -> IO (Ptr RGBA)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr [RGBA]
jColors
Ptr RGBA
jColors'' <- Int -> [Ptr RGBA] -> IO (Ptr RGBA)
forall a. Int -> [Ptr a] -> IO (Ptr a)
packBlockArray 32 [Ptr RGBA]
jColors'
Ptr RGBA -> IO (Ptr RGBA)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr RGBA
jColors''
Ptr ColorChooser -> CUInt -> Int32 -> Int32 -> Ptr RGBA -> IO ()
gtk_color_chooser_add_palette Ptr ColorChooser
chooser' CUInt
orientation' Int32
colorsPerLine Int32
nColors Ptr RGBA
maybeColors
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Maybe [RGBA] -> ([RGBA] -> IO ()) -> IO ()
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe [RGBA]
colors (ColorChooserColorActivatedCallback -> [RGBA] -> IO ()
forall (t :: * -> *) (m :: * -> *) a b.
(Foldable t, Monad m) =>
(a -> m b) -> t a -> m ()
mapM_ ColorChooserColorActivatedCallback
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr)
Ptr RGBA -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr RGBA
maybeColors
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data ColorChooserAddPaletteMethodInfo
instance (signature ~ (Gtk.Enums.Orientation -> Int32 -> Maybe ([Gdk.RGBA.RGBA]) -> m ()), MonadIO m, IsColorChooser a) => O.MethodInfo ColorChooserAddPaletteMethodInfo a signature where
overloadedMethod = colorChooserAddPalette
#endif
foreign import ccall "gtk_color_chooser_get_rgba" gtk_color_chooser_get_rgba ::
Ptr ColorChooser ->
Ptr Gdk.RGBA.RGBA ->
IO ()
colorChooserGetRgba ::
(B.CallStack.HasCallStack, MonadIO m, IsColorChooser a) =>
a
-> m (Gdk.RGBA.RGBA)
colorChooserGetRgba :: a -> m RGBA
colorChooserGetRgba chooser :: a
chooser = IO RGBA -> m RGBA
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO RGBA -> m RGBA) -> IO RGBA -> m RGBA
forall a b. (a -> b) -> a -> b
$ do
Ptr ColorChooser
chooser' <- a -> IO (Ptr ColorChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr RGBA
color <- Int -> IO (Ptr RGBA)
forall a. BoxedObject a => Int -> IO (Ptr a)
callocBoxedBytes 32 :: IO (Ptr Gdk.RGBA.RGBA)
Ptr ColorChooser -> Ptr RGBA -> IO ()
gtk_color_chooser_get_rgba Ptr ColorChooser
chooser' Ptr RGBA
color
RGBA
color' <- ((ManagedPtr RGBA -> RGBA) -> Ptr RGBA -> IO RGBA
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr RGBA -> RGBA
Gdk.RGBA.RGBA) Ptr RGBA
color
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
RGBA -> IO RGBA
forall (m :: * -> *) a. Monad m => a -> m a
return RGBA
color'
#if defined(ENABLE_OVERLOADING)
data ColorChooserGetRgbaMethodInfo
instance (signature ~ (m (Gdk.RGBA.RGBA)), MonadIO m, IsColorChooser a) => O.MethodInfo ColorChooserGetRgbaMethodInfo a signature where
overloadedMethod = colorChooserGetRgba
#endif
foreign import ccall "gtk_color_chooser_get_use_alpha" gtk_color_chooser_get_use_alpha ::
Ptr ColorChooser ->
IO CInt
colorChooserGetUseAlpha ::
(B.CallStack.HasCallStack, MonadIO m, IsColorChooser a) =>
a
-> m Bool
colorChooserGetUseAlpha :: a -> m Bool
colorChooserGetUseAlpha chooser :: a
chooser = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr ColorChooser
chooser' <- a -> IO (Ptr ColorChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
CInt
result <- Ptr ColorChooser -> IO CInt
gtk_color_chooser_get_use_alpha Ptr ColorChooser
chooser'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= 0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data ColorChooserGetUseAlphaMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsColorChooser a) => O.MethodInfo ColorChooserGetUseAlphaMethodInfo a signature where
overloadedMethod = colorChooserGetUseAlpha
#endif
foreign import ccall "gtk_color_chooser_set_rgba" gtk_color_chooser_set_rgba ::
Ptr ColorChooser ->
Ptr Gdk.RGBA.RGBA ->
IO ()
colorChooserSetRgba ::
(B.CallStack.HasCallStack, MonadIO m, IsColorChooser a) =>
a
-> Gdk.RGBA.RGBA
-> m ()
colorChooserSetRgba :: a -> RGBA -> m ()
colorChooserSetRgba chooser :: a
chooser color :: RGBA
color = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr ColorChooser
chooser' <- a -> IO (Ptr ColorChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
Ptr RGBA
color' <- RGBA -> IO (Ptr RGBA)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr RGBA
color
Ptr ColorChooser -> Ptr RGBA -> IO ()
gtk_color_chooser_set_rgba Ptr ColorChooser
chooser' Ptr RGBA
color'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
ColorChooserColorActivatedCallback
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr RGBA
color
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data ColorChooserSetRgbaMethodInfo
instance (signature ~ (Gdk.RGBA.RGBA -> m ()), MonadIO m, IsColorChooser a) => O.MethodInfo ColorChooserSetRgbaMethodInfo a signature where
overloadedMethod = colorChooserSetRgba
#endif
foreign import ccall "gtk_color_chooser_set_use_alpha" gtk_color_chooser_set_use_alpha ::
Ptr ColorChooser ->
CInt ->
IO ()
colorChooserSetUseAlpha ::
(B.CallStack.HasCallStack, MonadIO m, IsColorChooser a) =>
a
-> Bool
-> m ()
colorChooserSetUseAlpha :: a -> Bool -> m ()
colorChooserSetUseAlpha chooser :: a
chooser useAlpha :: Bool
useAlpha = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr ColorChooser
chooser' <- a -> IO (Ptr ColorChooser)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
chooser
let useAlpha' :: CInt
useAlpha' = (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (Bool -> Int) -> Bool -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Bool -> Int
forall a. Enum a => a -> Int
fromEnum) Bool
useAlpha
Ptr ColorChooser -> CInt -> IO ()
gtk_color_chooser_set_use_alpha Ptr ColorChooser
chooser' CInt
useAlpha'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
chooser
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data ColorChooserSetUseAlphaMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsColorChooser a) => O.MethodInfo ColorChooserSetUseAlphaMethodInfo a signature where
overloadedMethod = colorChooserSetUseAlpha
#endif