Horizon
Loading...
Searching...
No Matches
tool_helper_move.hpp
1#pragma once
2#include "core/tool.hpp"
3#include "tool_helper_restrict.hpp"
4
5namespace horizon {
6class ToolHelperMove : public virtual ToolBase, public ToolHelperRestrict {
7public:
8 using ToolBase::ToolBase;
9
10 static Orientation transform_orientation(Orientation orientation, bool rotate, bool reverse = false);
11
12protected:
13 void move_init(const Coordi &c);
14 void move_do(const Coordi &delta);
15 Coordi move_do_cursor(const Coordi &c);
16 void move_mirror_or_rotate(const Coordi &center, bool rotate);
17
18 Coordi get_delta() const;
19
20private:
21 Coordi last;
22 Coordi origin;
23};
24} // namespace horizon
Common interface for all Tools.
Definition tool_pub.hpp:94
Definition tool_helper_move.hpp:6
Definition tool_helper_restrict.hpp:6