+/* $Id$
+
+This file is part of R²C²
+Copyright © 2006-2008 Mikkosoft Productions, Mikko Rasa
+Distributed under the GPL
+*/
+
#ifndef MAINPANEL_H_
#define MAINPANEL_H_
+#include <sigc++/trackable.h>
#include <msp/gltk/indicator.h>
+#include <msp/gltk/label.h>
#include <msp/gltk/panel.h>
class Engineer;
-class MainPanel: public Msp::GLtk::Panel
+class MainPanel: public Msp::GLtk::Panel, public sigc::trackable
{
-public:
- MainPanel(Engineer &, Msp::GLtk::Resources &);
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 &);
+
+ 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