Index: Plug.tmpasm =================================================================== --- Plug.tmpasm (revision 32206) +++ Plug.tmpasm (revision 32207) @@ -12,6 +12,8 @@ $(PLUGDIR)/io_tedax/tetest.o $(PLUGDIR)/io_tedax/parse.o @] +put /local/pcb/mod/MENUFILE {tedax-menu.lht} +put /local/pcb/mod/MENUVAR {tedax_menu} put /local/pcb/mod/SPHASH {$(PLUGDIR)/io_tedax/tdrc_keys.sphash} put /local/pcb/mod/SPHASH_ARGS {--multi} Index: io_tedax.c =================================================================== --- io_tedax.c (revision 32206) +++ io_tedax.c (revision 32207) @@ -42,6 +42,7 @@ #include #include #include +#include #include "plug_io.h" #include "stackup.h" #include "tlayer.h" @@ -51,6 +52,8 @@ #include "tetest.h" #include "tnetlist.h" +#include "menu_internal.c" + static const char *tedax_cookie = "tEDAx IO"; static pcb_plug_io_t io_tedax; @@ -298,6 +301,7 @@ tedax_etest_uninit(); RND_HOOK_UNREGISTER(pcb_plug_io_t, pcb_plug_io_chain, &io_tedax); pcb_tedax_net_uninit(); + rnd_hid_menu_unload(rnd_gui, tedax_cookie); } int pplg_init_io_tedax(void) @@ -330,6 +334,6 @@ RND_REGISTER_ACTIONS(tedax_action_list, tedax_cookie) pcb_tedax_net_init(); - + rnd_hid_menu_load(rnd_gui, NULL, tedax_cookie, 195, NULL, 0, tedax_menu, "plugin: io_tedax"); return 0; } Index: tedax-menu.lht =================================================================== --- tedax-menu.lht (nonexistent) +++ tedax-menu.lht (revision 32207) @@ -0,0 +1,9 @@ +ha:rnd-menu-v1 { + li:anchored { + ha:@import_top { + li:submenu { + ha:Import tEDAx schematics = { action=LoadTedaxFrom(netlist) } + } + } + } +} \ No newline at end of file