Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gtkmm-root/base/ChangeLog,v
retrieving revision 1.431
diff -u -3 -r1.431 ChangeLog
--- ChangeLog	2002/08/06 18:50:57	1.431
+++ ChangeLog	2002/08/07 20:17:21
@@ -1,3 +1,11 @@
+2002-08-07  Martin Schulze  <MHL.Schulze@t-online.de>
+
+	* gtk/src/textbuffer.{hg,ccg}: Added overloads of delete_text() and
+	delete_interactive_text() that take const iterators and return an
+	iterator where the deletion occured. Change the parameter list of
+	insert_child_anchor, create_child_anchor and paste_clipboard so that
+	they take a const iterator.
+
 2002-08-06  Murray Cumming  <murrayc@usa.net>
 
 	* Removed Glib::Closure. We don't use it, so it's probably
Index: gtk/src/textbuffer.ccg
===================================================================
RCS file: /cvs/gnome/gtkmm-root/gtk-src/textbuffer.ccg,v
retrieving revision 1.24
diff -u -3 -r1.24 textbuffer.ccg
--- gtk/src/textbuffer.ccg	2002/08/06 10:05:39	1.24
+++ gtk/src/textbuffer.ccg	2002/08/07 20:19:38
@@ -161,6 +161,21 @@
   return iterCopy;
 }
 
+void TextBuffer::insert_child_anchor(const iterator& iter, const Glib::RefPtr<TextChildAnchor>& anchor)
+{
+  iterator iterCopy(iter);
+  gtk_text_buffer_insert_child_anchor(gobj(), iterCopy.gobj(), Glib::unwrap(anchor));
+}
+
+Glib::RefPtr<TextChildAnchor> TextBuffer::create_child_anchor(const iterator& iter)
+{
+  iterator iterCopy(iter);
+  Glib::RefPtr<TextChildAnchor> retvalue = Glib::wrap(gtk_text_buffer_create_child_anchor(gobj(), iterCopy.gobj()));
+  if(!(retvalue.is_null()))
+    retvalue->reference(); //The function does not do a ref for us.
+  return retvalue;
+}
+
 void TextBuffer::insert_at_cursor(const Glib::ustring& text)
 {
   gtk_text_buffer_insert_at_cursor(gobj(), text.data(), text.bytes());
@@ -317,6 +332,25 @@
   return ( bSuccess ? iterCopy :  TextBuffer::end() ); //Use "TextBuffer::" to avoid compiler confusion with the "end" input parameter.
 }
 
+TextBuffer::iterator TextBuffer::delete_text(const iterator& start, const iterator& end)
+{
+  iterator startCopy(start), endCopy(end);
+  delete_text(startCopy, endCopy);
+  return startCopy;
+}
+
+TextBuffer::iterator TextBuffer::delete_interactive_text(const iterator& start, const iterator& end, bool default_editable)
+{
+  iterator startCopy(start), endCopy(end);
+  delete_interactive_text(startCopy, endCopy, default_editable);
+  return startCopy;
+}
+
+void TextBuffer::paste_clipboard(Clipboard& clipboard, const iterator& override_location, bool default_editable)
+{
+  iterator pos(override_location);
+  gtk_text_buffer_paste_clipboard(gobj(), (clipboard).gobj(), (pos).gobj(), static_cast<int>(default_editable));
+}
 
 
 TextBuffer::iterator TextBuffer::get_iter_at_child_anchor(const Glib::RefPtr<TextChildAnchor>& anchor)
Index: gtk/src/textbuffer.hg
===================================================================
RCS file: /cvs/gnome/gtkmm-root/gtk-src/textbuffer.hg,v
retrieving revision 1.29
diff -u -3 -r1.29 textbuffer.hg
--- gtk/src/textbuffer.hg	2002/07/19 19:39:52	1.29
+++ gtk/src/textbuffer.hg	2002/08/07 20:19:38
@@ -116,7 +116,9 @@
                                 const Glib::StringArrayHandle& tag_names);
 
   _WRAP_METHOD(void delete_text(iterator& start, iterator& end), gtk_text_buffer_delete)
-  _WRAP_METHOD(bool delete_interactive_text(iterator& start_iter, iterator& end_iter, bool default_editable = true), gtk_text_buffer_delete_interactive)
+  iterator delete_text(const iterator& start, const iterator& end);
+  _WRAP_METHOD(bool delete_interactive_text(iterator& start, iterator& end, bool default_editable = true), gtk_text_buffer_delete_interactive)
+  iterator delete_interactive_text(const iterator& start, const iterator& end, bool default_editable = true);
 
 
   _WRAP_METHOD(Glib::ustring get_text(const iterator& start, const iterator& end, bool include_hidden_chars = true), gtk_text_buffer_get_text)
@@ -126,8 +128,10 @@
   iterator insert_pixbuf(const iterator& iter, const Glib::RefPtr<Gdk::Pixbuf>& pixbuf);
   _IGNORE(gtk_text_buffer_insert_pixbuf)
 
-  _WRAP_METHOD(void insert_child_anchor(iterator& iter, const Glib::RefPtr<TextChildAnchor>& anchor), gtk_text_buffer_insert_child_anchor)
-  _WRAP_METHOD(Glib::RefPtr<TextChildAnchor> create_child_anchor(iterator& iter), gtk_text_buffer_create_child_anchor, refreturn)
+  void insert_child_anchor(const iterator& iter, const Glib::RefPtr<TextChildAnchor>& anchor);
+  _IGNORE(gtk_text_buffer_insert_child_anchor)
+  Glib::RefPtr<TextChildAnchor> create_child_anchor(const iterator& iter);
+  _IGNORE(gtk_text_buffer_create_child_anchor)
 
   _WRAP_METHOD(Glib::RefPtr<TextBuffer::Mark> create_mark(const Glib::ustring& mark_name, const iterator& where, bool left_gravity = true), gtk_text_buffer_create_mark, refreturn)
   _WRAP_METHOD(void move_mark(const Glib::RefPtr<Mark>& mark, const iterator& where), gtk_text_buffer_move_mark)
@@ -168,7 +172,8 @@
   _WRAP_METHOD(void remove_selection_clipboard(Clipboard& clipboard), gtk_text_buffer_remove_selection_clipboard)
   _WRAP_METHOD(void cut_clipboard(Clipboard& clipboard, bool default_editable = true), gtk_text_buffer_cut_clipboard)
   _WRAP_METHOD(void copy_clipboard(Clipboard& clipboard), gtk_text_buffer_copy_clipboard)
-  _WRAP_METHOD(void paste_clipboard(Clipboard& clipboard, iterator& override_location, bool default_editable = true), gtk_text_buffer_paste_clipboard)
+  void paste_clipboard(Clipboard& clipboard, const iterator& override_location, bool default_editable = true);
+  _IGNORE(gtk_text_buffer_paste_clipboard)
 
   void get_selection_bounds(iterator& start, iterator& end);
   _IGNORE(gtk_text_buffer_get_selection_bounds)
