public void Draw(Cairo.ImageSurface dst, int tX, int tY, PixelOp pixelOp) { if (this.disposed) { throw new ObjectDisposedException("IrregularSurface"); } foreach (PlacedSurface ps in this.placedSurfaces) { ps.Draw(dst, tX, tY, pixelOp); } }
public void Draw(ImageSurface dst, int tX, int tY, PixelOp pixelOp) { if (disposed) { throw new ObjectDisposedException("PlacedSurface"); } Gdk.Point oldWhere = where; try { where.X += tX; where.Y += tY; Draw(dst, pixelOp); } finally { where = oldWhere; } }
public void Draw(ImageSurface dst, PixelOp pixelOp) { if (disposed) { throw new ObjectDisposedException("PlacedSurface"); } Gdk.Rectangle dstRect = Bounds; Gdk.Rectangle dstClip = Gdk.Rectangle.Intersect(dstRect, dst.GetBounds()); if (dstClip.Width > 0 && dstClip.Height > 0) { int dtX = dstClip.X - where.X; int dtY = dstClip.Y - where.Y; pixelOp.Apply(dst, dstClip.Location, what, new Gdk.Point(dtX, dtY), dstClip.Size); } }
public void Draw(Cairo.ImageSurface dst, int tX, int tY, PixelOp pixelOp) { if (this.disposed) throw new ObjectDisposedException ("IrregularSurface"); foreach (PlacedSurface ps in this.placedSurfaces) ps.Draw (dst, tX, tY, pixelOp); }
public void Draw(ImageSurface dst, int tX, int tY, PixelOp pixelOp) { if (disposed) throw new ObjectDisposedException ("PlacedSurface"); Gdk.Point oldWhere = where; try { where.X += tX; where.Y += tY; Draw (dst, pixelOp); } finally { where = oldWhere; } }
public void Draw(ImageSurface dst, PixelOp pixelOp) { if (disposed) throw new ObjectDisposedException ("PlacedSurface"); Gdk.Rectangle dstRect = Bounds; Gdk.Rectangle dstClip = Gdk.Rectangle.Intersect (dstRect, dst.GetBounds ()); if (dstClip.Width > 0 && dstClip.Height > 0) { int dtX = dstClip.X - where.X; int dtY = dstClip.Y - where.Y; pixelOp.Apply (dst, dstClip.Location, what, new Gdk.Point (dtX, dtY), dstClip.Size); } }