All pastes #179030 Raw Edit

Anonymous

public text v1 · immutable
#179030 ·published 2006-09-21 20:49 UTC
rendered paste body
protected override bool OnExposeEvent (Gdk.EventExpose e)
        {
            // base.OnExposeEvent (e);
            
            if(!IsRealized) {
                return false;
            }
            
            Cairo.Context cr = Gdk.CairoHelper.Create(GdkWindow);
            
            foreach(Gdk.Rectangle rect in e.Region.GetRectangles()) {
                Console.WriteLine ("Drawing at {0},{1} {2}x{3}", rect.X, rect.Y, rect.Width, rect.Height);
                cr.Rectangle(rect.X, rect.Y, rect.Width, rect.Height);
                cr.Clip();
                Draw(cr);
            }
            
            ((IDisposable)cr).Dispose();

            return false;
        }

        private void Draw (Cairo.Context cr)
        {
            cr.Color = new Cairo.Color (1.0, 1.0, 1.0, 1.0);
            cr.Rectangle ((double) 40, (double) 40, (double) 100, (double) 100);
            cr.Fill ();
            cr.Stroke ();
            Console.WriteLine ("Done drawing");
        }