mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2024-09-09 00:13:20 +02:00
![Mike Kestner](/assets/img/avatar_default.png)
* AssemblyInfo.cs.in : add IgnoreClassInitializers attr to all. * generator/ObjectGen.cs : add custom-attr generation for objects. * glib/ClassInitializerAttribute.cs : obsolete * glib/IgnoreClassInitializersAttribute.cs : new assembly attr to avoid a blind GetMethods reflection. * glib/Makefile.am : add files * glib/TypeInitializerAttribute.cs : new attr to specify init method to be run at type registration. * gtk/Widget.custom : remove the ClassInitializerAttr. * gtk/Gtk.metadata : add a custom-attr node to GtkWidget. * sample/Subclass.cs : use the IgnoreClassInitializers attr. svn path=/trunk/gtk-sharp/; revision=85480
54 lines
1.2 KiB
C#
Executable File
54 lines
1.2 KiB
C#
Executable File
// Subclass.cs - Widget subclass Test
|
|
//
|
|
// Author: Mike Kestner <mkestner@ximian.com>
|
|
//
|
|
// (c) 2001-2003 Mike Kestner, Novell, Inc.
|
|
|
|
[assembly:GLib.IgnoreClassInitializers]
|
|
|
|
namespace GtkSamples {
|
|
|
|
using Gtk;
|
|
using System;
|
|
|
|
public class ButtonApp {
|
|
|
|
public static int Main (string[] args)
|
|
{
|
|
Application.Init ();
|
|
Window win = new Window ("Button Tester");
|
|
win.DeleteEvent += new DeleteEventHandler (Quit);
|
|
Button btn = new MyButton ();
|
|
win.Add (btn);
|
|
win.ShowAll ();
|
|
Application.Run ();
|
|
return 0;
|
|
}
|
|
|
|
static void Quit (object sender, DeleteEventArgs args)
|
|
{
|
|
Application.Quit();
|
|
}
|
|
}
|
|
|
|
[Binding (Gdk.Key.Escape, "HandleBinding", "Escape")]
|
|
[Binding (Gdk.Key.Left, "HandleBinding", "Left")]
|
|
[Binding (Gdk.Key.Right, "HandleBinding", "Right")]
|
|
[Binding (Gdk.Key.Up, "HandleBinding", "Up")]
|
|
[Binding (Gdk.Key.Down, "HandleBinding", "Down")]
|
|
public class MyButton : Gtk.Button {
|
|
|
|
public MyButton () : base ("I'm a subclassed button") {}
|
|
|
|
protected override void OnClicked ()
|
|
{
|
|
Console.WriteLine ("Button::Clicked default handler fired.");
|
|
}
|
|
|
|
private void HandleBinding (string text)
|
|
{
|
|
Console.WriteLine ("Got a bound keypress: " + text);
|
|
}
|
|
}
|
|
}
|