//system top
public void SystemTop(Cairo.Context g, Int32 width)
{
PointD p1, p2, p3, p4, s1, s2, s3, s4;
p1 = new PointD(5, 5); p2 = new PointD(width, 5); s1 = new PointD(width + 2, 7); s2 = new PointD(width + 2, 28);
p3 = new PointD(width, 30); p4 = new PointD(5, 30); s3 = new PointD(3, 28); s4 = new PointD(3, 7);
g.Color = new Color(0.3, 0.4, 0.6, 1);
g.MoveTo(p1); g.LineTo(p2); g.LineTo(s1); g.LineTo(s2); g.LineTo(p3); g.LineTo(p4); g.LineTo(s3); g.LineTo(s4); g.LineTo(p1);
g.ClosePath(); g.LineWidth = 1; g.Stroke();
g.MoveTo(p1); g.LineTo(p2); g.LineTo(s1); g.LineTo(s2); g.LineTo(p3); g.LineTo(p4); g.LineTo(s3); g.LineTo(s4); g.LineTo(p1);
g.ClosePath();
Cairo.Gradient pat = new Cairo.LinearGradient(80, 10, 80, 60);
pat.AddColorStop(0, new Cairo.Color(0.3, 0.4, 0.6, 0.6));
pat.AddColorStop(1, new Cairo.Color(0, 0, 0, 1));
g.Pattern = pat;
g.FillPreserve();
g.SetFontSize(17);
g.SelectFontFace("", FontSlant.Normal, FontWeight.Bold);
g.MoveTo(new PointD(12, 23));
g.Color = new Color(1, 1, 1, 1);
g.ShowText("General system information");
((IDisposable)g.Target).Dispose();
((IDisposable)g).Dispose();
}