3 This file is part of the MSP Märklin suite
4 Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
5 Distributed under the GPL
11 #include <sigc++/sigc++.h>
30 Marklin::Track *track;
34 MTrack(Marklin::Track *);
39 Marklin::Track *track;
42 TrackOrder(Marklin::Track *t, bool r): track(t), rev(r) { }
55 std::vector<MTrack> tracks;
56 Marklin::Point center;
58 std::list<TrackWrap> wrap;
59 Marklin::Point wrap_pos;
62 Marklin::Point gpointer;
65 Marklin::Point move_origin;
69 std::set<Marklin::Track *> neighbors;
70 sigc::connection selection_changed_conn;
73 sigc::signal<void, const std::string &> signal_status;
74 sigc::signal<void, bool> signal_done;
76 Manipulator(Designer &);
78 void set_selection(Selection *);
84 void even_slope(bool =false);
86 void button_press(int, int, float, float, unsigned);
87 void pointer_motion(int, int, float, float);
90 void selection_changed();
92 void update_neighbors();
93 void set_slope(TrackOrder &, float, float);