--- /dev/null
+#ifndef TRAINSELECTOR_H_
+#define TRAINSELECTOR_H_
+
+#include <msp/gltk/dropdown.h>
+#include <msp/gltk/listdata.h>
+#include <msp/gltk/panel.h>
+#include "network/train.h"
+
+class TrainSelector: public Msp::GLtk::Panel
+{
+public:
+ sigc::signal<void, R2C2::NetTrain *> signal_train_selected;
+
+private:
+ Msp::GLtk::Dropdown *drp_trains;
+ Msp::GLtk::FunctionListData<R2C2::NetTrain *> trains;
+
+public:
+ TrainSelector(R2C2::Client &);
+
+private:
+ void train_added(R2C2::NetTrain &);
+ void train_selected(unsigned);
+};
+
+#endif