[Gtk-sharp-list] Overloading the AddButton method of the Gtk.Dialog and Gtk.MessageDialog

Philip Van Hoof spamfrommailing@freax.org
12 May 2003 04:23:59 +0200

Content-Type: text/plain
Content-Transfer-Encoding: 7bit

This patch overloads the AddButton method so that you can pass a
Stock-argument in stead of only a string.

Gtk-documentation :

GtkWidget*  gtk_dialog_add_button (GtkDialog *dialog, const gchar
*button_text, gint response_id);

Adds a button with the given text (or a stock button, if button_text is
a stock ID) and sets things up so that clicking the button will emit the
"response" signal with the given response_id. The button is appended to
the end of the dialog's action area. The button widget is returned, but
usually you don't need it.

So this patch implements the "(or a stock button, if button_text is a
stock ID)"-part of that documentation ...

[root@pluisje gtk]# cvs diff -u >

cvs server: Diffing .
[root@pluisje gtk]# pwd
[root@pluisje gtk]#


  Gtk.Dialog a;

  a = new  Dialog ("test", win, DialogFlags.Modal);
  a.AddButton(Gtk.Stock.Add, 2);


Philip Van Hoof a.k.a. freax
me at freax dot org
http://www.freax.be -- http://www.freax.eu.org -- http://www.freax.org

Content-Disposition: attachment; filename=Dialog_AddButton_w_Stock.diff
Content-Type: text/x-patch; name=Dialog_AddButton_w_Stock.diff; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

Index: Dialog.custom
RCS file: /mono/gtk-sharp/gtk/Dialog.custom,v
retrieving revision 1.3
diff -u -r1.3 Dialog.custom
--- Dialog.custom	22 Feb 2003 04:34:56 -0000	1.3
+++ Dialog.custom	12 May 2003 02:16:51 -0000
@@ -17,6 +17,16 @@
 	Raw = gtk_dialog_new_with_buttons (title, parent.Handle, (int) flags, IntPtr.Zero);
+static extern IntPtr gtk_dialog_add_button(IntPtr raw, Stock s, int response_id);
+/// <summary> AddButtons Method </summary>
+public Gtk.Widget AddButton(Stock s, int response_id) {
+	IntPtr raw_ret = gtk_dialog_add_button(Handle, s, response_id);
+	Gtk.Widget ret = (Gtk.Widget) GLib.Object.GetObject(raw_ret);
+	return ret;
 static extern IntPtr gtksharp_dialog_get_vbox (IntPtr i);
 public Gtk.VBox VBox {
@@ -28,4 +38,3 @@
 public Gtk.VBox ActionArea {
 	get { return new Gtk.VBox (gtksharp_dialog_get_action_area (this.Handle)); }