#ifndef SLOPETOOL_H_
#define SLOPETOOL_H_
+#include "libr2c2/object.h"
+#include "libr2c2/trackiter.h"
#include "tool.h"
-#include "libr2c2/track.h"
class SlopeTool: public Tool
{
private:
- struct TrackOrder
- {
- R2C2::Track *track;
- bool rev;
-
- TrackOrder(R2C2::Track *t, bool r): track(t), rev(r) { }
- };
-
- std::list<R2C2::Track *> neighbors;
- std::list<TrackOrder> tracks;
+ std::list<R2C2::TrackIter> tracks;
float total_length;
public:
- SlopeTool(Designer &, Msp::Input::Mouse &, const std::set<R2C2::Object *> &);
+ SlopeTool(Designer &, Msp::Input::Keyboard &, Msp::Input::Mouse &, const std::set<R2C2::Object *> &);
void even_slope(bool =false);
void flatten();
private:
- void set_slope(TrackOrder &, float, const R2C2::Angle &);
+ void set_slope(const R2C2::TrackIter &, float, const R2C2::Angle &);
};
#endif