Index: trunk/src/dolists.h =================================================================== --- trunk/src/dolists.h (revision 27949) +++ trunk/src/dolists.h (revision 27950) @@ -1,6 +1,5 @@ #undef PCB_REGISTER_ACTIONS -#undef PCB_REGISTER_ATTRIBUTES #define PCB_REGISTER_ACTIONS(a, cookie) {extern void PCB_HIDCONCAT(register_,a)();PCB_HIDCONCAT(register_,a)();} -#define PCB_REGISTER_ATTRIBUTES(a, cookie) {extern void PCB_HIDCONCAT(register_,a)();PCB_HIDCONCAT(register_,a)();} + Index: trunk/src/hid_attrib.h =================================================================== --- trunk/src/hid_attrib.h (revision 27949) +++ trunk/src/hid_attrib.h (revision 27950) @@ -118,8 +118,6 @@ after the export because pcb-rnd exits. Cam or dialog box direct exporting won't go through this. */ extern void pcb_export_register_opts(pcb_export_opt_t *, int, const char *cookie, int copy); -#define PCB_REGISTER_ATTRIBUTES(a, cookie) PCB_HIDCONCAT(void register_,a) ()\ -{ pcb_export_register_opts(a, sizeof(a)/sizeof(a[0]), cookie, 0); } /* Remove all attributes registered with the given cookie */ void pcb_export_remove_opts_by_cookie(const char *cookie); Index: trunk/src_plugins/export_dsn/dsn.c =================================================================== --- trunk/src_plugins/export_dsn/dsn.c (revision 27949) +++ trunk/src_plugins/export_dsn/dsn.c (revision 27950) @@ -103,7 +103,6 @@ }; #define NUM_OPTIONS (sizeof(dsn_options)/sizeof(dsn_options[0])) -PCB_REGISTER_ATTRIBUTES(dsn_options, dsn_cookie) static pcb_hid_attr_val_t dsn_values[NUM_OPTIONS]; Index: trunk/src_plugins/export_dxf/dxf.c =================================================================== --- trunk/src_plugins/export_dxf/dxf.c (revision 27949) +++ trunk/src_plugins/export_dxf/dxf.c (revision 27950) @@ -195,8 +195,6 @@ #define NUM_OPTIONS (sizeof(dxf_attribute_list)/sizeof(dxf_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(dxf_attribute_list, dxf_cookie) - static pcb_hid_attr_val_t dxf_values[NUM_OPTIONS]; static pcb_export_opt_t *dxf_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_fidocadj/fidocadj.c =================================================================== --- trunk/src_plugins/export_fidocadj/fidocadj.c (revision 27949) +++ trunk/src_plugins/export_fidocadj/fidocadj.c (revision 27950) @@ -79,8 +79,6 @@ #define NUM_OPTIONS (sizeof(fidocadj_attribute_list)/sizeof(fidocadj_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(fidocadj_attribute_list, fidocadj_cookie) - static pcb_hid_attr_val_t fidocadj_values[NUM_OPTIONS]; static pcb_export_opt_t *fidocadj_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_gcode/gcode.c =================================================================== --- trunk/src_plugins/export_gcode/gcode.c (revision 27949) +++ trunk/src_plugins/export_gcode/gcode.c (revision 27950) @@ -188,8 +188,7 @@ #define NUM_OPTIONS (sizeof(gcode_attribute_list)/sizeof(gcode_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(gcode_attribute_list, gcode_cookie) - static pcb_hid_attr_val_t gcode_values[NUM_OPTIONS]; +static pcb_hid_attr_val_t gcode_values[NUM_OPTIONS]; /* *** Utility funcions **************************************************** */ Index: trunk/src_plugins/export_openems/export_openems.c =================================================================== --- trunk/src_plugins/export_openems/export_openems.c (revision 27949) +++ trunk/src_plugins/export_openems/export_openems.c (revision 27950) @@ -154,8 +154,6 @@ #define NUM_OPTIONS (sizeof(openems_attribute_list)/sizeof(openems_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(openems_attribute_list, openems_cookie) - static pcb_hid_attr_val_t openems_values[NUM_OPTIONS]; static pcb_export_opt_t *openems_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_openscad/export_openscad.c =================================================================== --- trunk/src_plugins/export_openscad/export_openscad.c (revision 27949) +++ trunk/src_plugins/export_openscad/export_openscad.c (revision 27950) @@ -127,8 +127,6 @@ #include "scad_draw.c" #include "scad_models.c" -PCB_REGISTER_ATTRIBUTES(openscad_attribute_list, openscad_cookie) - static pcb_hid_attr_val_t openscad_values[NUM_OPTIONS]; static pcb_export_opt_t *openscad_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_png/png.c =================================================================== --- trunk/src_plugins/export_png/png.c (revision 27949) +++ trunk/src_plugins/export_png/png.c (revision 27950) @@ -373,8 +373,6 @@ #define NUM_OPTIONS (sizeof(png_attribute_list)/sizeof(png_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(png_attribute_list, png_cookie) - static pcb_hid_attr_val_t png_values[NUM_OPTIONS]; static const char *get_file_suffix(void) Index: trunk/src_plugins/export_ps/eps.c =================================================================== --- trunk/src_plugins/export_ps/eps.c (revision 27949) +++ trunk/src_plugins/export_ps/eps.c (revision 27950) @@ -115,8 +115,6 @@ #define NUM_OPTIONS (sizeof(eps_attribute_list)/sizeof(eps_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(eps_attribute_list, ps_cookie) - static pcb_hid_attr_val_t eps_values[NUM_OPTIONS]; static pcb_export_opt_t *eps_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_ps/ps.c =================================================================== --- trunk/src_plugins/export_ps/ps.c (revision 27949) +++ trunk/src_plugins/export_ps/ps.c (revision 27950) @@ -293,8 +293,6 @@ #define NUM_OPTIONS (sizeof(ps_attribute_list)/sizeof(ps_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(ps_attribute_list, ps_cookie) - /* All file-scope data is in global struct */ static struct { double calibration_x, calibration_y; Index: trunk/src_plugins/export_stat/stat.c =================================================================== --- trunk/src_plugins/export_stat/stat.c (revision 27949) +++ trunk/src_plugins/export_stat/stat.c (revision 27950) @@ -108,8 +108,6 @@ #define NUM_OPTIONS (sizeof(stat_attribute_list)/sizeof(stat_attribute_list[0])) -PCB_REGISTER_ATTRIBUTES(stat_attribute_list, stat_cookie) - static pcb_hid_attr_val_t stat_values[NUM_OPTIONS]; static pcb_export_opt_t *stat_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_svg/svg.c =================================================================== --- trunk/src_plugins/export_svg/svg.c (revision 27949) +++ trunk/src_plugins/export_svg/svg.c (revision 27950) @@ -192,9 +192,6 @@ y = PCB->hidlib.size_y - y; \ } while(0) - -PCB_REGISTER_ATTRIBUTES(svg_attribute_list, svg_cookie) - static pcb_hid_attr_val_t svg_values[NUM_OPTIONS]; static pcb_export_opt_t *svg_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/export_vfs_mc/export_vfs_mc.c =================================================================== --- trunk/src_plugins/export_vfs_mc/export_vfs_mc.c (revision 27949) +++ trunk/src_plugins/export_vfs_mc/export_vfs_mc.c (revision 27950) @@ -36,8 +36,6 @@ #define NUM_OPTIONS (sizeof(export_vfs_mc_options)/sizeof(export_vfs_mc_options[0])) -PCB_REGISTER_ATTRIBUTES(export_vfs_mc_options, export_vfs_mc_cookie) - static pcb_hid_attr_val_t export_vfs_mc_values[NUM_OPTIONS]; static pcb_export_opt_t *export_vfs_mc_get_export_options(pcb_hid_t *hid, int *n) Index: trunk/src_plugins/hid_lesstif/main.c =================================================================== --- trunk/src_plugins/hid_lesstif/main.c (revision 27949) +++ trunk/src_plugins/hid_lesstif/main.c (revision 27950) @@ -281,7 +281,6 @@ TODO("menu: pcb-menu should be generic and not depend on the HID") -PCB_REGISTER_ATTRIBUTES(lesstif_attribute_list, lesstif_cookie) static int lesstif_direct = 0; static pcb_composite_op_t lesstif_drawing_mode = 0; @@ -3145,7 +3144,7 @@ static void lesstif_reg_attrs(void) { if (!lesstif_attrs_regd) - PCB_REGISTER_ATTRIBUTES(lesstif_attribute_list, lesstif_cookie) + pcb_export_register_opts(lesstif_attribute_list, sizeof(lesstif_attribute_list)/sizeof(lesstif_attribute_list[0]), lesstif_cookie, 0); lesstif_attrs_regd = 1; } Index: trunk/src_plugins/loghid/loghid.c =================================================================== --- trunk/src_plugins/loghid/loghid.c (revision 27949) +++ trunk/src_plugins/loghid/loghid.c (revision 27950) @@ -100,8 +100,6 @@ return 0; } -PCB_REGISTER_ATTRIBUTES(loghid_attribute_list, loghid_cookie) - static pcb_export_opt_t *loghid_get_export_options(pcb_hid_t *hid, int *n) { /* loghid_attribute_list[HA_psfile] = pcb_strdup("default?");*/