{- | 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.Interfaces.TreeModel ( -- * Exported types TreeModel(..) , noTreeModel , TreeModelK , toTreeModel , -- * Methods -- ** treeModelFilterNew treeModelFilterNew , -- ** treeModelForeach treeModelForeach , -- ** treeModelGetColumnType treeModelGetColumnType , -- ** treeModelGetFlags treeModelGetFlags , -- ** treeModelGetIter treeModelGetIter , -- ** treeModelGetIterFirst treeModelGetIterFirst , -- ** treeModelGetIterFromString treeModelGetIterFromString , -- ** treeModelGetNColumns treeModelGetNColumns , -- ** treeModelGetPath treeModelGetPath , -- ** treeModelGetStringFromIter treeModelGetStringFromIter , -- ** treeModelGetValue treeModelGetValue , -- ** treeModelIterChildren treeModelIterChildren , -- ** treeModelIterHasChild treeModelIterHasChild , -- ** treeModelIterNChildren treeModelIterNChildren , -- ** treeModelIterNext treeModelIterNext , -- ** treeModelIterNthChild treeModelIterNthChild , -- ** treeModelIterParent treeModelIterParent , -- ** treeModelIterPrevious treeModelIterPrevious , -- ** treeModelRefNode treeModelRefNode , -- ** treeModelRowChanged treeModelRowChanged , -- ** treeModelRowDeleted treeModelRowDeleted , -- ** treeModelRowHasChildToggled treeModelRowHasChildToggled , -- ** treeModelRowInserted treeModelRowInserted , -- ** treeModelRowsReordered treeModelRowsReordered , -- ** treeModelSortNewWithModel treeModelSortNewWithModel , -- ** treeModelUnrefNode treeModelUnrefNode , -- * Signals -- ** RowChanged TreeModelRowChangedCallback , TreeModelRowChangedCallbackC , TreeModelRowChangedSignalInfo , afterTreeModelRowChanged , mkTreeModelRowChangedCallback , noTreeModelRowChangedCallback , onTreeModelRowChanged , treeModelRowChangedCallbackWrapper , treeModelRowChangedClosure , -- ** RowDeleted TreeModelRowDeletedCallback , TreeModelRowDeletedCallbackC , TreeModelRowDeletedSignalInfo , afterTreeModelRowDeleted , mkTreeModelRowDeletedCallback , noTreeModelRowDeletedCallback , onTreeModelRowDeleted , treeModelRowDeletedCallbackWrapper , treeModelRowDeletedClosure , -- ** RowHasChildToggled TreeModelRowHasChildToggledCallback , TreeModelRowHasChildToggledCallbackC , TreeModelRowHasChildToggledSignalInfo , afterTreeModelRowHasChildToggled , mkTreeModelRowHasChildToggledCallback , noTreeModelRowHasChildToggledCallback , onTreeModelRowHasChildToggled , treeModelRowHasChildToggledCallbackWrapper, treeModelRowHasChildToggledClosure , -- ** RowInserted TreeModelRowInsertedCallback , TreeModelRowInsertedCallbackC , TreeModelRowInsertedSignalInfo , afterTreeModelRowInserted , mkTreeModelRowInsertedCallback , noTreeModelRowInsertedCallback , onTreeModelRowInserted , treeModelRowInsertedCallbackWrapper , treeModelRowInsertedClosure , ) 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 -- interface TreeModel newtype TreeModel = TreeModel (ForeignPtr TreeModel) noTreeModel :: Maybe TreeModel noTreeModel = Nothing -- signal TreeModel::row-changed type TreeModelRowChangedCallback = TreePath -> TreeIter -> IO () noTreeModelRowChangedCallback :: Maybe TreeModelRowChangedCallback noTreeModelRowChangedCallback = Nothing type TreeModelRowChangedCallbackC = Ptr () -> -- object Ptr TreePath -> Ptr TreeIter -> Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkTreeModelRowChangedCallback :: TreeModelRowChangedCallbackC -> IO (FunPtr TreeModelRowChangedCallbackC) treeModelRowChangedClosure :: TreeModelRowChangedCallback -> IO Closure treeModelRowChangedClosure cb = newCClosure =<< mkTreeModelRowChangedCallback wrapped where wrapped = treeModelRowChangedCallbackWrapper cb treeModelRowChangedCallbackWrapper :: TreeModelRowChangedCallback -> Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO () treeModelRowChangedCallbackWrapper _cb _ path iter _ = do path' <- (newBoxed TreePath) path iter' <- (newBoxed TreeIter) iter _cb path' iter' onTreeModelRowChanged :: (GObject a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId onTreeModelRowChanged obj cb = liftIO $ connectTreeModelRowChanged obj cb SignalConnectBefore afterTreeModelRowChanged :: (GObject a, MonadIO m) => a -> TreeModelRowChangedCallback -> m SignalHandlerId afterTreeModelRowChanged obj cb = connectTreeModelRowChanged obj cb SignalConnectAfter connectTreeModelRowChanged :: (GObject a, MonadIO m) => a -> TreeModelRowChangedCallback -> SignalConnectMode -> m SignalHandlerId connectTreeModelRowChanged obj cb after = liftIO $ do cb' <- mkTreeModelRowChangedCallback (treeModelRowChangedCallbackWrapper cb) connectSignalFunPtr obj "row-changed" cb' after -- signal TreeModel::row-deleted type TreeModelRowDeletedCallback = TreePath -> IO () noTreeModelRowDeletedCallback :: Maybe TreeModelRowDeletedCallback noTreeModelRowDeletedCallback = Nothing type TreeModelRowDeletedCallbackC = Ptr () -> -- object Ptr TreePath -> Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkTreeModelRowDeletedCallback :: TreeModelRowDeletedCallbackC -> IO (FunPtr TreeModelRowDeletedCallbackC) treeModelRowDeletedClosure :: TreeModelRowDeletedCallback -> IO Closure treeModelRowDeletedClosure cb = newCClosure =<< mkTreeModelRowDeletedCallback wrapped where wrapped = treeModelRowDeletedCallbackWrapper cb treeModelRowDeletedCallbackWrapper :: TreeModelRowDeletedCallback -> Ptr () -> Ptr TreePath -> Ptr () -> IO () treeModelRowDeletedCallbackWrapper _cb _ path _ = do path' <- (newBoxed TreePath) path _cb path' onTreeModelRowDeleted :: (GObject a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId onTreeModelRowDeleted obj cb = liftIO $ connectTreeModelRowDeleted obj cb SignalConnectBefore afterTreeModelRowDeleted :: (GObject a, MonadIO m) => a -> TreeModelRowDeletedCallback -> m SignalHandlerId afterTreeModelRowDeleted obj cb = connectTreeModelRowDeleted obj cb SignalConnectAfter connectTreeModelRowDeleted :: (GObject a, MonadIO m) => a -> TreeModelRowDeletedCallback -> SignalConnectMode -> m SignalHandlerId connectTreeModelRowDeleted obj cb after = liftIO $ do cb' <- mkTreeModelRowDeletedCallback (treeModelRowDeletedCallbackWrapper cb) connectSignalFunPtr obj "row-deleted" cb' after -- signal TreeModel::row-has-child-toggled type TreeModelRowHasChildToggledCallback = TreePath -> TreeIter -> IO () noTreeModelRowHasChildToggledCallback :: Maybe TreeModelRowHasChildToggledCallback noTreeModelRowHasChildToggledCallback = Nothing type TreeModelRowHasChildToggledCallbackC = Ptr () -> -- object Ptr TreePath -> Ptr TreeIter -> Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkTreeModelRowHasChildToggledCallback :: TreeModelRowHasChildToggledCallbackC -> IO (FunPtr TreeModelRowHasChildToggledCallbackC) treeModelRowHasChildToggledClosure :: TreeModelRowHasChildToggledCallback -> IO Closure treeModelRowHasChildToggledClosure cb = newCClosure =<< mkTreeModelRowHasChildToggledCallback wrapped where wrapped = treeModelRowHasChildToggledCallbackWrapper cb treeModelRowHasChildToggledCallbackWrapper :: TreeModelRowHasChildToggledCallback -> Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO () treeModelRowHasChildToggledCallbackWrapper _cb _ path iter _ = do path' <- (newBoxed TreePath) path iter' <- (newBoxed TreeIter) iter _cb path' iter' onTreeModelRowHasChildToggled :: (GObject a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId onTreeModelRowHasChildToggled obj cb = liftIO $ connectTreeModelRowHasChildToggled obj cb SignalConnectBefore afterTreeModelRowHasChildToggled :: (GObject a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> m SignalHandlerId afterTreeModelRowHasChildToggled obj cb = connectTreeModelRowHasChildToggled obj cb SignalConnectAfter connectTreeModelRowHasChildToggled :: (GObject a, MonadIO m) => a -> TreeModelRowHasChildToggledCallback -> SignalConnectMode -> m SignalHandlerId connectTreeModelRowHasChildToggled obj cb after = liftIO $ do cb' <- mkTreeModelRowHasChildToggledCallback (treeModelRowHasChildToggledCallbackWrapper cb) connectSignalFunPtr obj "row-has-child-toggled" cb' after -- signal TreeModel::row-inserted type TreeModelRowInsertedCallback = TreePath -> TreeIter -> IO () noTreeModelRowInsertedCallback :: Maybe TreeModelRowInsertedCallback noTreeModelRowInsertedCallback = Nothing type TreeModelRowInsertedCallbackC = Ptr () -> -- object Ptr TreePath -> Ptr TreeIter -> Ptr () -> -- user_data IO () foreign import ccall "wrapper" mkTreeModelRowInsertedCallback :: TreeModelRowInsertedCallbackC -> IO (FunPtr TreeModelRowInsertedCallbackC) treeModelRowInsertedClosure :: TreeModelRowInsertedCallback -> IO Closure treeModelRowInsertedClosure cb = newCClosure =<< mkTreeModelRowInsertedCallback wrapped where wrapped = treeModelRowInsertedCallbackWrapper cb treeModelRowInsertedCallbackWrapper :: TreeModelRowInsertedCallback -> Ptr () -> Ptr TreePath -> Ptr TreeIter -> Ptr () -> IO () treeModelRowInsertedCallbackWrapper _cb _ path iter _ = do path' <- (newBoxed TreePath) path iter' <- (newBoxed TreeIter) iter _cb path' iter' onTreeModelRowInserted :: (GObject a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId onTreeModelRowInserted obj cb = liftIO $ connectTreeModelRowInserted obj cb SignalConnectBefore afterTreeModelRowInserted :: (GObject a, MonadIO m) => a -> TreeModelRowInsertedCallback -> m SignalHandlerId afterTreeModelRowInserted obj cb = connectTreeModelRowInserted obj cb SignalConnectAfter connectTreeModelRowInserted :: (GObject a, MonadIO m) => a -> TreeModelRowInsertedCallback -> SignalConnectMode -> m SignalHandlerId connectTreeModelRowInserted obj cb after = liftIO $ do cb' <- mkTreeModelRowInsertedCallback (treeModelRowInsertedCallbackWrapper cb) connectSignalFunPtr obj "row-inserted" cb' after type instance AttributeList TreeModel = TreeModelAttributeList type TreeModelAttributeList = ('[ ] :: [(Symbol, *)]) data TreeModelRowChangedSignalInfo instance SignalInfo TreeModelRowChangedSignalInfo where type HaskellCallbackType TreeModelRowChangedSignalInfo = TreeModelRowChangedCallback connectSignal _ = connectTreeModelRowChanged data TreeModelRowDeletedSignalInfo instance SignalInfo TreeModelRowDeletedSignalInfo where type HaskellCallbackType TreeModelRowDeletedSignalInfo = TreeModelRowDeletedCallback connectSignal _ = connectTreeModelRowDeleted data TreeModelRowHasChildToggledSignalInfo instance SignalInfo TreeModelRowHasChildToggledSignalInfo where type HaskellCallbackType TreeModelRowHasChildToggledSignalInfo = TreeModelRowHasChildToggledCallback connectSignal _ = connectTreeModelRowHasChildToggled data TreeModelRowInsertedSignalInfo instance SignalInfo TreeModelRowInsertedSignalInfo where type HaskellCallbackType TreeModelRowInsertedSignalInfo = TreeModelRowInsertedCallback connectSignal _ = connectTreeModelRowInserted type instance SignalList TreeModel = TreeModelSignalList type TreeModelSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("row-changed", TreeModelRowChangedSignalInfo), '("row-deleted", TreeModelRowDeletedSignalInfo), '("row-has-child-toggled", TreeModelRowHasChildToggledSignalInfo), '("row-inserted", TreeModelRowInsertedSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)]) foreign import ccall "gtk_tree_model_get_type" c_gtk_tree_model_get_type :: IO GType type instance ParentTypes TreeModel = TreeModelParentTypes type TreeModelParentTypes = '[GObject.Object] instance GObject TreeModel where gobjectIsInitiallyUnowned _ = False gobjectType _ = c_gtk_tree_model_get_type class GObject o => TreeModelK o instance (GObject o, IsDescendantOf TreeModel o) => TreeModelK o toTreeModel :: TreeModelK o => o -> IO TreeModel toTreeModel = unsafeCastTo TreeModel -- method TreeModel::filter_new -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "TreeModel" -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_filter_new" gtk_tree_model_filter_new :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- root : TInterface "Gtk" "TreePath" IO (Ptr TreeModel) treeModelFilterNew :: (MonadIO m, TreeModelK a) => a -> -- _obj Maybe (TreePath) -> -- root m TreeModel treeModelFilterNew _obj root = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj maybeRoot <- case root of Nothing -> return nullPtr Just jRoot -> do let jRoot' = unsafeManagedPtrGetPtr jRoot return jRoot' result <- gtk_tree_model_filter_new _obj' maybeRoot checkUnexpectedReturnNULL "gtk_tree_model_filter_new" result result' <- (wrapObject TreeModel) result touchManagedPtr _obj whenJust root touchManagedPtr return result' -- method TreeModel::foreach -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Gtk" "TreeModelForeachFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Gtk" "TreeModelForeachFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_foreach" gtk_tree_model_foreach :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" FunPtr TreeModelForeachFuncC -> -- func : TInterface "Gtk" "TreeModelForeachFunc" Ptr () -> -- user_data : TBasicType TVoid IO () treeModelForeach :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeModelForeachFunc -> -- func m () treeModelForeach _obj func = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj func' <- mkTreeModelForeachFunc (treeModelForeachFuncWrapper Nothing func) let user_data = nullPtr gtk_tree_model_foreach _obj' func' user_data safeFreeFunPtr $ castFunPtrToPtr func' touchManagedPtr _obj return () -- method TreeModel::get_column_type -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TGType -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_column_type" gtk_tree_model_get_column_type :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Int32 -> -- index_ : TBasicType TInt32 IO CGType treeModelGetColumnType :: (MonadIO m, TreeModelK a) => a -> -- _obj Int32 -> -- index_ m GType treeModelGetColumnType _obj index_ = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_tree_model_get_column_type _obj' index_ let result' = GType result touchManagedPtr _obj return result' -- method TreeModel::get_flags -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "TreeModelFlags" -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_flags" gtk_tree_model_get_flags :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" IO CUInt treeModelGetFlags :: (MonadIO m, TreeModelK a) => a -> -- _obj m [TreeModelFlags] treeModelGetFlags _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_tree_model_get_flags _obj' let result' = wordToGFlags result touchManagedPtr _obj return result' -- method TreeModel::get_iter -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_iter" gtk_tree_model_get_iter :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" IO CInt treeModelGetIter :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path m (Bool,TreeIter) treeModelGetIter _obj path = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) let path' = unsafeManagedPtrGetPtr path result <- gtk_tree_model_get_iter _obj' iter path' let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj touchManagedPtr path return (result', iter') -- method TreeModel::get_iter_first -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_iter_first" gtk_tree_model_get_iter_first :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO CInt treeModelGetIterFirst :: (MonadIO m, TreeModelK a) => a -> -- _obj m (Bool,TreeIter) treeModelGetIterFirst _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) result <- gtk_tree_model_get_iter_first _obj' iter let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj return (result', iter') -- method TreeModel::get_iter_from_string -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path_string", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path_string", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_iter_from_string" gtk_tree_model_get_iter_from_string :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" CString -> -- path_string : TBasicType TUTF8 IO CInt treeModelGetIterFromString :: (MonadIO m, TreeModelK a) => a -> -- _obj T.Text -> -- path_string m (Bool,TreeIter) treeModelGetIterFromString _obj path_string = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) path_string' <- textToCString path_string result <- gtk_tree_model_get_iter_from_string _obj' iter path_string' let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj freeMem path_string' return (result', iter') -- method TreeModel::get_n_columns -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TInt32 -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_n_columns" gtk_tree_model_get_n_columns :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" IO Int32 treeModelGetNColumns :: (MonadIO m, TreeModelK a) => a -> -- _obj m Int32 treeModelGetNColumns _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_tree_model_get_n_columns _obj' touchManagedPtr _obj return result -- method TreeModel::get_path -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "TreePath" -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_path" gtk_tree_model_get_path :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO (Ptr TreePath) treeModelGetPath :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m TreePath treeModelGetPath _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter result <- gtk_tree_model_get_path _obj' iter' checkUnexpectedReturnNULL "gtk_tree_model_get_path" result result' <- (wrapBoxed TreePath) result touchManagedPtr _obj touchManagedPtr iter return result' -- method TreeModel::get_string_from_iter -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TUTF8 -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_string_from_iter" gtk_tree_model_get_string_from_iter :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO CString treeModelGetStringFromIter :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m T.Text treeModelGetStringFromIter _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter result <- gtk_tree_model_get_string_from_iter _obj' iter' checkUnexpectedReturnNULL "gtk_tree_model_get_string_from_iter" result result' <- cstringToText result freeMem result touchManagedPtr _obj touchManagedPtr iter return result' -- method TreeModel::get_value -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "column", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "GObject" "Value", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "column", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_get_value" gtk_tree_model_get_value :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Int32 -> -- column : TBasicType TInt32 Ptr GValue -> -- value : TInterface "GObject" "Value" IO () treeModelGetValue :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter Int32 -> -- column m (GValue) treeModelGetValue _obj iter column = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter value <- callocBoxedBytes 24 :: IO (Ptr GValue) gtk_tree_model_get_value _obj' iter' column value value' <- (wrapBoxed GValue) value touchManagedPtr _obj touchManagedPtr iter return value' -- method TreeModel::iter_children -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parent", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parent", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_children" gtk_tree_model_iter_children :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Ptr TreeIter -> -- parent : TInterface "Gtk" "TreeIter" IO CInt treeModelIterChildren :: (MonadIO m, TreeModelK a) => a -> -- _obj Maybe (TreeIter) -> -- parent m (Bool,TreeIter) treeModelIterChildren _obj parent = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) maybeParent <- case parent of Nothing -> return nullPtr Just jParent -> do let jParent' = unsafeManagedPtrGetPtr jParent return jParent' result <- gtk_tree_model_iter_children _obj' iter maybeParent let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj whenJust parent touchManagedPtr return (result', iter') -- method TreeModel::iter_has_child -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_has_child" gtk_tree_model_iter_has_child :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO CInt treeModelIterHasChild :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m Bool treeModelIterHasChild _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter result <- gtk_tree_model_iter_has_child _obj' iter' let result' = (/= 0) result touchManagedPtr _obj touchManagedPtr iter return result' -- method TreeModel::iter_n_children -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TInt32 -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_n_children" gtk_tree_model_iter_n_children :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO Int32 treeModelIterNChildren :: (MonadIO m, TreeModelK a) => a -> -- _obj Maybe (TreeIter) -> -- iter m Int32 treeModelIterNChildren _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj maybeIter <- case iter of Nothing -> return nullPtr Just jIter -> do let jIter' = unsafeManagedPtrGetPtr jIter return jIter' result <- gtk_tree_model_iter_n_children _obj' maybeIter touchManagedPtr _obj whenJust iter touchManagedPtr return result -- method TreeModel::iter_next -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_next" gtk_tree_model_iter_next :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO CInt treeModelIterNext :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m Bool treeModelIterNext _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter result <- gtk_tree_model_iter_next _obj' iter' let result' = (/= 0) result touchManagedPtr _obj touchManagedPtr iter return result' -- method TreeModel::iter_nth_child -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parent", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "parent", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_nth_child" gtk_tree_model_iter_nth_child :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Ptr TreeIter -> -- parent : TInterface "Gtk" "TreeIter" Int32 -> -- n : TBasicType TInt32 IO CInt treeModelIterNthChild :: (MonadIO m, TreeModelK a) => a -> -- _obj Maybe (TreeIter) -> -- parent Int32 -> -- n m (Bool,TreeIter) treeModelIterNthChild _obj parent n = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) maybeParent <- case parent of Nothing -> return nullPtr Just jParent -> do let jParent' = unsafeManagedPtrGetPtr jParent return jParent' result <- gtk_tree_model_iter_nth_child _obj' iter maybeParent n let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj whenJust parent touchManagedPtr return (result', iter') -- method TreeModel::iter_parent -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "child", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "child", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_parent" gtk_tree_model_iter_parent :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Ptr TreeIter -> -- child : TInterface "Gtk" "TreeIter" IO CInt treeModelIterParent :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- child m (Bool,TreeIter) treeModelIterParent _obj child = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj iter <- callocBoxedBytes 32 :: IO (Ptr TreeIter) let child' = unsafeManagedPtrGetPtr child result <- gtk_tree_model_iter_parent _obj' iter child' let result' = (/= 0) result iter' <- (wrapBoxed TreeIter) iter touchManagedPtr _obj touchManagedPtr child return (result', iter') -- method TreeModel::iter_previous -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TBoolean -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_iter_previous" gtk_tree_model_iter_previous :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO CInt treeModelIterPrevious :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m Bool treeModelIterPrevious _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter result <- gtk_tree_model_iter_previous _obj' iter' let result' = (/= 0) result touchManagedPtr _obj touchManagedPtr iter return result' -- method TreeModel::ref_node -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_ref_node" gtk_tree_model_ref_node :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO () treeModelRefNode :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m () treeModelRefNode _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter gtk_tree_model_ref_node _obj' iter' touchManagedPtr _obj touchManagedPtr iter return () -- method TreeModel::row_changed -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_row_changed" gtk_tree_model_row_changed :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO () treeModelRowChanged :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path TreeIter -> -- iter m () treeModelRowChanged _obj path iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let path' = unsafeManagedPtrGetPtr path let iter' = unsafeManagedPtrGetPtr iter gtk_tree_model_row_changed _obj' path' iter' touchManagedPtr _obj touchManagedPtr path touchManagedPtr iter return () -- method TreeModel::row_deleted -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_row_deleted" gtk_tree_model_row_deleted :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" IO () treeModelRowDeleted :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path m () treeModelRowDeleted _obj path = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let path' = unsafeManagedPtrGetPtr path gtk_tree_model_row_deleted _obj' path' touchManagedPtr _obj touchManagedPtr path return () -- method TreeModel::row_has_child_toggled -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_row_has_child_toggled" gtk_tree_model_row_has_child_toggled :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO () treeModelRowHasChildToggled :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path TreeIter -> -- iter m () treeModelRowHasChildToggled _obj path iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let path' = unsafeManagedPtrGetPtr path let iter' = unsafeManagedPtrGetPtr iter gtk_tree_model_row_has_child_toggled _obj' path' iter' touchManagedPtr _obj touchManagedPtr path touchManagedPtr iter return () -- method TreeModel::row_inserted -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_row_inserted" gtk_tree_model_row_inserted :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO () treeModelRowInserted :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path TreeIter -> -- iter m () treeModelRowInserted _obj path iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let path' = unsafeManagedPtrGetPtr path let iter' = unsafeManagedPtrGetPtr iter gtk_tree_model_row_inserted _obj' path' iter' touchManagedPtr _obj touchManagedPtr path touchManagedPtr iter return () -- method TreeModel::rows_reordered -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_order", argType = TCArray False (-1) 4 (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "path", argType = TInterface "Gtk" "TreePath", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_order", argType = TCArray False (-1) 4 (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_rows_reordered_with_length" gtk_tree_model_rows_reordered_with_length :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreePath -> -- path : TInterface "Gtk" "TreePath" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" Ptr Int32 -> -- new_order : TCArray False (-1) 4 (TBasicType TInt32) Int32 -> -- length : TBasicType TInt32 IO () treeModelRowsReordered :: (MonadIO m, TreeModelK a) => a -> -- _obj TreePath -> -- path Maybe (TreeIter) -> -- iter [Int32] -> -- new_order m () treeModelRowsReordered _obj path iter new_order = liftIO $ do let length_ = fromIntegral $ length new_order let _obj' = unsafeManagedPtrCastPtr _obj let path' = unsafeManagedPtrGetPtr path maybeIter <- case iter of Nothing -> return nullPtr Just jIter -> do let jIter' = unsafeManagedPtrGetPtr jIter return jIter' new_order' <- packStorableArray new_order gtk_tree_model_rows_reordered_with_length _obj' path' maybeIter new_order' length_ touchManagedPtr _obj touchManagedPtr path whenJust iter touchManagedPtr freeMem new_order' return () -- method TreeModel::sort_new_with_model -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TInterface "Gtk" "TreeModel" -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_sort_new_with_model" gtk_tree_model_sort_new_with_model :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" IO (Ptr TreeModel) treeModelSortNewWithModel :: (MonadIO m, TreeModelK a) => a -> -- _obj m TreeModel treeModelSortNewWithModel _obj = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj result <- gtk_tree_model_sort_new_with_model _obj' checkUnexpectedReturnNULL "gtk_tree_model_sort_new_with_model" result result' <- (wrapObject TreeModel) result touchManagedPtr _obj return result' -- method TreeModel::unref_node -- method type : OrdinaryMethod -- Args : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- Lengths : [] -- hInArgs : [Arg {argName = "_obj", argType = TInterface "Gtk" "TreeModel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "iter", argType = TInterface "Gtk" "TreeIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}] -- returnType : TBasicType TVoid -- throws : False -- Skip return : False foreign import ccall "gtk_tree_model_unref_node" gtk_tree_model_unref_node :: Ptr TreeModel -> -- _obj : TInterface "Gtk" "TreeModel" Ptr TreeIter -> -- iter : TInterface "Gtk" "TreeIter" IO () treeModelUnrefNode :: (MonadIO m, TreeModelK a) => a -> -- _obj TreeIter -> -- iter m () treeModelUnrefNode _obj iter = liftIO $ do let _obj' = unsafeManagedPtrCastPtr _obj let iter' = unsafeManagedPtrGetPtr iter gtk_tree_model_unref_node _obj' iter' touchManagedPtr _obj touchManagedPtr iter return ()