[DllImport("libgtk-win32-2.0-0.dll")] static extern bool gtk_tree_model_iter_children (IntPtr raw, out Gtk.TreeIter iter, IntPtr parent); public bool IterChildren (out Gtk.TreeIter iter) { bool raw_ret = gtk_tree_model_iter_children (Handle, out iter, IntPtr.Zero); bool ret = raw_ret; return ret; } [DllImport("libgtk-win32-2.0-0.dll")] static extern int gtk_tree_model_iter_n_children (IntPtr raw, IntPtr iter); public int IterNChildren () { int raw_ret = gtk_tree_model_iter_n_children (Handle, IntPtr.Zero); int ret = raw_ret; return ret; } [DllImport("libgtk-win32-2.0-0.dll")] static extern bool gtk_tree_model_iter_nth_child (IntPtr raw, out Gtk.TreeIter iter, IntPtr parent, int n); public bool IterNthChild (out Gtk.TreeIter iter, int n) { bool raw_ret = gtk_tree_model_iter_nth_child (Handle, out iter, IntPtr.Zero, n); bool ret = raw_ret; return ret; } public void SetValue (Gtk.TreeIter iter, int column, bool value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, double value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, int value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, string value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, float value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, uint value) { SetValue (iter, column, new GLib.Value (value)); } public void SetValue (Gtk.TreeIter iter, int column, object value) { SetValue (iter, column, new GLib.Value (value)); } public object GetValue (Gtk.TreeIter iter, int column) { GLib.Value val = GLib.Value.Empty; GetValue (iter, column, ref val); object ret = val.Val; val.Dispose (); return ret; } [DllImport("libgtk-win32-2.0-0.dll")] static extern void gtk_tree_model_filter_set_modify_func(IntPtr raw, int n_columns, IntPtr[] types, GtkSharp.TreeModelFilterModifyFuncNative func, IntPtr data, GLib.DestroyNotify destroy); public void SetModifyFunc (int n_columns, GLib.GType[] types, TreeModelFilterModifyFunc func) { GtkSharp.TreeModelFilterModifyFuncWrapper func_wrapper = new GtkSharp.TreeModelFilterModifyFuncWrapper (func); IntPtr[] native_types = new IntPtr [types.Length]; for (int i = 0; i < types.Length; i++) native_types [i] = types [i].Val; GCHandle gch = GCHandle.Alloc (func_wrapper); gtk_tree_model_filter_set_modify_func (Handle, n_columns, native_types, func_wrapper.NativeDelegate, (IntPtr) gch, new GLib.DestroyNotify (GLib.DestroyHelper.NotifyHandler)); } [DllImport("libgtk-win32-2.0-0.dll")] static extern bool gtk_tree_model_filter_convert_child_iter_to_iter (IntPtr raw, out Gtk.TreeIter filter_iter, ref Gtk.TreeIter child_iter); public TreeIter ConvertChildIterToIter (Gtk.TreeIter child_iter) { TreeIter filter_iter; if (gtk_tree_model_filter_convert_child_iter_to_iter(Handle, out filter_iter, ref child_iter)) return filter_iter; else return TreeIter.Zero; }