Horizon
Loading...
Searching...
No Matches
renumber_pads_window.hpp
1#pragma once
2#include <gtkmm.h>
3#include <array>
4#include <set>
5#include "util/uuid.hpp"
6#include "tool_window.hpp"
7
8namespace horizon {
9
11public:
12 RenumberPadsWindow(Gtk::Window *parent, class ImpInterface *intf, class Package &pkg, const std::set<UUID> &pads);
13
14 const std::vector<class Pad *> &get_pads_sorted();
15 void renumber();
16
17private:
18 class Package &pkg;
19 std::set<class Pad *> pads;
20
21 bool circular = false;
22 bool x_first = true;
23 bool down = true;
24 bool right = true;
25 enum class Origin { TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT };
26 bool clockwise = false;
27 Origin circular_origin = Origin::TOP_LEFT;
28
29 Gtk::Entry *entry_prefix = nullptr;
30 Gtk::SpinButton *sp_start = nullptr;
31 Gtk::SpinButton *sp_step = nullptr;
32 std::set<Gtk::Widget *> widgets_circular;
33 std::set<Gtk::Widget *> widgets_axis;
34
35
36 std::vector<Pad *> pads_sorted;
37};
38} // namespace horizon
Definition imp_interface.hpp:12
Definition package.hpp:29
Definition renumber_pads_window.hpp:10
Definition tool_window.hpp:7