digraph G
{
  node [shape=rect];

  n_parse_arguments     [shape=record, label="<f0>\<main.c:517\> | pcb_gui-\>parse_arguments() | <f2>gtk3_cairo_parse_arguments()"];
  n_do_export           [shape=record, label="<f0>\<main.c574\> | pcb_gui-\>do_export() | <f2>gtkhid_do_export()"];
  n_create_pcb_widgets  [label="ghid_create_pcb_widgets()\n<src_plugins/lib_gtk_common/dlg_topwin.c>"];
  n_build_top_window    [label="ghid_build_pcb_top_window()"];
  n_drawing_area_new    [label="gtk_drawing_area_new()"];

  "main() <src/main.c>" -> n_parse_arguments:f0;
  n_parse_arguments:f0  -> n_do_export:f0 [weight=10];
  n_do_export:f2        -> n_create_pcb_widgets;
  n_create_pcb_widgets  -> n_build_top_window;
  n_build_top_window    -> n_drawing_area_new;
  n_drawing_area_new    -> drawing_area;

  n_parse_arguments:f2 -> n_gtkhid_parse_arguments;
  subgraph gtk3_cairo_parse_arguments {
    n_gtkhid_parse_arguments  [label="gtkhid_parse_arguments()\n<src_plugins/lib_gtk_hid/glue_hid.c:209>"];
    n_init_renderer           [shape=record, label="<f0>ghidgui-\>common.init_renderer | ghid_cairo_init_renderer()"];
    n_init_top_window         [label="gport->top_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);"]

    n_gtkhid_parse_arguments -> n_init_renderer:f0;
    n_gtkhid_parse_arguments -> n_init_top_window;
    n_init_renderer -> "render_priv = g_new0(render_priv_t, 1);"
  }
  
  subgraph drawing_area {
    drawing_area -> "ghid_cairo_drawing_area_expose_cb()";
    drawing_area -> "ghid_cairo_preview_expose()";
  }
}
