{- | 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.IconFactory ( -- * Exported types IconFactory(..) , IconFactoryK , toIconFactory , noIconFactory , -- * Methods -- ** iconFactoryAdd iconFactoryAdd , -- ** iconFactoryAddDefault iconFactoryAddDefault , -- ** iconFactoryLookup iconFactoryLookup , -- ** iconFactoryLookupDefault iconFactoryLookupDefault , -- ** iconFactoryNew iconFactoryNew , -- ** iconFactoryRemoveDefault iconFactoryRemoveDefault , ) 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 IconFactory = IconFactory (ForeignPtr IconFactory) foreign import ccall "gtk_icon_factory_get_type" c_gtk_icon_factory_get_type :: IO GType type instance ParentTypes IconFactory = IconFactoryParentTypes type IconFactoryParentTypes = '[GObject.Object, Buildable] instance GObject IconFactory where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_gtk_icon_factory_get_type class GObject o => IconFactoryK o instance (GObject o, IsDescendantOf IconFactory o) => IconFactoryK o toIconFactory :: IconFactoryK o => o -> IO IconFactory toIconFactory = unsafeCastTo IconFactory noIconFactory :: Maybe IconFactory noIconFactory = Nothing type instance AttributeList IconFactory = IconFactoryAttributeList type IconFactoryAttributeList = ('[ ] :: [(Symbol, *)]) type instance SignalList IconFactory = IconFactorySignalList type IconFactorySignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)]) -- method IconFactory::new -- method type : Constructor -- Args : [] -- Lengths : [] -- hInArgs : [] -- returnType : TInterface "Gtk" "IconFactory" -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_new" gtk_icon_factory_new :: IO (Ptr IconFactory) {-# DEPRECATED iconFactoryNew ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryNew :: (MonadIO m) => m IconFactory iconFactoryNew = liftIO $ do result <- gtk_icon_factory_new checkUnexpectedReturnNULL "gtk_icon_factory_new" result result' <- (wrapObject IconFactory) result return result' -- method IconFactory::add -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon_set", argType = TInterface "Gtk" "IconSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "icon_set", argType = TInterface "Gtk" "IconSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_add" gtk_icon_factory_add :: Ptr IconFactory -> -- _obj : TInterface "Gtk" "IconFactory" CString -> -- stock_id : TBasicType TUTF8 Ptr IconSet -> -- icon_set : TInterface "Gtk" "IconSet" IO () {-# DEPRECATED iconFactoryAdd ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryAdd :: (MonadIO m, IconFactoryK a) => a -> -- _obj T.Text -> -- stock_id IconSet -> -- icon_set m () iconFactoryAdd _obj stock_id icon_set = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj stock_id' <- textToCString stock_id let icon_set' = unsafeManagedPtrGetPtr icon_set gtk_icon_factory_add _obj' stock_id' icon_set' touchManagedPtr _obj touchManagedPtr icon_set freeMem stock_id' return () -- method IconFactory::add_default -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_add_default" gtk_icon_factory_add_default :: Ptr IconFactory -> -- _obj : TInterface "Gtk" "IconFactory" IO () {-# DEPRECATED iconFactoryAddDefault ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryAddDefault :: (MonadIO m, IconFactoryK a) => a -> -- _obj m () iconFactoryAddDefault _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj gtk_icon_factory_add_default _obj' touchManagedPtr _obj return () -- method IconFactory::lookup -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "IconSet" -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_lookup" gtk_icon_factory_lookup :: Ptr IconFactory -> -- _obj : TInterface "Gtk" "IconFactory" CString -> -- stock_id : TBasicType TUTF8 IO (Ptr IconSet) {-# DEPRECATED iconFactoryLookup ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryLookup :: (MonadIO m, IconFactoryK a) => a -> -- _obj T.Text -> -- stock_id m IconSet iconFactoryLookup _obj stock_id = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj stock_id' <- textToCString stock_id result <- gtk_icon_factory_lookup _obj' stock_id' checkUnexpectedReturnNULL "gtk_icon_factory_lookup" result result' <- (newBoxed IconSet) result touchManagedPtr _obj freeMem stock_id' return result' -- method IconFactory::remove_default -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "IconFactory", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_remove_default" gtk_icon_factory_remove_default :: Ptr IconFactory -> -- _obj : TInterface "Gtk" "IconFactory" IO () {-# DEPRECATED iconFactoryRemoveDefault ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryRemoveDefault :: (MonadIO m, IconFactoryK a) => a -> -- _obj m () iconFactoryRemoveDefault _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj gtk_icon_factory_remove_default _obj' touchManagedPtr _obj return () -- method IconFactory::lookup_default -- method type : MemberFunction -- Args : [Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "stock_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "IconSet" -- throws : False -- Skip return : False foreign import ccall "gtk_icon_factory_lookup_default" gtk_icon_factory_lookup_default :: CString -> -- stock_id : TBasicType TUTF8 IO (Ptr IconSet) {-# DEPRECATED iconFactoryLookupDefault ["(Since version 3.10)","Use #GtkIconTheme instead."]#-} iconFactoryLookupDefault :: (MonadIO m) => T.Text -> -- stock_id m IconSet iconFactoryLookupDefault stock_id = liftIO $ do stock_id' <- textToCString stock_id result <- gtk_icon_factory_lookup_default stock_id' checkUnexpectedReturnNULL "gtk_icon_factory_lookup_default" result result' <- (newBoxed IconSet) result freeMem stock_id' return result'