[Gtk-sharp-list] HideOnDelete / DeleteEvent

Sebastian Vorköper sv@fogman.de
Fri, 16 Jul 2004 10:17:51 +0200


Hello,

I still have this problem that i can't hide a window than i click the
delete button?!
I connected the DeleteEventHandler with my own method, wich just calls
the HideOnDelete() for that particular window.

I've included my testing source.
I would appreachate if someone could just go over it and tell me what
i'm doing wrong.
Maybe its just the [ConnectBefore] thing?
So far i've tried everything possible and didn't find the failure.

Thanks,
Sebastian Vorköper
sv@fogman.de


using System;
using GLib;
using Gtk;
using GtkSharp;

class window_test {
	public static Gtk.Window win1;
	public static Gtk.Window win2;
	public static Gtk.Button button1;
	public static Gtk.Button button2;
	
	public static void on_delete_button1_activate(object obj,
DeleteEventArgs e) {
		Gtk.Application.Quit();
	}
	
	[ConnectBefore]
	public static void on_delete_button2_activate(object obj,
DeleteEventArgs e) {
		win2.HideOnDelete();
	}
	
	public static void on_button1_activate(object obj, EventArgs e) {
		win2.ShowAll();
	}
	
	public static void on_button2_activate(object obj, EventArgs e) {
		win2.HideAll();
	}
	
	public static void Main() {
		Gtk.Application.Init();
		
		win1=new Gtk.Window("Window1");
		button1=new Gtk.Button("Show");
		button1.Clicked += new EventHandler (on_button1_activate);
		win1.Add(button1);
		win1.DeleteEvent += new
DeleteEventHandler(on_delete_button1_activate);
		win1.ShowAll();
		
		win2=new Gtk.Window("Window2");
		button2=new Gtk.Button("Hide");
		button2.Clicked += new EventHandler (on_button2_activate);
		win2.Add(button2);
		win2.DeleteEvent += new
DeleteEventHandler(on_delete_button2_activate);
		
		Gtk.Application.Run();
	}
}