Horizon
tool_place_board_hole.hpp
1#pragma once
2#include "core/tool.hpp"
3
4namespace horizon {
6public:
7 using ToolBase::ToolBase;
8 ToolResponse begin(const ToolArgs &args) override;
9 ToolResponse update(const ToolArgs &args) override;
10 bool can_begin() override;
11 std::set<InToolActionID> get_actions() const override
12 {
13 using I = InToolActionID;
14 return {
15 I::LMB,
16 I::CANCEL,
17 I::RMB,
18 };
19 }
20
21private:
22 const class Padstack *padstack = nullptr;
23 class BoardHole *temp = nullptr;
24 void create_hole(const Coordi &c);
25};
26} // namespace horizon
Definition: board_hole.hpp:12
Definition: padstack.hpp:19
This is what a Tool receives when the user did something.
Definition: tool_pub.hpp:23
Common interface for all Tools.
Definition: tool_pub.hpp:94
Definition: tool_place_board_hole.hpp:5
ToolResponse update(const ToolArgs &args) override
Gets called whenever the user generated some sort of input.
Definition: tool_place_board_hole.cpp:44
ToolResponse begin(const ToolArgs &args) override
Gets called right after the constructor has finished.
Definition: tool_place_board_hole.cpp:15
bool can_begin() override
Definition: tool_place_board_hole.cpp:10
To signal back to the core what the Tool did, a Tool returns a ToolResponse.
Definition: tool_pub.hpp:40