4 #include <msp/gltk/hslider.h>
5 #include <msp/gltk/indicator.h>
6 #include <msp/gltk/label.h>
7 #include <msp/gltk/panel.h>
8 #include "libmarklin/train.h"
12 class TrainPanel: public Msp::GLtk::Panel
16 Marklin::Train &train;
17 Msp::GLtk::Label *lbl_addr;
18 Msp::GLtk::Label *lbl_name;
19 Msp::GLtk::HSlider *sld_speed;
20 Msp::GLtk::Label *lbl_speed;
21 Msp::GLtk::Label *lbl_status;
22 std::map<unsigned, Msp::GLtk::Indicator *> ind_funcs;
25 TrainPanel(Engineer &, const Msp::GLtk::Resources &, Marklin::Train &);
27 void speed_slider_changed(double);
28 void loco_speed_changed(unsigned);
29 void loco_function_changed(unsigned, bool);
30 void train_status_changed(const std::string &);
32 void func_clicked(unsigned);