X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fengineer%2Fmainpanel.h;h=a24ef4976c59af9a0e6b9b7e7b71277ace13daa4;hb=e13742268b7030f8d6152858d39f1c6b43f94c88;hp=091d9707d31b240317524d3be8b0b1352c13e4ee;hpb=aead7f2da831199fbb8f6950b067656b2965c2fa;p=r2c2.git diff --git a/source/engineer/mainpanel.h b/source/engineer/mainpanel.h index 091d970..a24ef49 100644 --- a/source/engineer/mainpanel.h +++ b/source/engineer/mainpanel.h @@ -1,27 +1,41 @@ +/* $Id$ + +This file is part of the MSP Märklin suite +Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa +Distributed under the GPL +*/ + #ifndef MAINPANEL_H_ #define MAINPANEL_H_ +#include #include #include #include class Engineer; -class MainPanel: public Msp::GLtk::Panel +class MainPanel: public Msp::GLtk::Panel, public sigc::trackable { -public: - MainPanel(Engineer &, Msp::GLtk::Resources &); - void set_status_text(const std::string &); private: Engineer &engineer; Msp::GLtk::Indicator *ind_on; Msp::GLtk::Indicator *ind_off; Msp::GLtk::Label *lbl_status; + Msp::GLtk::Indicator *ind_halt; +public: + MainPanel(Engineer &, Msp::GLtk::Resources &); + + void set_status_text(const std::string &); +private: void power_on(); void power_off(); + void toggle_halt(); void new_loc(); void quit(); + void power_event(bool); + void halt_event(bool); }; #endif