GtkSharp/sample/Subclass.cs
Mike Kestner 1f43eeef6b 2003-02-24 Mike Kestner <mkestner@speakeasy.net>
* sample/Subclass.cs : rework the GType code.

svn path=/trunk/gtk-sharp/; revision=11923
2003-02-24 07:56:32 +00:00

59 lines
1.1 KiB
C#
Executable file

// Subclass.cs - Widget subclass Test implementation
//
// Author: Mike Kestner <mkestner@speakeasy.net>
//
// (c) 2001-2002 Mike Kestner
namespace GtkSamples {
using Gtk;
using GtkSharp;
using System;
using System.Drawing;
public class ButtonApp {
public static int Main (string[] args)
{
Application.Init ();
Window win = new Window ("Button Tester");
win.DefaultSize = new Size (200, 150);
win.DeleteEvent += new DeleteEventHandler (Window_Delete);
Button btn = new MyButton ();
btn.Label = "I'm a subclassed button";
btn.Clicked += new EventHandler (btn_click);
win.Add (btn);
win.ShowAll ();
Application.Run ();
return 0;
}
static void btn_click (object obj, EventArgs args)
{
Console.WriteLine ("Button Clicked");
}
static void Window_Delete (object obj, DeleteEventArgs args)
{
Application.Quit ();
args.RetVal = true;
}
}
public class MyButton : Gtk.Button {
static uint gtype = 0;
public MyButton () : base (new GLib.Type (GType)) {}
public static new uint GType {
get {
if (gtype == 0)
gtype = RegisterGType (typeof (MyButton)).Value;
return gtype;
}
}
}
}