Horizon
imp_padstack.hpp
1 #pragma once
2 #include "imp_layer.hpp"
3 #include "core/core_padstack.hpp"
4 
5 namespace horizon {
6 class ImpPadstack : public ImpLayer {
7 public:
8  ImpPadstack(const std::string &symbol_filename, const std::string &pool_path);
9 
10 protected:
11  void construct() override;
12 
13  ActionCatalogItem::Availability get_editor_type_for_action() const override
14  {
15  return ActionCatalogItem::AVAILABLE_IN_PADSTACK;
16  };
17  ObjectType get_editor_type() const override
18  {
19  return ObjectType::PADSTACK;
20  }
21  std::pair<ActionID, ToolID> get_doubleclick_action(ObjectType type, const UUID &uu) override;
22 
23  std::map<ObjectType, SelectionFilterInfo> get_selection_filter_info() const override;
24 
25 private:
26  void canvas_update() override;
27  CorePadstack core_padstack;
28 };
29 } // namespace horizon
horizon::CorePadstack
Definition: core_padstack.hpp:11
horizon::ImpPadstack
Definition: imp_padstack.hpp:6
horizon::UUID
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16
horizon::ImpLayer
Definition: imp_layer.hpp:5