Index: trunk/src/tool_logic.h =================================================================== --- trunk/src/tool_logic.h (revision 32954) +++ trunk/src/tool_logic.h (revision 32955) @@ -28,7 +28,8 @@ #define PCB_TOOL_LOGIC_H typedef enum { /* bitfield */ - PCB_TLF_RAT = 1 /* tool can be used on the rat layer */ + PCB_TLF_RAT = 1, /* tool can be used on the rat layer */ + PCB_TLF_EDIT = 2 /* tool can edit the geometry of existing objects */ } pcb_tool_user_flags_t; void pcb_tool_logic_init(void); Index: trunk/src_plugins/tool_std/tool_arrow.c =================================================================== --- trunk/src_plugins/tool_std/tool_arrow.c (revision 32954) +++ trunk/src_plugins/tool_std/tool_arrow.c (revision 32955) @@ -292,5 +292,5 @@ NULL, NULL, /* escape */ - PCB_TLF_RAT + PCB_TLF_RAT | PCB_TLF_EDIT }; Index: trunk/src_plugins/tool_std/tool_insert.c =================================================================== --- trunk/src_plugins/tool_std/tool_insert.c (revision 32954) +++ trunk/src_plugins/tool_std/tool_insert.c (revision 32955) @@ -39,6 +39,7 @@ #include "insert.h" #include "polygon.h" #include "search.h" +#include "tool_logic.h" #include @@ -199,5 +200,5 @@ NULL, NULL, /* escape */ - 0 + PCB_TLF_EDIT }; Index: trunk/src_plugins/tool_std/tool_remove.c =================================================================== --- trunk/src_plugins/tool_std/tool_remove.c (revision 32954) +++ trunk/src_plugins/tool_std/tool_remove.c (revision 32955) @@ -128,5 +128,5 @@ NULL, NULL, /* escape */ - PCB_TLF_RAT + PCB_TLF_RAT | PCB_TLF_EDIT }; Index: trunk/src_plugins/tool_std/tool_rotate.c =================================================================== --- trunk/src_plugins/tool_std/tool_rotate.c (revision 32954) +++ trunk/src_plugins/tool_std/tool_rotate.c (revision 32955) @@ -40,6 +40,7 @@ #include "rotate.h" #include #include "crosshair.h" +#include "tool_logic.h" void pcb_tool_rotate_notify_mode(rnd_hidlib_t *hl) @@ -107,5 +108,5 @@ NULL, NULL, /* escape */ - 0 + PCB_TLF_EDIT };