]> git.tdb.fi Git - r2c2.git/blobdiff - source/engineer/controlpanel.h
Don't crash if a train has no router
[r2c2.git] / source / engineer / controlpanel.h
index c99ca17f61f86c084f70b7d9803a65e8a05774fd..dfc67136e471aaabcafd3a7f4bb80f687b21eafd 100644 (file)
@@ -4,9 +4,11 @@
 #include <map>
 #include <msp/gltk/panel.h>
 #include <msp/gltk/toggle.h>
+#include "libr2c2/blockiter.h"
 #include "libr2c2/train.h"
 
 class Engineer;
+class PlacementGhost;
 
 class ControlPanel: public Msp::GLtk::Panel
 {
@@ -15,7 +17,10 @@ private:
        R2C2::Train &train;
        bool updating;
        std::map<unsigned, Msp::GLtk::Toggle *> tgl_funcs;
-       sigc::connection pick_conn;
+
+       bool placing;
+       std::vector<PlacementGhost *> ghosts;
+       R2C2::BlockIter place_location;
 
 public:
        ControlPanel(Engineer &, R2C2::Train &);
@@ -27,6 +32,9 @@ private:
        void place_pick_done(R2C2::Track *, unsigned);
        void take_clicked();
        void view_clicked();
+
+       virtual void button_press(int, int, unsigned);
+       virtual void pointer_motion(int, int);
 };
 
 #endif