2004-05-07 Mike Kestner <mkestner@ximian.com>

* gtk/Gtk.metadata : hide ListStore and TreeStore newv ctors.
	* gtk/ListStore.custom : rework the ctors for subclassing.
	* gtk/TreeStore.custom : rework the ctors for subclassing.

svn path=/trunk/gtk-sharp/; revision=26941
This commit is contained in:
Mike Kestner 2004-05-07 19:33:09 +00:00
parent 50da743482
commit 50d266b30b
4 changed files with 34 additions and 19 deletions

View File

@ -1,3 +1,9 @@
2004-05-07 Mike Kestner <mkestner@ximian.com>
* gtk/Gtk.metadata : hide ListStore and TreeStore newv ctors.
* gtk/ListStore.custom : rework the ctors for subclassing.
* gtk/TreeStore.custom : rework the ctors for subclassing.
2004-05-07 Mike Kestner <mkestner@ximian.com> 2004-05-07 Mike Kestner <mkestner@ximian.com>
* gtk/Gtk.metadata : hide HScale and VScale with_range ctors. * gtk/Gtk.metadata : hide HScale and VScale with_range ctors.

View File

@ -127,8 +127,7 @@
<attr path="/api/namespace/object[@cname='GtkLayout']/method[@name='SetHadjustment']/*/*[@type='GtkAdjustment*']" name="null_ok">1</attr> <attr path="/api/namespace/object[@cname='GtkLayout']/method[@name='SetHadjustment']/*/*[@type='GtkAdjustment*']" name="null_ok">1</attr>
<attr path="/api/namespace/object[@cname='GtkLayout']/method[@name='SetVadjustment']/*/*[@type='GtkAdjustment*']" name="null_ok">1</attr> <attr path="/api/namespace/object[@cname='GtkLayout']/method[@name='SetVadjustment']/*/*[@type='GtkAdjustment*']" name="null_ok">1</attr>
<attr path="/api/namespace/object[@cname='GtkLayout']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr> <attr path="/api/namespace/object[@cname='GtkLayout']/signal[@name='SetScrollAdjustments']" name="name">ScrollAdjustmentsSet</attr>
<attr path="/api/namespace/object[@cname='GtkListStore']/constructor[@cname='gtk_list_store_newv']/*/*[@name='types']" name="array">1</attr> <attr path="/api/namespace/object[@cname='GtkListStore']/constructor[@cname='gtk_list_store_newv']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GtkListStore']/constructor[@cname='gtk_list_store_newv']/*/*[@name='types']" name="params">1</attr>
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Append']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='Append']/*/*[@name='iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertAfter']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertAfter']/*/*[@name='iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertBefore']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkListStore']/method[@name='InsertBefore']/*/*[@name='iter']" name="pass_as">out</attr>
@ -217,8 +216,7 @@
<attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertIterToChildIter']/*/*[@name='child_iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkTreeModelSort']/method[@name='ConvertIterToChildIter']/*/*[@name='child_iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelected']/*/*" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelected']/*/*" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelectedRows']" name="hidden">1</attr> <attr path="/api/namespace/object[@cname='GtkTreeSelection']/method[@name='GetSelectedRows']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GtkTreeStore']/constructor[@cname='gtk_tree_store_newv']/*/*[@name='types']" name="array">1</attr> <attr path="/api/namespace/object[@cname='GtkTreeStore']/constructor[@cname='gtk_tree_store_newv']" name="hidden">1</attr>
<attr path="/api/namespace/object[@cname='GtkTreeStore']/constructor[@cname='gtk_tree_store_newv']/*/*[@name='types']" name="params">1</attr>
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Append']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='Append']/*/*[@name='iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertAfter']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertAfter']/*/*[@name='iter']" name="pass_as">out</attr>
<attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertBefore']/*/*[@name='iter']" name="pass_as">out</attr> <attr path="/api/namespace/object[@cname='GtkTreeStore']/method[@name='InsertBefore']/*/*[@name='iter']" name="pass_as">out</attr>

View File

@ -80,25 +80,30 @@
return AppendValues ((Array) values); return AppendValues ((Array) values);
} }
public ListStore (params GLib.GType[] types) : base (IntPtr.Zero)
{
CreateNativeObject (new string [0], new GLib.Value [0]);
SetColumnTypes (types);
}
public ListStore (params Type[] types) : base (IntPtr.Zero) public ListStore (params Type[] types) : base (IntPtr.Zero)
{ {
if (GetType() != typeof (ListStore)) GLib.GType[] gtypes = new GLib.GType[types.Length];
throw new InvalidOperationException ("Can't chain to this constructor from subclasses.");
IntPtr[] ctypes = new IntPtr[types.Length];
int i = 0; int i = 0;
foreach (Type type in types) { foreach (Type type in types) {
GLib.GType ctype = GLibSharp.TypeConverter.LookupType (type); GLib.GType ctype = GLibSharp.TypeConverter.LookupType (type);
if (ctype == GLib.GType.None) { if (ctype == GLib.GType.None) {
ctypes[i] = GLibSharp.ManagedValue.GType.Val; gtypes[i] = GLibSharp.ManagedValue.GType;
} else if (ctype == GLib.GType.Invalid) { } else if (ctype == GLib.GType.Invalid) {
throw new Exception ("Unknown type"); throw new Exception ("Unknown type");
} else { } else {
ctypes[i] = ctype.Val; gtypes[i] = ctype;
} }
i++; i++;
} }
Raw = gtk_list_store_newv (ctypes.Length, ctypes); CreateNativeObject (new string [0], new GLib.Value [0]);
SetColumnTypes (gtypes);
} }
public object GetValue(Gtk.TreeIter iter, int column) { public object GetValue(Gtk.TreeIter iter, int column) {

View File

@ -1,8 +1,10 @@
// Gtk.TreeStore.Custom - Gtk TreeStore class customizations // Gtk.TreeStore.Custom - Gtk TreeStore class customizations
// //
// Author: Kristian Rietveld <kris@gtk.org> // Authors: Kristian Rietveld <kris@gtk.org>
// Mike Kestner <mkestner@ximian.com>
// //
// (c) 2002 Kristian Rietveld // Copyright (c) 2002 Kristian Rietveld
// Copyright (c) 2004 Novell, Inc.
// //
// This code is inserted after the automatically generated code. // This code is inserted after the automatically generated code.
@ -125,26 +127,30 @@
return AppendValues ((Array) values); return AppendValues ((Array) values);
} }
public TreeStore (params GLib.GType[] types) : base (IntPtr.Zero)
{
CreateNativeObject (new string [0], new GLib.Value [0]);
SetColumnTypes (types);
}
public TreeStore (params Type[] types) : base (IntPtr.Zero) public TreeStore (params Type[] types) : base (IntPtr.Zero)
{ {
if (GetType() != typeof (TreeStore)) GLib.GType[] gtypes = new GLib.GType[types.Length];
throw new InvalidOperationException ("Can't chain to this constructor from subclasses.");
IntPtr[] ctypes = new IntPtr[types.Length];
int i = 0; int i = 0;
foreach (Type type in types) { foreach (Type type in types) {
GLib.GType ctype = GLibSharp.TypeConverter.LookupType (type); GLib.GType ctype = GLibSharp.TypeConverter.LookupType (type);
if (ctype == GLib.GType.None) { if (ctype == GLib.GType.None) {
ctypes[i] = GLibSharp.ManagedValue.GType.Val; gtypes[i] = GLibSharp.ManagedValue.GType;
} else if (ctype == GLib.GType.Invalid) { } else if (ctype == GLib.GType.Invalid) {
throw new Exception ("Unknown type"); throw new Exception ("Unknown type");
} else { } else {
ctypes[i] = ctype.Val; gtypes[i] = ctype;
} }
i++; i++;
} }
Raw = gtk_tree_store_newv (ctypes.Length, ctypes); CreateNativeObject (new string [0], new GLib.Value [0]);
SetColumnTypes (gtypes);
} }
public object GetValue (Gtk.TreeIter iter, int column) { public object GetValue (Gtk.TreeIter iter, int column) {