{- | 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.Gtk.Objects.CellRendererToggle ( -- * Exported types CellRendererToggle(..) , CellRendererToggleK , toCellRendererToggle , noCellRendererToggle , -- * Methods -- ** cellRendererToggleGetActivatable cellRendererToggleGetActivatable , -- ** cellRendererToggleGetActive cellRendererToggleGetActive , -- ** cellRendererToggleGetRadio cellRendererToggleGetRadio , -- ** cellRendererToggleNew cellRendererToggleNew , -- ** cellRendererToggleSetActivatable cellRendererToggleSetActivatable , -- ** cellRendererToggleSetActive cellRendererToggleSetActive , -- ** cellRendererToggleSetRadio cellRendererToggleSetRadio , -- * Properties -- ** Activatable CellRendererToggleActivatablePropertyInfo, constructCellRendererToggleActivatable , getCellRendererToggleActivatable , setCellRendererToggleActivatable , -- ** Active CellRendererToggleActivePropertyInfo , constructCellRendererToggleActive , getCellRendererToggleActive , setCellRendererToggleActive , -- ** Inconsistent CellRendererToggleInconsistentPropertyInfo, constructCellRendererToggleInconsistent , getCellRendererToggleInconsistent , setCellRendererToggleInconsistent , -- ** IndicatorSize CellRendererToggleIndicatorSizePropertyInfo, constructCellRendererToggleIndicatorSize, getCellRendererToggleIndicatorSize , setCellRendererToggleIndicatorSize , -- ** Radio CellRendererToggleRadioPropertyInfo , constructCellRendererToggleRadio , getCellRendererToggleRadio , setCellRendererToggleRadio , -- * Signals -- ** Toggled CellRendererToggleToggledCallback , CellRendererToggleToggledCallbackC , CellRendererToggleToggledSignalInfo , afterCellRendererToggleToggled , cellRendererToggleToggledCallbackWrapper, cellRendererToggleToggledClosure , mkCellRendererToggleToggledCallback , noCellRendererToggleToggledCallback , onCellRendererToggleToggled , ) 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.Gtk.Types import GI.Gtk.Callbacks import qualified GI.GObject as GObject newtype CellRendererToggle = CellRendererToggle (ForeignPtr CellRendererToggle) foreign import ccall "gtk_cell_renderer_toggle_get_type" c_gtk_cell_renderer_toggle_get_type :: IO GType type instance ParentTypes CellRendererToggle = CellRendererToggleParentTypes type CellRendererToggleParentTypes = '[CellRenderer, GObject.Object] instance GObject CellRendererToggle where gobjectIsInitiallyUnowned _ = True gobjectType _ = c_gtk_cell_renderer_toggle_get_type class GObject o => CellRendererToggleK o instance (GObject o, IsDescendantOf CellRendererToggle o) => CellRendererToggleK o toCellRendererToggle :: CellRendererToggleK o => o -> IO CellRendererToggle toCellRendererToggle = unsafeCastTo CellRendererToggle noCellRendererToggle :: Maybe CellRendererToggle noCellRendererToggle = Nothing -- signal CellRendererToggle::toggled type CellRendererToggleToggledCallback = T.Text -> IO () noCellRendererToggleToggledCallback :: Maybe CellRendererToggleToggledCallback noCellRendererToggleToggledCallback = Nothing type CellRendererToggleToggledCallbackC = Ptr () -> -- object CString -> Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkCellRendererToggleToggledCallback :: CellRendererToggleToggledCallbackC -> IO (FunPtr CellRendererToggleToggledCallbackC) cellRendererToggleToggledClosure :: CellRendererToggleToggledCallback -> IO Closure cellRendererToggleToggledClosure cb = newCClosure =<< mkCellRendererToggleToggledCallback wrapped where wrapped = cellRendererToggleToggledCallbackWrapper cb cellRendererToggleToggledCallbackWrapper :: CellRendererToggleToggledCallback -> Ptr () -> CString -> Ptr () -> IO () cellRendererToggleToggledCallbackWrapper _cb _ path _ = do path' <- cstringToText path _cb path' onCellRendererToggleToggled :: (GObject a, MonadIO m) => a -> CellRendererToggleToggledCallback -> m SignalHandlerId onCellRendererToggleToggled obj cb = liftIO $ connectCellRendererToggleToggled obj cb SignalConnectBefore afterCellRendererToggleToggled :: (GObject a, MonadIO m) => a -> CellRendererToggleToggledCallback -> m SignalHandlerId afterCellRendererToggleToggled obj cb = connectCellRendererToggleToggled obj cb SignalConnectAfter connectCellRendererToggleToggled :: (GObject a, MonadIO m) => a -> CellRendererToggleToggledCallback -> SignalConnectMode -> m SignalHandlerId connectCellRendererToggleToggled obj cb after = liftIO $ do cb' <- mkCellRendererToggleToggledCallback (cellRendererToggleToggledCallbackWrapper cb) connectSignalFunPtr obj "toggled" cb' after -- VVV Prop "activatable" -- Type: TBasicType TBoolean -- Flags: [PropertyReadable,PropertyWritable] getCellRendererToggleActivatable :: (MonadIO m, CellRendererToggleK o) => o -> m Bool getCellRendererToggleActivatable obj = liftIO $ getObjectPropertyBool obj "activatable" setCellRendererToggleActivatable :: (MonadIO m, CellRendererToggleK o) => o -> Bool -> m () setCellRendererToggleActivatable obj val = liftIO $ setObjectPropertyBool obj "activatable" val constructCellRendererToggleActivatable :: Bool -> IO ([Char], GValue) constructCellRendererToggleActivatable val = constructObjectPropertyBool "activatable" val data CellRendererToggleActivatablePropertyInfo instance AttrInfo CellRendererToggleActivatablePropertyInfo where type AttrAllowedOps CellRendererToggleActivatablePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint CellRendererToggleActivatablePropertyInfo = (~) Bool type AttrBaseTypeConstraint CellRendererToggleActivatablePropertyInfo = CellRendererToggleK type AttrGetType CellRendererToggleActivatablePropertyInfo = Bool type AttrLabel CellRendererToggleActivatablePropertyInfo = "CellRendererToggle::activatable" attrGet _ = getCellRendererToggleActivatable attrSet _ = setCellRendererToggleActivatable attrConstruct _ = constructCellRendererToggleActivatable -- VVV Prop "active" -- Type: TBasicType TBoolean -- Flags: [PropertyReadable,PropertyWritable] getCellRendererToggleActive :: (MonadIO m, CellRendererToggleK o) => o -> m Bool getCellRendererToggleActive obj = liftIO $ getObjectPropertyBool obj "active" setCellRendererToggleActive :: (MonadIO m, CellRendererToggleK o) => o -> Bool -> m () setCellRendererToggleActive obj val = liftIO $ setObjectPropertyBool obj "active" val constructCellRendererToggleActive :: Bool -> IO ([Char], GValue) constructCellRendererToggleActive val = constructObjectPropertyBool "active" val data CellRendererToggleActivePropertyInfo instance AttrInfo CellRendererToggleActivePropertyInfo where type AttrAllowedOps CellRendererToggleActivePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint CellRendererToggleActivePropertyInfo = (~) Bool type AttrBaseTypeConstraint CellRendererToggleActivePropertyInfo = CellRendererToggleK type AttrGetType CellRendererToggleActivePropertyInfo = Bool type AttrLabel CellRendererToggleActivePropertyInfo = "CellRendererToggle::active" attrGet _ = getCellRendererToggleActive attrSet _ = setCellRendererToggleActive attrConstruct _ = constructCellRendererToggleActive -- VVV Prop "inconsistent" -- Type: TBasicType TBoolean -- Flags: [PropertyReadable,PropertyWritable] getCellRendererToggleInconsistent :: (MonadIO m, CellRendererToggleK o) => o -> m Bool getCellRendererToggleInconsistent obj = liftIO $ getObjectPropertyBool obj "inconsistent" setCellRendererToggleInconsistent :: (MonadIO m, CellRendererToggleK o) => o -> Bool -> m () setCellRendererToggleInconsistent obj val = liftIO $ setObjectPropertyBool obj "inconsistent" val constructCellRendererToggleInconsistent :: Bool -> IO ([Char], GValue) constructCellRendererToggleInconsistent val = constructObjectPropertyBool "inconsistent" val data CellRendererToggleInconsistentPropertyInfo instance AttrInfo CellRendererToggleInconsistentPropertyInfo where type AttrAllowedOps CellRendererToggleInconsistentPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint CellRendererToggleInconsistentPropertyInfo = (~) Bool type AttrBaseTypeConstraint CellRendererToggleInconsistentPropertyInfo = CellRendererToggleK type AttrGetType CellRendererToggleInconsistentPropertyInfo = Bool type AttrLabel CellRendererToggleInconsistentPropertyInfo = "CellRendererToggle::inconsistent" attrGet _ = getCellRendererToggleInconsistent attrSet _ = setCellRendererToggleInconsistent attrConstruct _ = constructCellRendererToggleInconsistent -- VVV Prop "indicator-size" -- Type: TBasicType TInt32 -- Flags: [PropertyReadable,PropertyWritable] getCellRendererToggleIndicatorSize :: (MonadIO m, CellRendererToggleK o) => o -> m Int32 getCellRendererToggleIndicatorSize obj = liftIO $ getObjectPropertyCInt obj "indicator-size" setCellRendererToggleIndicatorSize :: (MonadIO m, CellRendererToggleK o) => o -> Int32 -> m () setCellRendererToggleIndicatorSize obj val = liftIO $ setObjectPropertyCInt obj "indicator-size" val constructCellRendererToggleIndicatorSize :: Int32 -> IO ([Char], GValue) constructCellRendererToggleIndicatorSize val = constructObjectPropertyCInt "indicator-size" val data CellRendererToggleIndicatorSizePropertyInfo instance AttrInfo CellRendererToggleIndicatorSizePropertyInfo where type AttrAllowedOps CellRendererToggleIndicatorSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint CellRendererToggleIndicatorSizePropertyInfo = (~) Int32 type AttrBaseTypeConstraint CellRendererToggleIndicatorSizePropertyInfo = CellRendererToggleK type AttrGetType CellRendererToggleIndicatorSizePropertyInfo = Int32 type AttrLabel CellRendererToggleIndicatorSizePropertyInfo = "CellRendererToggle::indicator-size" attrGet _ = getCellRendererToggleIndicatorSize attrSet _ = setCellRendererToggleIndicatorSize attrConstruct _ = constructCellRendererToggleIndicatorSize -- VVV Prop "radio" -- Type: TBasicType TBoolean -- Flags: [PropertyReadable,PropertyWritable] getCellRendererToggleRadio :: (MonadIO m, CellRendererToggleK o) => o -> m Bool getCellRendererToggleRadio obj = liftIO $ getObjectPropertyBool obj "radio" setCellRendererToggleRadio :: (MonadIO m, CellRendererToggleK o) => o -> Bool -> m () setCellRendererToggleRadio obj val = liftIO $ setObjectPropertyBool obj "radio" val constructCellRendererToggleRadio :: Bool -> IO ([Char], GValue) constructCellRendererToggleRadio val = constructObjectPropertyBool "radio" val data CellRendererToggleRadioPropertyInfo instance AttrInfo CellRendererToggleRadioPropertyInfo where type AttrAllowedOps CellRendererToggleRadioPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet] type AttrSetTypeConstraint CellRendererToggleRadioPropertyInfo = (~) Bool type AttrBaseTypeConstraint CellRendererToggleRadioPropertyInfo = CellRendererToggleK type AttrGetType CellRendererToggleRadioPropertyInfo = Bool type AttrLabel CellRendererToggleRadioPropertyInfo = "CellRendererToggle::radio" attrGet _ = getCellRendererToggleRadio attrSet _ = setCellRendererToggleRadio attrConstruct _ = constructCellRendererToggleRadio type instance AttributeList CellRendererToggle = CellRendererToggleAttributeList type CellRendererToggleAttributeList = ('[ '("activatable", CellRendererToggleActivatablePropertyInfo), '("active", CellRendererToggleActivePropertyInfo), '("cell-background", CellRendererCellBackgroundPropertyInfo), '("cell-background-gdk", CellRendererCellBackgroundGdkPropertyInfo), '("cell-background-rgba", CellRendererCellBackgroundRgbaPropertyInfo), '("cell-background-set", CellRendererCellBackgroundSetPropertyInfo), '("editing", CellRendererEditingPropertyInfo), '("height", CellRendererHeightPropertyInfo), '("inconsistent", CellRendererToggleInconsistentPropertyInfo), '("indicator-size", CellRendererToggleIndicatorSizePropertyInfo), '("is-expanded", CellRendererIsExpandedPropertyInfo), '("is-expander", CellRendererIsExpanderPropertyInfo), '("mode", CellRendererModePropertyInfo), '("radio", CellRendererToggleRadioPropertyInfo), '("sensitive", CellRendererSensitivePropertyInfo), '("visible", CellRendererVisiblePropertyInfo), '("width", CellRendererWidthPropertyInfo), '("xalign", CellRendererXalignPropertyInfo), '("xpad", CellRendererXpadPropertyInfo), '("yalign", CellRendererYalignPropertyInfo), '("ypad", CellRendererYpadPropertyInfo)] :: [(Symbol, *)]) data CellRendererToggleToggledSignalInfo instance SignalInfo CellRendererToggleToggledSignalInfo where type HaskellCallbackType CellRendererToggleToggledSignalInfo = CellRendererToggleToggledCallback connectSignal _ = connectCellRendererToggleToggled type instance SignalList CellRendererToggle = CellRendererToggleSignalList type CellRendererToggleSignalList = ('[ '("editing-canceled", CellRendererEditingCanceledSignalInfo), '("editing-started", CellRendererEditingStartedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("toggled", CellRendererToggleToggledSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)]) -- method CellRendererToggle::new -- method type : Constructor -- Args : [] -- Lengths : [] -- hInArgs : [] -- returnType : TInterface "Gtk" "CellRendererToggle" -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_new" gtk_cell_renderer_toggle_new :: IO (Ptr CellRendererToggle) cellRendererToggleNew :: (MonadIO m) => m CellRendererToggle cellRendererToggleNew = liftIO $ do result <- gtk_cell_renderer_toggle_new checkUnexpectedReturnNULL "gtk_cell_renderer_toggle_new" result result' <- (newObject CellRendererToggle) result return result' -- method CellRendererToggle::get_activatable -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_get_activatable" gtk_cell_renderer_toggle_get_activatable :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" IO CInt cellRendererToggleGetActivatable :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj m Bool cellRendererToggleGetActivatable _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_cell_renderer_toggle_get_activatable _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method CellRendererToggle::get_active -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_get_active" gtk_cell_renderer_toggle_get_active :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" IO CInt cellRendererToggleGetActive :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj m Bool cellRendererToggleGetActive _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_cell_renderer_toggle_get_active _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method CellRendererToggle::get_radio -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_get_radio" gtk_cell_renderer_toggle_get_radio :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" IO CInt cellRendererToggleGetRadio :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj m Bool cellRendererToggleGetRadio _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_cell_renderer_toggle_get_radio _obj' let result' = (/= 0) result touchManagedPtr _obj return result' -- method CellRendererToggle::set_activatable -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_set_activatable" gtk_cell_renderer_toggle_set_activatable :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" CInt -> -- setting : TBasicType TBoolean IO () cellRendererToggleSetActivatable :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj Bool -> -- setting m () cellRendererToggleSetActivatable _obj setting = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let setting' = (fromIntegral . fromEnum) setting gtk_cell_renderer_toggle_set_activatable _obj' setting' touchManagedPtr _obj return () -- method CellRendererToggle::set_active -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_set_active" gtk_cell_renderer_toggle_set_active :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" CInt -> -- setting : TBasicType TBoolean IO () cellRendererToggleSetActive :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj Bool -> -- setting m () cellRendererToggleSetActive _obj setting = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let setting' = (fromIntegral . fromEnum) setting gtk_cell_renderer_toggle_set_active _obj' setting' touchManagedPtr _obj return () -- method CellRendererToggle::set_radio -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "radio", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "CellRendererToggle", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "radio", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_cell_renderer_toggle_set_radio" gtk_cell_renderer_toggle_set_radio :: Ptr CellRendererToggle -> -- _obj : TInterface "Gtk" "CellRendererToggle" CInt -> -- radio : TBasicType TBoolean IO () cellRendererToggleSetRadio :: (MonadIO m, CellRendererToggleK a) => a -> -- _obj Bool -> -- radio m () cellRendererToggleSetRadio _obj radio = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let radio' = (fromIntegral . fromEnum) radio gtk_cell_renderer_toggle_set_radio _obj' radio' touchManagedPtr _obj return ()