3 This file is part of the MSP Märklin suite
4 Copyright © 2006-2009 Mikkosoft Productions, Mikko Rasa
5 Distributed under the GPL
8 #ifndef TRAINPROPERTIES_H_
9 #define TRAINPROPERTIES_H_
11 #include <msp/gltk/dropdown.h>
12 #include <msp/gltk/entry.h>
13 #include <libmarklin/train.h>
18 class TrainProperties: public Dialog
22 Marklin::Train *train;
23 Msp::GLtk::Entry *ent_addr;
24 Msp::GLtk::Dropdown *drp_protocol;
25 Msp::GLtk::Dropdown *drp_type;
26 Msp::GLtk::Entry *ent_name;
27 Msp::GLtk::Dropdown *drp_priority;
28 Msp::GLtk::List *lst_vehicles;
29 Msp::GLtk::Dropdown *drp_new_vehicle;
30 std::vector<const Marklin::VehicleType *> add_vehicles;
31 std::set<unsigned> rem_vehicles;
34 TrainProperties(Engineer &, Marklin::Train *);
36 virtual void on_ok_clicked();
37 void new_vehicle_selected(unsigned, const std::string &);
38 void remove_vehicle_clicked();
39 const Marklin::VehicleType &get_vehicle_type(unsigned, bool);