using Gtk; using Gdk; using Glade; using System; using System.IO; using System.Web.Services; class DemoWindow { [Widget] Gtk.Image image1; [Widget] Gtk.SpinButton spinbutton1; Gdk.Pixbuf pb; DemoSoap ds; void ShowScreenshot () { int scaling_factor = (int) spinbutton1.Value; image1.Pixbuf = pb.ScaleSimple ( (int) (pb.Width * (scaling_factor / 100.0)), (int) (pb.Height * (scaling_factor / 100.0)), Gdk.InterpType.Bilinear); } void on_spinbutton1_changed (object o, EventArgs e) { ShowScreenshot (); } void on_button1_clicked (object o, EventArgs e) { byte [] data = ds.Capture (); pb = new Gdk.Pixbuf (new MemoryStream (data)); ShowScreenshot (); } public DemoWindow () { Glade.XML gui = new Glade.XML ("./demo.glade", "window1", ""); ds = new DemoSoap (); gui.Autoconnect (this); } } class Driver { static void Main () { Application.Init (); object dw = new DemoWindow (); Application.Run (); } }