public static void DrawToFile(HuffLibrary.Tree HTree, DrawSettings Options, string FileName)
 {
     int width, height;
     GetAreaSize (HTree.GetRootNode (), out width, out height, 30);
     Gdk.Pixmap canvas = new Pixmap (null, width, height, 24);
     var bg_gc = new Gdk.GC (canvas);
     bg_gc.RgbFgColor = new Color (0, 0, 0);
     canvas.DrawRectangle (bg_gc, true, 0, 0, width, height);
     if (Options.draw_grid)
         DrawGrid (canvas, 30);
     var gc = new Gdk.GC (canvas);
     gc.RgbFgColor = new Color (255, 255, 0);
     priv_DrawList (gc, canvas, HTree.GetRootNode (), 0, 0, 0);
     Gdk.Pixbuf buffer = Gdk.Pixbuf.FromDrawable (canvas, Screen.Default.RgbColormap, 0, 0, 0, 0, width, height);
     buffer.Save (FileName, "png");
 }
 public static void DrawTree(HuffLibrary.Tree HTree, Gtk.DrawingArea Canvas, DrawSettings Options)
 {
     Canvas.GdkWindow.BeginPaintRegion (Canvas.GdkWindow.ClipRegion);
     Canvas.GdkWindow.Background = new Color (0, 0, 0);
     if (Options.draw_grid)
         DrawGrid (Canvas.GdkWindow, cellsize);
     DrawList (Canvas.GdkWindow, HTree.GetRootNode ());
     Canvas.GdkWindow.EndPaint ();
 }