Horizon
tool_edit_plane.hpp
1 #pragma once
2 #include "tool_helper_edit_plane.hpp"
3 
4 namespace horizon {
5 class ToolEditPlane : public virtual ToolBase, private ToolHelperEditPlane {
6 public:
7  using ToolBase::ToolBase;
8  ToolResponse begin(const ToolArgs &args) override;
9  ToolResponse update(const ToolArgs &args) override;
10  bool can_begin() override;
11  bool is_specific() override
12  {
13  return true;
14  }
15  std::set<InToolActionID> get_actions() const override
16  {
17  using I = InToolActionID;
18  return {I::LMB, I::RMB};
19  }
20 
21 private:
22  class Polygon *get_poly();
23 };
24 } // namespace horizon
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_edit_plane.hpp:5
bool is_specific() override
Definition: tool_edit_plane.hpp:11
ToolResponse update(const ToolArgs &args) override
Gets called whenever the user generated some sort of input.
Definition: tool_edit_plane.cpp:89
ToolResponse begin(const ToolArgs &args) override
Gets called right after the constructor has finished.
Definition: tool_edit_plane.cpp:56
bool can_begin() override
Definition: tool_edit_plane.cpp:35
Definition: tool_helper_edit_plane.hpp:5
To signal back to the core what the Tool did, a Tool returns a ToolResponse.
Definition: tool_pub.hpp:40