Index: Plug.tmpasm =================================================================== --- Plug.tmpasm (revision 32951) +++ Plug.tmpasm (revision 32952) @@ -2,6 +2,8 @@ put /local/pcb/mod/CONF {$(PLUGDIR)/ch_editpoint/ch_editpoint_conf.h} put /local/pcb/mod/CONFFILE {ch_editpoint.conf} put /local/pcb/mod/CONFVAR {ch_editpoint_conf_internal} +put /local/pcb/mod/MENUFILE {ch_editpoint-menu.lht} +put /local/pcb/mod/MENUVAR {ch_editpoint_menu} put /local/pcb/mod/OBJS [@ $(PLUGDIR)/ch_editpoint/ch_editpoint.o @] Index: ch_editpoint-menu.lht =================================================================== --- ch_editpoint-menu.lht (nonexistent) +++ ch_editpoint-menu.lht (revision 32952) @@ -0,0 +1,9 @@ +ha:rnd-menu-v1 { + li:anchored { + ha:@indications { + li:submenu { + ha:Indicate edit points on hover = { a={m; d; e}; checked=plugins/ch_editpoint/enable; action=conf(toggle, plugins/ch_editpoint/enable, design) } + } + } + } +} \ No newline at end of file Index: ch_editpoint.c =================================================================== --- ch_editpoint.c (revision 32951) +++ ch_editpoint.c (revision 32952) @@ -36,6 +36,7 @@ #include #include #include +#include #include "board.h" #include "conf_core.h" #include "crosshair.h" @@ -45,7 +46,9 @@ #include "polygon.h" #include "search.h" #include "../src_plugins/ch_editpoint/ch_editpoint_conf.h" + #include "../src_plugins/ch_editpoint/conf_internal.c" +#include "../src_plugins/ch_editpoint/menu_internal.c" conf_ch_editpoint_t conf_ch_editpoint; #define CH_EDITPOINT_CONF_FN "ch_editpoint.conf" @@ -157,6 +160,7 @@ vtp0_uninit(old_editpoint_objs); rnd_conf_unreg_file(CH_EDITPOINT_CONF_FN, ch_editpoint_conf_internal); + rnd_hid_menu_unload(rnd_gui, pcb_ch_editpoint_cookie); rnd_conf_unreg_fields("plugins/ch_editpoint/"); } @@ -171,5 +175,7 @@ rnd_event_bind(PCB_EVENT_CROSSHAIR_NEW_POS, pcb_ch_editpoint, NULL, pcb_ch_editpoint_cookie); + rnd_hid_menu_load(rnd_gui, NULL, pcb_ch_editpoint_cookie, 100, NULL, 0, ch_editpoint_menu, "plugin: ch_editpoint"); + return 0; }