]> git.tdb.fi Git - r2c2.git/blobdiff - source/designer/manipulator.h
Move the fitting part of Manipulator::connect to a separate function
[r2c2.git] / source / designer / manipulator.h
index 8115ab4abd8dd7e8e3b1d6429a249737b2efbf09..8fddced8df910f159a25e240537434e0d9dc6248 100644 (file)
@@ -21,7 +21,8 @@ private:
                NONE,
                MOVE,
                ROTATE,
-               ELEVATE
+               ELEVATE,
+               EXTEND
        };
 
        struct MTrack
@@ -59,6 +60,7 @@ private:
        float rot_origin;
        int elev_origin;
        std::set<Marklin::Track *> neighbors;
+       std::vector<Marklin::Track *> extend_tracks;
 
 public:
        Manipulator(Designer &, Selection &);
@@ -66,6 +68,7 @@ public:
        void start_move();
        void start_rotate();
        void start_elevate();
+       void start_extend();
        void duplicate();
        void flatten();
        void even_slope(bool =false);
@@ -78,6 +81,7 @@ private:
        void update_tracks();
        void update_neighbors();
        void set_slope(TrackOrder &, float, float);
+       std::vector<Marklin::Track *> create_straight(const Marklin::Point &, float, float, float);
 };
 
 #endif