]> git.tdb.fi Git - r2c2.git/blobdiff - source/designer/designer.h
Add an overlay to display aspects of tracks
[r2c2.git] / source / designer / designer.h
index a72316e128044aea2e182190a59008f60712950c..c4591abf5f1260991044d2b1839dd11448f161dd 100644 (file)
@@ -1,7 +1,7 @@
 /* $Id$
 
 This file is part of the MSP Märklin suite
-Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
+Copyright © 2006-2010 Mikkosoft Productions, Mikko Rasa
 Distributed under the GPL
 */
 
@@ -24,6 +24,7 @@ Distributed under the GPL
 #include "libmarklin/catalogue.h"
 #include "libmarklin/layout.h"
 #include "3d/layout.h"
+#include "3d/overlay.h"
 #include "3d/track.h"
 #include "cameracontroller.h"
 #include "manipulator.h"
@@ -58,6 +59,7 @@ private:
        std::string filename;
        Marklin::Layout *layout;
        Marklin::Layout3D *layout_3d;
+       Marklin::Overlay3D *overlay;
        Msp::GL::Object *base_object;
        Marklin::Route *cur_route;
        Msp::GL::Pipeline *pipeline;
@@ -90,6 +92,7 @@ public:
 
        Marklin::Layout *get_layout() { return layout; }
        Marklin::Layout3D *get_layout_3d() { return layout_3d; }
+       const Msp::GL::Camera &get_camera() const { return camera; }
        const Msp::GLtk::Resources &get_ui_resources() const { return ui_res; }
        Msp::GLtk::Root &get_root() const { return *root; }
        void edit_route(Marklin::Route &);
@@ -106,7 +109,7 @@ private:
        void apply_camera();
        void render();
        Marklin::Track3D *pick_track(int, int);
-       void update_track_color(Marklin::Track3D &);
+       void update_track_icon(Marklin::Track3D &);
        void manipulation_status(const std::string &);
        void manipulation_done(bool);
        void measure_changed();