From 5bac7a6c8d0401c7b98297b5af8e5450133a0824 Mon Sep 17 00:00:00 2001 From: Mike Kestner Date: Sat, 21 Jan 2006 15:52:50 +0000 Subject: [PATCH] 2005-01-21 Mike Kestner * gtk/RadioToolButton.custom : manually implement the GLib.List group ctors. [Fixes #76992] svn path=/trunk/gtk-sharp/; revision=55886 --- ChangeLog | 5 ++++ gtk/Gtk.metadata | 2 ++ gtk/Makefile.am | 1 + gtk/RadioToolButton.custom | 54 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 62 insertions(+) create mode 100644 gtk/RadioToolButton.custom diff --git a/ChangeLog b/ChangeLog index b9ea255de..d90c973cb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-01-21 Mike Kestner + + * gtk/RadioToolButton.custom : manually implement the GLib.List group + ctors. [Fixes #76992] + 2005-01-17 Mike Kestner * gnome/Canvas.custom : add a ctor (bool is_aa) using the diff --git a/gtk/Gtk.metadata b/gtk/Gtk.metadata index 2dcaae8bb..1be029f5d 100644 --- a/gtk/Gtk.metadata +++ b/gtk/Gtk.metadata @@ -426,6 +426,8 @@ 1 1 1 + 1 + 1 1 1 1 diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 74e7b205f..d7226977e 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -82,6 +82,7 @@ customs = \ Plug.custom \ RadioButton.custom \ RadioMenuItem.custom \ + RadioToolButton.custom \ ScrolledWindow.custom \ SelectionData.custom \ Settings.custom \ diff --git a/gtk/RadioToolButton.custom b/gtk/RadioToolButton.custom new file mode 100644 index 000000000..54e331a15 --- /dev/null +++ b/gtk/RadioToolButton.custom @@ -0,0 +1,54 @@ +// Gtk.RadioToolButton.custom - Gtk RadioToolButton class customizations +// +// Author: Mike Kestner +// +// Copyright (c) 2006 Novell, Inc. +// +// This code is inserted after the automatically generated code. +// +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of version 2 of the Lesser GNU General +// Public License as published by the Free Software Foundation. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this program; if not, write to the +// Free Software Foundation, Inc., 59 Temple Place - Suite 330, +// Boston, MA 02111-1307, USA. + + [DllImport("libgtk-win32-2.0-0.dll")] + static extern IntPtr gtk_radio_tool_button_new (IntPtr group); + + public RadioToolButton (GLib.SList group) : base (IntPtr.Zero) + { + if (GetType () != typeof (RadioToolButton)) { + CreateNativeObject (new string [0], new GLib.Value [0]); + Group = group; + return; + } + Raw = gtk_radio_tool_button_new(group == null ? IntPtr.Zero : group.Handle); + } + + [DllImport("libgtk-win32-2.0-0.dll")] + static extern IntPtr gtk_radio_tool_button_new_from_stock (IntPtr group, IntPtr stock_id); + + public RadioToolButton (GLib.SList group, string stock_id) : base (IntPtr.Zero) + { + if (GetType () != typeof (RadioToolButton)) { + GLib.Value[] vals = new GLib.Value [1]; + string[] names = { "stock_id" }; + vals [0] = new GLib.Value (stock_id); + CreateNativeObject (names, vals); + Group = group; + return; + } + IntPtr stock_id_as_native = GLib.Marshaller.StringToPtrGStrdup (stock_id); + Raw = gtk_radio_tool_button_new_from_stock(group == null ? IntPtr.Zero : group.Handle, stock_id_as_native); + GLib.Marshaller.Free (stock_id_as_native); + } +