2002-07-09 Mike Kestner <mkestner@speakeasy.net>

* generator/ClassBase.cs : handle overloaded method hash collision
	* generator/SignalHandler.cs : generate *Handler delegates. stub *Args
	* parser/Gtk.metadata : add *Defaults method renaming

svn path=/trunk/gtk-sharp/; revision=5678
This commit is contained in:
Mike Kestner 2002-07-10 03:09:39 +00:00
parent a31a206d61
commit 79e7514057
6 changed files with 86 additions and 4 deletions

View file

@ -1,3 +1,9 @@
2002-07-09 Mike Kestner <mkestner@speakeasy.net>
* generator/ClassBase.cs : handle overloaded method hash collision
* generator/SignalHandler.cs : generate *Handler delegates. stub *Args
* parser/Gtk.metadata : add *Defaults method renaming
2002-07-08 Mike Kestner <mkestner@speakeasy.net>
* glue/Makefile.in : s/BASE_SOURCES/BASESOURCES

View file

@ -44,7 +44,10 @@ namespace GtkSharp.Generation {
switch (node.Name) {
case "method":
methods.Add (member.GetAttribute ("name"), new Method (LibraryName, member, this));
string name = member.GetAttribute("name");
while (methods.ContainsKey(name))
name += "mangled";
methods.Add (name, new Method (LibraryName, member, this));
break;
case "property":

View file

@ -99,6 +99,8 @@ namespace GtkSharp.Generation {
String sname = name + "Signal";
String dname = name + "Delegate";
String cbname = name + "Callback";
String hndlrname = name + "Handler";
String argsname = name + "Args";
handlers[name] = sname;
@ -122,6 +124,11 @@ namespace GtkSharp.Generation {
sw.Write("\tpublic delegate " + p_ret + " ");
sw.WriteLine(dname + "(" + pinv + ", int key);");
sw.WriteLine();
sw.WriteLine("\tpublic delegate void " + hndlrname + "(object o, " + argsname + " args);");
sw.WriteLine();
sw.WriteLine("\tpublic class " + argsname + " : EventArgs {");
sw.WriteLine("\t}");
sw.WriteLine();
sw.WriteLine("\tpublic class " + sname + " : SignalCallback {");
sw.WriteLine();
sw.WriteLine("\t\tprivate static " + dname + " _Delegate;");

View file

@ -9381,7 +9381,7 @@
<parameter type="GtkPackType*" name="pack_type"/>
</parameters>
</method>
<method name="PackEndDefaults" cname="gtk_box_pack_end_defaults">
<method name="PackEnd" cname="gtk_box_pack_end_defaults">
<return-type type="void"/>
<parameters>
<parameter type="GtkWidget*" name="widget"/>
@ -9403,7 +9403,7 @@
<parameter type="GtkPackType" name="pack_type"/>
</parameters>
</method>
<method name="PackStartDefaults" cname="gtk_box_pack_start_defaults">
<method name="PackStart" cname="gtk_box_pack_start_defaults">
<return-type type="void"/>
<parameters>
<parameter type="GtkWidget*" name="widget"/>
@ -13617,7 +13617,7 @@
<parameter type="gboolean" name="homogeneous"/>
</parameters>
</constructor>
<method name="AttachDefaults" cname="gtk_table_attach_defaults">
<method name="Attach" cname="gtk_table_attach_defaults">
<return-type type="void"/>
<parameters>
<parameter type="GtkWidget*" name="widget"/>

View file

@ -1079,4 +1079,37 @@
</attribute>
</data>
</rule>
<rule>
<class name="GtkBox">
<method>PackStartDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>PackStart</value>
</attribute>
</data>
</rule>
<rule>
<class name="GtkBox">
<method>PackEndDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>PackEnd</value>
</attribute>
</data>
</rule>
<rule>
<class name="GtkTable">
<method>AttachDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>Attach</value>
</attribute>
</data>
</rule>
</metadata>

View file

@ -1079,4 +1079,37 @@
</attribute>
</data>
</rule>
<rule>
<class name="GtkBox">
<method>PackStartDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>PackStart</value>
</attribute>
</data>
</rule>
<rule>
<class name="GtkBox">
<method>PackEndDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>PackEnd</value>
</attribute>
</data>
</rule>
<rule>
<class name="GtkTable">
<method>AttachDefaults</method>
</class>
<data>
<attribute target="method">
<name>name</name>
<value>Attach</value>
</attribute>
</data>
</rule>
</metadata>