2 #include "core/tool.hpp"
3 #include "tool_helper_merge.hpp"
4 #include "tool_helper_draw_net_setting.hpp"
8 class ToolDrawLineNet :
public ToolHelperMerge,
public ToolHelperDrawNetSetting {
10 ToolDrawLineNet(IDocument *c, ToolID tid);
15 std::set<InToolActionID> get_actions()
const override
17 using I = InToolActionID;
25 I::ARBITRARY_ANGLE_MODE,
26 I::NET_LABEL_SIZE_INC,
27 I::NET_LABEL_SIZE_DEC,
35 class Junction *temp_junc_head = 0;
36 Junction *temp_junc_mid = 0;
37 class LineNet *temp_line_head = 0;
38 class LineNet *temp_line_mid = 0;
39 class NetLabel *net_label =
nullptr;
40 enum class BendMode { XY, YX, ARB };
41 BendMode bend_mode = BendMode::XY;
42 void move_temp_junc(
const Coordi &c);
44 void restart(
const Coordi &c);
46 class Component *component_floating =
nullptr;
47 UUIDPath<2> connpath_floating;
48 class SymbolPin *pin_start =
nullptr;
50 Junction *make_temp_junc(
const Coordi &c);
51 void apply_settings()
override;
52 void set_snap_filter();