diff --git a/ChangeLog b/ChangeLog index 92435ac62..ff2234cb8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2004-03-16 Mike Kestner + + * generator/Signal.cs : streamline the remove code a tad. + 2004-03-16 Mike Kestner * gdk/Makefile.am : add new file. diff --git a/generator/Signal.cs b/generator/Signal.cs index 3529e25de..304bf6e05 100644 --- a/generator/Signal.cs +++ b/generator/Signal.cs @@ -271,18 +271,13 @@ namespace GtkSharp.Generation { sw.WriteLine("\t\t\t\t}"); sw.WriteLine("\t\t\t}"); sw.WriteLine("\t\t\tremove {"); - sw.WriteLine("\t\t\t\tGtkSharp.SignalCallback cb = null;"); - sw.WriteLine("\t\t\t\tSystem.ComponentModel.EventHandlerList event_list = null;"); - sw.WriteLine("\t\t\t\tHashtable signals = null;"); + sw.WriteLine("\t\t\t\tSystem.ComponentModel.EventHandlerList event_list = AfterHandlers;"); + sw.WriteLine("\t\t\t\tHashtable signals = AfterSignals;"); sw.WriteLine("\t\t\t\tif (value.Method.GetCustomAttributes(typeof(GLib.ConnectBeforeAttribute), false).Length > 0) {"); - sw.WriteLine("\t\t\t\t\tcb = BeforeSignals [{0}] as GtkSharp.SignalCallback;", cname); sw.WriteLine("\t\t\t\t\tevent_list = BeforeHandlers;"); sw.WriteLine("\t\t\t\t\tsignals = BeforeSignals;"); - sw.WriteLine("\t\t\t\t} else {"); - sw.WriteLine("\t\t\t\t\tcb = AfterSignals [{0}] as GtkSharp.SignalCallback;", cname); - sw.WriteLine("\t\t\t\t\tevent_list = AfterHandlers;"); - sw.WriteLine("\t\t\t\t\tsignals = AfterSignals;"); sw.WriteLine("\t\t\t\t}"); + sw.WriteLine("\t\t\t\tGtkSharp.SignalCallback cb = signals [{0}] as GtkSharp.SignalCallback;", cname); sw.WriteLine("\t\t\t\tevent_list.RemoveHandler(" + cname + ", value);"); sw.WriteLine("\t\t\t\tif (cb == null)"); sw.WriteLine("\t\t\t\t\treturn;");