Index: trunk/src/change_act.c =================================================================== --- trunk/src/change_act.c (revision 17327) +++ trunk/src/change_act.c (revision 17328) @@ -92,7 +92,7 @@ int funcid = pcb_funchash_get(function, NULL); if (funcid == F_Object) { - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); type = pcb_search_screen(x, y, PCB_CHANGECLEARSIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -194,7 +194,7 @@ void *ptr1, *ptr2, *ptr3; pcb_coord_t x, y; - pcb_gui->get_coords("Click on object to change", &x, &y); + pcb_hid_get_coords("Click on object to change", &x, &y); if ((type = pcb_search_screen(x, y, PCB_CHANGESIZE_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) if (PCB_FLAG_TEST(PCB_FLAG_LOCK, (pcb_any_obj_t *) ptr2)) @@ -315,7 +315,7 @@ if (funcid == F_Object) { pcb_coord_t x, y; - pcb_gui->get_coords("Click on object to change size of", &x, &y); + pcb_hid_get_coords("Click on object to change size of", &x, &y); type = pcb_search_screen(x, y, PCB_CHANGESIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -406,7 +406,7 @@ int funcid = pcb_funchash_get(function, NULL); if (funcid == F_Object) { - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); type = pcb_search_screen(x, y, PCB_CHANGE2NDSIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -545,7 +545,7 @@ /* change the refdes of a subcircuit */ case F_Subc: - pcb_gui->get_coords("Select a subcircuit", &x, &y); + pcb_hid_get_coords("Select a subcircuit", &x, &y); type = PCB_OBJ_SUBC; goto do_chg_name; @@ -553,7 +553,7 @@ case F_Object: { void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); type = PCB_CHANGENAME_TYPES; do_chg_name:; if ((type = pcb_search_screen(x, y, type, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { @@ -617,7 +617,7 @@ int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); if ((type = pcb_search_screen(x, y, PCB_CHANGEJOIN_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) if (pcb_chg_obj_join(type, ptr1, ptr2, ptr3)) pcb_board_set_changed_flag(pcb_true); @@ -668,7 +668,7 @@ { int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Element"), &x, &y); + pcb_hid_get_coords(_("Select an Element"), &x, &y); ptr3 = NULL; type = pcb_search_screen(x, y, PCB_CHANGENONETLIST_TYPES, &ptr1, &ptr2, &ptr3); @@ -781,7 +781,7 @@ if (absolute && (kind <= 5)) switch (pcb_funchash_get(function, NULL)) { case F_Object: - pcb_gui->get_coords("Click on object for SetThermal", &gx, &gy); + pcb_hid_get_coords("Click on object for SetThermal", &gx, &gy); if ((type = pcb_search_screen(gx, gy, PCB_CHANGETHERMAL_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { pcb_chg_obj_thermal(type, ptr1, ptr2, ptr3, kind, INDEXOFCURRENT); pcb_undo_inc_serial(); @@ -994,7 +994,7 @@ if (funcid == F_Object) { pcb_coord_t x, y; - pcb_gui->get_coords("Click on object to change angle of", &x, &y); + pcb_hid_get_coords("Click on object to change angle of", &x, &y); type = pcb_search_screen(x, y, PCB_CHANGESIZE_TYPES, &ptr1, &ptr2, &ptr3); } @@ -1069,7 +1069,7 @@ if (funcid == F_Object) { pcb_coord_t x, y; - pcb_gui->get_coords("Click on object to change radius of", &x, &y); + pcb_hid_get_coords("Click on object to change radius of", &x, &y); type = pcb_search_screen(x, y, PCB_CHANGESIZE_TYPES, &ptr1, &ptr2, &ptr3); } Index: trunk/src/file_act.c =================================================================== --- trunk/src/file_act.c (revision 17327) +++ trunk/src/file_act.c (revision 17328) @@ -330,7 +330,7 @@ pcb_bool result; pcb_coord_t x, y; - pcb_gui->get_coords("Click on an element", &x, &y); + pcb_hid_get_coords("Click on an element", &x, &y); if ((pcb_search_screen(x, y, PCB_OBJ_SUBC, &ptrtmp, &ptrtmp, &ptrtmp)) != PCB_OBJ_VOID) { pcb_subc_t *subc = (pcb_subc_t *) ptrtmp; if ((fp = pcb_check_and_open_file(name, pcb_true, pcb_false, &result, NULL)) != NULL) { Index: trunk/src/gui_act.c =================================================================== --- trunk/src/gui_act.c (revision 17327) +++ trunk/src/gui_act.c (revision 17328) @@ -418,7 +418,7 @@ void *ptrtmp; pcb_coord_t x, y; - pcb_gui->get_coords(_("Click on a subcircuit"), &x, &y); + pcb_hid_get_coords(_("Click on a subcircuit"), &x, &y); if ((pcb_search_screen(x, y, PCB_OBJ_SUBC, &ptrtmp, &ptrtmp, &ptrtmp)) != PCB_OBJ_VOID) { subc = (pcb_subc_t *) ptrtmp; pcb_gui->show_item(subc); @@ -432,7 +432,7 @@ int type; void *ptr1, *ptr2, *ptr3; pcb_coord_t x, y; - pcb_gui->get_coords(_("Click on a subcircuit"), &x, &y); + pcb_hid_get_coords(_("Click on a subcircuit"), &x, &y); /* toggle terminal ID print for subcircuit parts */ type = pcb_search_screen(x, y, PCB_OBJ_SUBC | PCB_OBJ_SUBC_PART | PCB_OBJ_PSTK | PCB_OBJ_LINE | PCB_OBJ_ARC | PCB_OBJ_POLY | PCB_OBJ_TEXT, (void **)&ptr1, (void **)&ptr2, (void **)&ptr3); @@ -911,7 +911,7 @@ pcb_marked.Y = pcb_crosshair.Y; } else - pcb_gui->get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y); + pcb_hid_get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y); pcb_notify_mark_change(pcb_true); } } @@ -923,7 +923,7 @@ pcb_marked.Y = pcb_crosshair.Y; } else - pcb_gui->get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y); + pcb_hid_get_coords(_("Click on new mark"), &pcb_marked.X, &pcb_marked.Y); pcb_notify_mark_change(pcb_true); } return 0; Index: trunk/src/hid_actions.c =================================================================== --- trunk/src/hid_actions.c (revision 17327) +++ trunk/src/hid_actions.c (revision 17328) @@ -209,7 +209,7 @@ const pcb_hid_action_t *old_action; if (a->need_coord_msg) - pcb_gui->get_coords(_(a->need_coord_msg), &x, &y); + pcb_hid_get_coords(_(a->need_coord_msg), &x, &y); if (conf_core.rc.verbose) { printf("Action: \033[34m%s(", a->name); @@ -245,6 +245,17 @@ return pcb_hid_actionv_(a, argc, argv); } +void pcb_hid_get_coords(const char *msg, pcb_coord_t *x, pcb_coord_t *y) +{ + if (pcb_gui == NULL) { + fprintf(stderr, "pcb_hid_get_coords: can not get coordinates (no gui) for '%s'\n", msg); + *x = 0; + *y = 0; + } + else + pcb_gui->get_coords(msg, x, y); +} + static int hid_parse_actionstring(const char *rstr, char require_parens) { const char **list = NULL; Index: trunk/src/hid_actions.h =================================================================== --- trunk/src/hid_actions.h (revision 17327) +++ trunk/src/hid_actions.h (revision 17328) @@ -34,4 +34,8 @@ "action(arg1, arg2)" */ int pcb_hid_parse_actions(const char *str_); +/* If the mouse cursor is in the drawin area, set x;y silently and return; + else show msg and let the user click in the drawing area */ +void pcb_hid_get_coords(const char *msg, pcb_coord_t *x, pcb_coord_t *y); + #endif Index: trunk/src/obj_pstk_act.c =================================================================== --- trunk/src/obj_pstk_act.c (revision 17327) +++ trunk/src/obj_pstk_act.c (revision 17328) @@ -56,7 +56,7 @@ } } else { - pcb_gui->get_coords("Click at padstack origin", &x, &y); + pcb_hid_get_coords("Click at padstack origin", &x, &y); /* rather use the snapped corsshair coords */ x = pcb_crosshair.X; y = pcb_crosshair.Y; Index: trunk/src/object_act.c =================================================================== --- trunk/src/object_act.c (revision 17327) +++ trunk/src/object_act.c (revision 17328) @@ -55,6 +55,7 @@ #include "obj_pstk.h" #include "macro.h" #include "rotate.h" +#include "hid_actions.h" static const char pcb_acts_Attributes[] = "Attributes(Layout|Layer|Element|Subc)\n" "Attributes(Layer,layername)"; @@ -129,7 +130,7 @@ } if (n_found == 0) { void *ptrtmp; - pcb_gui->get_coords(_("Click on a subcircuit"), &x, &y); + pcb_hid_get_coords(_("Click on a subcircuit"), &x, &y); if ((pcb_search_screen(x, y, PCB_OBJ_SUBC, &ptrtmp, &ptrtmp, &ptrtmp)) != PCB_OBJ_VOID) s = (pcb_subc_t *)ptrtmp; else { @@ -400,7 +401,7 @@ int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); if ((type = pcb_search_screen(x, y, PCB_MOVETOLAYER_TYPES | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { pcb_layer_t *target = CURRENT; pcb_any_obj_t *o = ptr2; Index: trunk/src/polygon_act.c =================================================================== --- trunk/src/polygon_act.c (revision 17327) +++ trunk/src/polygon_act.c (revision 17328) @@ -46,6 +46,7 @@ #include "crosshair.h" #include "compat_nls.h" #include "tool.h" +#include "hid_actions.h" #include "obj_poly.h" @@ -75,7 +76,7 @@ int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); if ((type = pcb_search_screen(x, y, PCB_OBJ_POLY, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { pcb_poly_morph((pcb_layer_t *) ptr1, (pcb_poly_t *) ptr3); pcb_draw(); Index: trunk/src/rats_act.c =================================================================== --- trunk/src/rats_act.c (revision 17327) +++ trunk/src/rats_act.c (revision 17328) @@ -44,6 +44,7 @@ #include "funchash_core.h" #include "compat_nls.h" #include "obj_rat.h" +#include "hid_actions.h" #include "rats.h" #include "draw.h" @@ -157,7 +158,7 @@ switch (pcb_funchash_get(function, NULL)) { case F_Find: { - pcb_gui->get_coords(_("Click on a connection"), &x, &y); + pcb_hid_get_coords(_("Click on a connection"), &x, &y); pcb_lookup_conn(x, y, pcb_true, 1, PCB_FLAG_FOUND); break; } Index: trunk/src/remove_act.c =================================================================== --- trunk/src/remove_act.c (revision 17327) +++ trunk/src/remove_act.c (revision 17328) @@ -34,6 +34,7 @@ #include "config.h" #include "data.h" #include "action_helper.h" +#include "hid_actions.h" #include "tool.h" #include "remove.h" #include "board.h" @@ -61,7 +62,7 @@ switch (id) { case F_Object: - pcb_gui->get_coords("Click on object to delete", &pcb_tool_note.X, &pcb_tool_note.Y); + pcb_hid_get_coords("Click on object to delete", &pcb_tool_note.X, &pcb_tool_note.Y); pcb_tool_save(); pcb_tool_select_by_id(PCB_MODE_REMOVE); pcb_notify_mode(); Index: trunk/src/select_act.c =================================================================== --- trunk/src/select_act.c (revision 17327) +++ trunk/src/select_act.c (revision 17328) @@ -50,7 +50,9 @@ #include "hid_attrib.h" #include "compat_misc.h" #include "compat_nls.h" +#include "hid_actions.h" + static const char pcb_acts_Select[] = "Select(Object|ToggleObject)\n" "Select(All|Block|Connection)\n" @@ -145,7 +147,7 @@ pcb_tool_note.Buffer = conf_core.editor.buffer_number; pcb_buffer_set_number(PCB_MAX_BUFFER - 1); pcb_buffer_clear(PCB, PCB_PASTEBUFFER); - pcb_gui->get_coords(_("Select the Subcircuit's Origin (mark) Location"), &x, &y); + pcb_hid_get_coords(_("Select the Subcircuit's Origin (mark) Location"), &x, &y); x = pcb_grid_fit(x, PCB->Grid, PCB->GridOffsetX); y = pcb_grid_fit(y, PCB->Grid, PCB->GridOffsetY); pcb_buffer_add_selected(PCB, PCB_PASTEBUFFER, x, y, pcb_true); Index: trunk/src_plugins/diag/diag.c =================================================================== --- trunk/src_plugins/diag/diag.c (revision 17327) +++ trunk/src_plugins/diag/diag.c (revision 17328) @@ -422,7 +422,7 @@ const char *new_color = PCB_ACTION_ARG(0); - pcb_gui->get_coords("Click on object to change", &x, &y); + pcb_hid_get_coords("Click on object to change", &x, &y); if ((type = pcb_search_screen(x, y, PCB_FORCECOLOR_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID){ strncpy(((pcb_any_obj_t *)ptr2)->override_color, new_color, sizeof(((pcb_any_obj_t *)ptr2)->override_color)-1); Index: trunk/src_plugins/dialogs/dlg_flag_edit.c =================================================================== --- trunk/src_plugins/dialogs/dlg_flag_edit.c (revision 17327) +++ trunk/src_plugins/dialogs/dlg_flag_edit.c (revision 17328) @@ -85,7 +85,7 @@ if ((argc == 0) || (pcb_strcasecmp(argv[0], "object") == 0)) { void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords("Click on object to change flags of", &x, &y); + pcb_hid_get_coords("Click on object to change flags of", &x, &y); type = pcb_search_screen(x, y, PCB_FLAGEDIT_TYPES | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3); ctx.ptr1 = ptr1; ctx.obj = (pcb_any_obj_t *)ptr2; Index: trunk/src_plugins/dialogs/dlg_layer_binding.c =================================================================== --- trunk/src_plugins/dialogs/dlg_layer_binding.c (revision 17327) +++ trunk/src_plugins/dialogs/dlg_layer_binding.c (revision 17328) @@ -199,7 +199,7 @@ if ((argc == 0) || (pcb_strcasecmp(argv[0], "object") == 0)) { int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords("Click on object to change size of", &x, &y); + pcb_hid_get_coords("Click on object to change size of", &x, &y); type = pcb_search_screen(x, y, PCB_OBJ_SUBC, &ptr1, &ptr2, &ptr3); if (type != PCB_OBJ_SUBC) { pcb_message(PCB_MSG_ERROR, "No subc under the cursor\n"); Index: trunk/src_plugins/dialogs/dlg_padstack.c =================================================================== --- trunk/src_plugins/dialogs/dlg_padstack.c (revision 17327) +++ trunk/src_plugins/dialogs/dlg_padstack.c (revision 17328) @@ -591,7 +591,7 @@ if ((argc == 0) || (pcb_strcasecmp(argv[0], "object") == 0)) { void *ptr1, *ptr2 = NULL, *ptr3; long type; - pcb_gui->get_coords("Click on a padstack to edit", &x, &y); + pcb_hid_get_coords("Click on a padstack to edit", &x, &y); type = pcb_search_screen(x, y, PCB_OBJ_PSTK | PCB_OBJ_SUBC_PART | PCB_LOOSE_SUBC, &ptr1, &ptr2, &ptr3); if (type != PCB_OBJ_PSTK) { pcb_message(PCB_MSG_ERROR, "Need a padstack.\n"); Index: trunk/src_plugins/extedit/extedit.c =================================================================== --- trunk/src_plugins/extedit/extedit.c (revision 17327) +++ trunk/src_plugins/extedit/extedit.c (revision 17328) @@ -179,7 +179,7 @@ /* pick up the object to edit */ if ((argc == 0) || (pcb_strcasecmp(argv[0], "object") == 0)) { - pcb_gui->get_coords("Click on object to edit", &x, &y); + pcb_hid_get_coords("Click on object to edit", &x, &y); type = pcb_search_screen(x, y, EXTEDIT_TYPES, &ptr1, &ptr2, &ptr3); } else if ((argc > 0) && (pcb_strcasecmp(argv[0], "selected") == 0)) { Index: trunk/src_plugins/hid_lesstif/dialogs.c =================================================================== --- trunk/src_plugins/hid_lesstif/dialogs.c (revision 17327) +++ trunk/src_plugins/hid_lesstif/dialogs.c (revision 17328) @@ -1692,7 +1692,7 @@ if (pcb_strcasecmp(argv[0], "Object") == 0) { int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); if ((type = pcb_search_screen(x, y, PCB_CHANGENAME_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { /* pcb_undo_save_serial();*/ lesstif_show_fontsel_edit(ptr1, ptr2, type); Index: trunk/src_plugins/hid_lesstif/menu.c =================================================================== --- trunk/src_plugins/hid_lesstif/menu.c (revision 17327) +++ trunk/src_plugins/hid_lesstif/menu.c (revision 17328) @@ -55,7 +55,7 @@ static int pcb_act_GetXY(int argc, const char **argv, pcb_coord_t x, pcb_coord_t y) { - pcb_gui->get_coords(argv[0], &x, &y); + pcb_hid_get_coords(argv[0], &x, &y); return 0; } Index: trunk/src_plugins/import_sch/import_sch.c =================================================================== --- trunk/src_plugins/import_sch/import_sch.c (revision 17327) +++ trunk/src_plugins/import_sch/import_sch.c (revision 17328) @@ -221,7 +221,7 @@ units = PCB_ACTION_ARG(3); if (!xs) { - pcb_gui->get_coords(_("Click on a location"), &x, &y); + pcb_hid_get_coords(_("Click on a location"), &x, &y); } else if (pcb_strcasecmp(xs, "center") == 0) { pcb_attrib_remove(PCB, "import::newX"); Index: trunk/src_plugins/lib_gtk_hid/actions.c =================================================================== --- trunk/src_plugins/lib_gtk_hid/actions.c (revision 17327) +++ trunk/src_plugins/lib_gtk_hid/actions.c (revision 17328) @@ -92,7 +92,7 @@ if (pcb_strcasecmp(argv[0], "Object") == 0) { int type; void *ptr1, *ptr2, *ptr3; - pcb_gui->get_coords(_("Select an Object"), &x, &y); + pcb_hid_get_coords(_("Select an Object"), &x, &y); if ((type = pcb_search_screen(x, y, PCB_CHANGENAME_TYPES, &ptr1, &ptr2, &ptr3)) != PCB_OBJ_VOID) { /* pcb_undo_save_serial();*/ pcb_gtk_dlg_fontsel(&ghidgui->common, ptr1, ptr2, type, 1); @@ -296,7 +296,7 @@ { pcb_objtype_t type; void *o1, *o2, *o3; - pcb_gui->get_coords("context sensitive popup: select object", &x, &y); + pcb_hid_get_coords("context sensitive popup: select object", &x, &y); type = pcb_search_screen(x, y, PCB_OBJ_CLASS_REAL, &o1, &o2, &o3); if (type == 0) @@ -475,7 +475,7 @@ static int pcb_act_GetXY(int argc, const char **argv, pcb_coord_t x, pcb_coord_t y) { - pcb_gui->get_coords(argv[0], &x, &y); + pcb_hid_get_coords(argv[0], &x, &y); return 0; } Index: trunk/src_plugins/lib_polyhelp/topoly.c =================================================================== --- trunk/src_plugins/lib_polyhelp/topoly.c (revision 17327) +++ trunk/src_plugins/lib_polyhelp/topoly.c (revision 17328) @@ -40,6 +40,7 @@ #include "polygon.h" #include "search.h" #include "hid.h" +#include "hid_actions.h" #define VALID_TYPE(obj) (((obj)->type == PCB_OBJ_ARC) || ((obj)->type == PCB_OBJ_LINE)) #define CONT_TYPE (PCB_OBJ_LINE | PCB_OBJ_ARC) @@ -320,7 +321,7 @@ void *r1, *r2, *r3; if (argc == 0) { - pcb_gui->get_coords("Click on a line or arc of the contour loop", &x, &y); + pcb_hid_get_coords("Click on a line or arc of the contour loop", &x, &y); if (pcb_search_screen(x, y, CONT_TYPE, &r1, &r2, &r3) == 0) { pcb_message(PCB_MSG_ERROR, "ToPoly(): failed to find a line or arc there\n"); return 1; Index: trunk/src_plugins/report/report.c =================================================================== --- trunk/src_plugins/report/report.c (revision 17327) +++ trunk/src_plugins/report/report.c (revision 17328) @@ -599,7 +599,7 @@ int type; pcb_coord_t ox, oy; - pcb_gui->get_coords("Click on a copper line", &x, &y); + pcb_hid_get_coords("Click on a copper line", &x, &y); type = pcb_search_screen(x, y, PCB_OBJ_LINE, &r1, &r2, &r3); if (type != PCB_OBJ_LINE) { @@ -643,7 +643,7 @@ return 0; } else { -/* pcb_gui->get_coords("Click on a connection", &x, &y);*/ +/* pcb_hid_get_coords("Click on a connection", &x, &y);*/ return report_net_length_(argc, argv, x, y); } } @@ -793,11 +793,11 @@ if ((argc < 1) || (argc > 2)) AUSAGE(report); else if (pcb_strcasecmp(argv[0], "Object") == 0) { - pcb_gui->get_coords("Click on an object", &x, &y); + pcb_hid_get_coords("Click on an object", &x, &y); return pcb_act_report_dialog(argc, argv, x, y); } else if (pcb_strncasecmp(argv[0], "Subc", 4) == 0) { - pcb_gui->get_coords("Click on a subcircuit", &x, &y); + pcb_hid_get_coords("Click on a subcircuit", &x, &y); return pcb_act_report_dialog(argc, argv, x, y); } else if (pcb_strcasecmp(argv[0], "DrillReport") == 0) Index: trunk/src_plugins/shape/shape.c =================================================================== --- trunk/src_plugins/shape/shape.c (revision 17327) +++ trunk/src_plugins/shape/shape.c (revision 17328) @@ -361,7 +361,7 @@ } if ((data == PCB->Data) && (!have_coords)) - pcb_gui->get_coords("Click on the center of the polygon", &x, &y); + pcb_hid_get_coords("Click on the center of the polygon", &x, &y); if (regpoly_place(data, CURRENT, corners, rx, ry, rot, x, y) == NULL) pcb_message(PCB_MSG_ERROR, "regpoly(): failed to create the polygon\n"); @@ -423,7 +423,7 @@ } if ((data == PCB->Data) && (!have_coords)) - pcb_gui->get_coords("Click on the center of the polygon", &x, &y); + pcb_hid_get_coords("Click on the center of the polygon", &x, &y); if (roundrect_place(data, CURRENT, w, h, rx, ry, rot, x, y) == NULL) pcb_message(PCB_MSG_ERROR, "roundrect(): failed to create the polygon\n"); @@ -465,7 +465,7 @@ } if ((data == PCB->Data) && (!have_coords)) - pcb_gui->get_coords("Click on the center of the circle", &x, &y); + pcb_hid_get_coords("Click on the center of the circle", &x, &y); if (circle_place(PCB->Data, CURRENT, dia, x, y) == NULL) pcb_message(PCB_MSG_ERROR, "circle(): failed to create the polygon\n");