X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fdesigner%2Fextendtool.h;h=866d258a68e6e4f72b6ac5b1c99e187e2b909b82;hb=3907520897611cb1b5f2f938c60d3eaff34477a5;hp=979c9205ef7038ba907ef60498c74000b5700de1;hpb=678982e7ddb22bb5fd44ce448d1c5cbf646b2573;p=r2c2.git diff --git a/source/designer/extendtool.h b/source/designer/extendtool.h index 979c920..866d258 100644 --- a/source/designer/extendtool.h +++ b/source/designer/extendtool.h @@ -1,28 +1,31 @@ #ifndef EXTENDTOOL_H_ #define EXTENDTOOL_H_ +#include #include #include -#include "libr2c2/track.h" +#include "libr2c2/object.h" +#include "libr2c2/trackiter.h" #include "tool.h" class ExtendTool: public Tool { private: - std::set objects; + std::map types_by_length; + unsigned max_preference; + std::vector unlinked_endpoints; std::vector extend_tracks; - bool accepted; public: - ExtendTool(Designer &, Msp::Input::Mouse &, const std::set &); + ExtendTool(Designer &, Msp::Input::Keyboard &, Msp::Input::Mouse &, const std::set &); virtual ~ExtendTool(); void connect(); - virtual void button_press(unsigned); - virtual void axis_motion(unsigned, float, float); - private: + virtual void pointer_motion(); + virtual void finish(); + std::vector create_straight(const R2C2::Vector &, const R2C2::Angle &, float, float); public: