3 #include "common/lut.hpp"
10 AVAILABLE_IN_SYMBOL = (1 << 0),
11 AVAILABLE_IN_SCHEMATIC = (1 << 1),
12 AVAILABLE_IN_PADSTACK = (1 << 2),
13 AVAILABLE_IN_PACKAGE = (1 << 3),
14 AVAILABLE_IN_BOARD = (1 << 4),
15 AVAILABLE_IN_FRAME = (1 << 5),
16 AVAILABLE_EVERYWHERE = 0xff,
17 AVAILABLE_LAYERED = AVAILABLE_IN_PACKAGE | AVAILABLE_IN_PADSTACK | AVAILABLE_IN_BOARD,
18 AVAILABLE_IN_PACKAGE_AND_BOARD = AVAILABLE_IN_PACKAGE | AVAILABLE_IN_BOARD,
19 AVAILABLE_IN_SCHEMATIC_AND_BOARD = AVAILABLE_IN_SCHEMATIC | AVAILABLE_IN_BOARD
24 FLAGS_IN_TOOL = (1 << 1),
25 FLAGS_NO_POPOVER = (1 << 2),
26 FLAGS_NO_MENU = (1 << 3),
27 FLAGS_SPECIFIC = (1 << 4),
28 FLAGS_NO_PREFERENCES = (1 << 5),
31 ActionCatalogItem(
const std::string &n, ActionGroup gr,
int av,
int fl = FLAGS_DEFAULT)
32 : name(n), group(gr), flags(static_cast<Flags>(fl)), availability(static_cast<Availability>(av)){};
34 const std::string name;
37 const Availability availability;
40 extern const std::map<std::pair<ActionID, ToolID>,
ActionCatalogItem> action_catalog;
44 extern const std::vector<std::pair<ActionGroup, std::string>> action_group_catalog;