From 5bc739ba5d699d4753b9096e5b9465b21e4be88e Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Fri, 7 Jan 2005 19:32:23 +0000 Subject: [PATCH] * stetic/wrapper/Image.cs: wrapper for Gtk.Images that show files * stetic/wrapper/Icon.cs: wrapper for Gtk.Images that show stock icons * stetic/wrapper/SpinButton.cs: wrapper for Gtk.SpinButton * stetic/wrapper/Frame.cs: * stetic/wrapper/HBox.cs: * stetic/wrapper/HButtonBox.cs: * stetic/wrapper/HPaned.cs: * stetic/wrapper/VBox.cs: * stetic/wrapper/VButtonBox.cs: * stetic/wrapper/VPaned.cs: * stetic/wrapper/Table.cs: * stetic/wrapper/Window.cs: Implement IObjectWrapper on these (previously they just implemented IDesignTimeContainer) * stetic/wrapper/Box.cs: * stetic/wrapper/ButtonBox.cs: * stetic/wrapper/Paned.cs: static classes that define PropertyDescriptors used by their subclasses * stetic/wrapper/DefaultWidgets.cs: Update for new wrappers * stetic/editor/File.cs: editor for strings that represent filenames * stetic/Stetic.cs: Use Gnome.Program rather than Gtk.Application now, since we're using Gnome.FileEntry. svn path=/trunk/gtk-sharp/; revision=38501 --- ChangeLog | 13 ++++++++++++ gtk/Gtk.metadata | 8 +++---- gtk/Image.custom | 54 ++++++++++++++++++++++++++++++++++++++++++++++++ gtk/Makefile.am | 1 + 4 files changed, 72 insertions(+), 4 deletions(-) create mode 100644 gtk/Image.custom diff --git a/ChangeLog b/ChangeLog index b5777a7f0..6b114c95b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2005-01-07 Dan Winship + + * gtk/Gtk.metadata: Hide the Gtk.Image ctors generated from + gtk_image_new_from_icon_set and gtk_image_new_from_stock. + + * gtk/Image.custom: Implement them here, taking into account the + fact that the "icon_size" property is mysteriously an int rather + than a Gtk.IconSize. + + * gtk/Makefile.am (customs): add Image.custom + + * gtk/Gtk.metadata: gtk_window_set_focus accepts NULL + 2005-01-06 Larry Ewing * gtk/StockItem.custom: add a ctor for StockItem. diff --git a/gtk/Gtk.metadata b/gtk/Gtk.metadata index 7fe40f71a..6ac78034d 100644 --- a/gtk/Gtk.metadata +++ b/gtk/Gtk.metadata @@ -186,10 +186,9 @@ 1 pixbuf_animation file - icon_set - icon_size - stock - icon_size + 1 + 1 + int out out out @@ -439,6 +438,7 @@ 1 1 1 + 1 1 1 1 diff --git a/gtk/Image.custom b/gtk/Image.custom new file mode 100644 index 000000000..e477b7956 --- /dev/null +++ b/gtk/Image.custom @@ -0,0 +1,54 @@ +// Image.custom - Customizations to Gtk.Image +// +// Copyright (C) 2004 Novell, Inc. +// +// 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_image_new_from_icon_set(IntPtr icon_set, int size); + + public Image (Gtk.IconSet icon_set, Gtk.IconSize size) : base (IntPtr.Zero) + { + if (GetType () != typeof (Image)) { + ArrayList vals = new ArrayList(); + ArrayList names = new ArrayList(); + names.Add ("icon_set"); + vals.Add (new GLib.Value (icon_set)); + names.Add ("icon_size"); + vals.Add (new GLib.Value ((int)size)); + CreateNativeObject ((string[])names.ToArray (typeof (string)), (GLib.Value[])vals.ToArray (typeof (GLib.Value))); + return; + } + Raw = gtk_image_new_from_icon_set(icon_set.Handle, (int) size); + } + + [DllImport("libgtk-win32-2.0-0.dll")] + static extern IntPtr gtk_image_new_from_stock(string stock_id, int size); + + public Image (string stock_id, Gtk.IconSize size) : base (IntPtr.Zero) + { + if (GetType () != typeof (Image)) { + ArrayList vals = new ArrayList(); + ArrayList names = new ArrayList(); + names.Add ("stock"); + vals.Add (new GLib.Value (stock_id)); + names.Add ("icon_size"); + vals.Add (new GLib.Value ((int)size)); + CreateNativeObject ((string[])names.ToArray (typeof (string)), (GLib.Value[])vals.ToArray (typeof (GLib.Value))); + return; + } + Raw = gtk_image_new_from_stock(stock_id, (int) size); + } + diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 6aab27b38..cad0e1df5 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -67,6 +67,7 @@ customs = \ IconFactory.custom \ IconSet.custom \ IconTheme.custom \ + Image.custom \ ImageMenuItem.custom \ Init.custom \ InputDialog.custom \