Index: trunk/src/gui_act.c =================================================================== --- trunk/src/gui_act.c (revision 26807) +++ trunk/src/gui_act.c (revision 26808) @@ -956,7 +956,7 @@ extra_units_y[0].scale = PCB->hidlib.grid; extra_units_y[2].scale = PCB->hidlib.size_y; - pcb_gui->view_get(pcb_gui, &PCB->hidlib, &vbx); + pcb_gui->view_get(pcb_gui, &vbx); view_width = vbx.X2 - vbx.X1; view_height = vbx.Y2 - vbx.Y1; Index: trunk/src/hid.h =================================================================== --- trunk/src/hid.h (revision 26807) +++ trunk/src/hid.h (revision 26808) @@ -530,7 +530,7 @@ void (*pan_mode)(pcb_hid_t *hid, pcb_coord_t x, pcb_coord_t y, pcb_bool mode); /* Load viewbox with the extents of visible pixels translated to board coords */ - void (*view_get)(pcb_hid_t *hid, pcb_hidlib_t *hidlib, pcb_box_t *viewbox); + void (*view_get)(pcb_hid_t *hid, pcb_box_t *viewbox); /*** misc GUI ***/ /* Open the command line */ Index: trunk/src_plugins/hid_batch/batch.c =================================================================== --- trunk/src_plugins/hid_batch/batch.c (revision 26807) +++ trunk/src_plugins/hid_batch/batch.c (revision 26808) @@ -299,8 +299,15 @@ { } -static void batch_view_get(pcb_hid_t *hid, pcb_hidlib_t *hidlib, pcb_box_t *viewbox) +static void batch_set_hidlib(pcb_hid_t *hid, pcb_hidlib_t *hidlib) { + hid->hid_data = hidlib; +} + + +static void batch_view_get(pcb_hid_t *hid, pcb_box_t *viewbox) +{ + pcb_hidlib_t *hidlib = hid->hid_data; viewbox->X1 = 0; viewbox->Y1 = 0; viewbox->X2 = hidlib->size_x; @@ -342,6 +349,7 @@ batch_hid.description = "Batch-mode GUI for non-interactive use."; batch_hid.gui = 1; + batch_hid.set_hidlib = batch_set_hidlib; batch_hid.get_export_options = batch_get_export_options; batch_hid.do_export = batch_do_export; batch_hid.do_exit = batch_do_exit; Index: trunk/src_plugins/hid_lesstif/main.c =================================================================== --- trunk/src_plugins/hid_lesstif/main.c (revision 26807) +++ trunk/src_plugins/hid_lesstif/main.c (revision 26808) @@ -2980,7 +2980,7 @@ } -static void ltf_view_get(pcb_hid_t *hid, pcb_hidlib_t *hidlib, pcb_box_t *viewbox) +static void ltf_view_get(pcb_hid_t *hid, pcb_box_t *viewbox) { viewbox->X1 = view_left_x; viewbox->Y1 = view_top_y; Index: trunk/src_plugins/lib_gtk_common/glue_hid.c =================================================================== --- trunk/src_plugins/lib_gtk_common/glue_hid.c (revision 26807) +++ trunk/src_plugins/lib_gtk_common/glue_hid.c (revision 26808) @@ -466,7 +466,7 @@ ghidgui->port.view.panning = mode; } -static void ghid_view_get(pcb_hid_t *hid, pcb_hidlib_t *hidlib, pcb_box_t *viewbox) +static void ghid_view_get(pcb_hid_t *hid, pcb_box_t *viewbox) { viewbox->X1 = ghidgui->port.view.x0; viewbox->Y1 = ghidgui->port.view.y0; Index: trunk/src_plugins/lib_hid_pcbui/act.c =================================================================== --- trunk/src_plugins/lib_hid_pcbui/act.c (revision 26807) +++ trunk/src_plugins/lib_hid_pcbui/act.c (revision 26808) @@ -228,7 +228,7 @@ x = pcb_crosshair.X; y = pcb_crosshair.Y; - pcb_gui->view_get(pcb_gui, &PCB->hidlib, &vb); + pcb_gui->view_get(pcb_gui, &vb); xcent = (double)(vb.X1 + vb.X2)/2.0; ycent = (double)(vb.Y1 + vb.Y2)/2.0; xoffs = xcent - x;