class Manipulator
{
-public:
- sigc::signal<void, const std::string &> signal_status;
- sigc::signal<void, bool> signal_done;
-
- Manipulator(Designer &);
- void set_selection(Selection *);
- void start_move();
- void start_rotate();
- void start_elevate();
- void duplicate();
- void flatten();
- void even_slope(bool =false);
- void cancel();
- void button_press(int, int, float, float, unsigned);
- void pointer_motion(int, int, float, float);
- void render();
private:
enum Mode
{
std::set<Marklin::Track *> neighbors;
sigc::connection selection_changed_conn;
+public:
+ sigc::signal<void, const std::string &> signal_status;
+ sigc::signal<void, bool> signal_done;
+
+ Manipulator(Designer &);
+
+ void set_selection(Selection *);
+ void start_move();
+ void start_rotate();
+ void start_elevate();
+ void duplicate();
+ void flatten();
+ void even_slope(bool =false);
+ void cancel();
+ void button_press(int, int, float, float, unsigned);
+ void pointer_motion(int, int, float, float);
+ void render();
+private:
void selection_changed();
void update_wrap();
void update_neighbors();