]> git.tdb.fi Git - r2c2.git/blobdiff - source/engineer/mainpanel.cpp
Convert engineer to use mspgbase instead of SDL
[r2c2.git] / source / engineer / mainpanel.cpp
index 7e68c03d87ae7e6393d8b338510abedfe16851f9..c89060a4416b77145337de2f2bffd743493cb6e3 100644 (file)
@@ -2,6 +2,7 @@
 #include "engineer.h"
 #include "mainpanel.h"
 
+using namespace std;
 using namespace Msp;
 
 MainPanel::MainPanel(Engineer &e, GLtk::Resources &r):
@@ -13,7 +14,7 @@ MainPanel::MainPanel(Engineer &e, GLtk::Resources &r):
        GLtk::Button *btn;
 
        add(*(btn=new GLtk::Button(res, "Off")));
-       btn->set_geometry(GLtk::Geometry(10, 50, 40, 25));
+       btn->set_geometry(GLtk::Geometry(10, 53, 40, 25));
        btn->set_style("red");
        btn->signal_clicked.connect(sigc::mem_fun(this, &MainPanel::power_off));
 
@@ -22,7 +23,7 @@ MainPanel::MainPanel(Engineer &e, GLtk::Resources &r):
        ind_off->set_style("red");
 
        add(*(btn=new GLtk::Button(res, "On")));
-       btn->set_geometry(GLtk::Geometry(50, 50, 40, 25));
+       btn->set_geometry(GLtk::Geometry(50, 53, 40, 25));
        btn->set_style("green");
        btn->signal_clicked.connect(sigc::mem_fun(this, &MainPanel::power_on));
 
@@ -31,20 +32,29 @@ MainPanel::MainPanel(Engineer &e, GLtk::Resources &r):
        ind_on->set_style("green");
 
        add(*(btn=new GLtk::Button(res, "Quit")));
-       btn->set_geometry(GLtk::Geometry(150, 50, 40, 25));
+       btn->set_geometry(GLtk::Geometry(150, 53, 40, 25));
        btn->set_style("red");
        btn->signal_clicked.connect(sigc::mem_fun(this, &MainPanel::quit));
 
        add(*(btn=new GLtk::Button(res, "+Loc")));
-       btn->set_geometry(GLtk::Geometry(10, 10, 40, 25));
+       btn->set_geometry(GLtk::Geometry(90, 53, 40, 25));
        btn->signal_clicked.connect(sigc::mem_fun(this, &MainPanel::new_loc));
 
+       add(*(lbl_status=new GLtk::Label(res)));
+       lbl_status->set_geometry(GLtk::Geometry(10, 10, 180, 24));
+       lbl_status->set_style("digital");
+
        if(engineer.get_control().get_power())
                ind_on->set_active(true);
        else
                ind_off->set_active(true);
 }
 
+void MainPanel::set_status_text(const string &txt)
+{
+       lbl_status->set_text(txt);
+}
+
 void MainPanel::power_on()
 {
        engineer.get_control().set_power(true);