]> git.tdb.fi Git - r2c2.git/blob - source/remote/trainselector.h
Add a new remote control program with GLtk-based UI
[r2c2.git] / source / remote / trainselector.h
1 #ifndef TRAINSELECTOR_H_
2 #define TRAINSELECTOR_H_
3
4 #include <msp/gltk/dropdown.h>
5 #include <msp/gltk/listdata.h>
6 #include <msp/gltk/panel.h>
7 #include "network/train.h"
8
9 class TrainSelector: public Msp::GLtk::Panel
10 {
11 public:
12         sigc::signal<void, R2C2::NetTrain *> signal_train_selected;
13
14 private:
15         Msp::GLtk::Dropdown *drp_trains;
16         Msp::GLtk::FunctionListData<R2C2::NetTrain *> trains;
17
18 public:
19         TrainSelector(R2C2::Client &);
20
21 private:
22         void train_added(R2C2::NetTrain &);
23         void train_selected(unsigned);
24 };
25
26 #endif