#include <QtGui>
-#include <settings.hpp>
-#include <regions.hpp>
+#include "traffic.hpp"
+#include "settings.hpp"
+#include "regions.hpp"
+#include "light.hpp"
-class MainWidget : public QLabel
+class MainWidget : public QWidget
{
Q_OBJECT
private:
+ Traffic _traffic;
RegionsTable _regions;
Settings _settings;
-public:
- MainWidget ()
- : QLabel ()
- {
- const RegionInfo *ri;
-
- setAlignment(Qt::AlignCenter);
- setAttribute(Qt::WA_TranslucentBackground);
-
- ri = _regions.lookup (_settings.regions ()[0]);
+ // Widgets
+ TrafficLight *_light;
+ QLabel *_label;
- setText (_settings.regions ().join (", ") + ", " + QString (ri ? ri->name () : ""));
- }
-
- QSize sizeHint() const
- {
- return 2 * QLabel::sizeHint();
- }
+public:
+ MainWidget ();
+ QSize sizeHint () const;
protected:
- void paintEvent(QPaintEvent *event)
- {
- QPainter p(this);
- p.setBrush(QColor(0, 0, 0, 128));
- p.setPen(Qt::NoPen);
- p.drawRoundedRect(rect(), 25, 25);
- p.end();
-
- QLabel::paintEvent(event);
- }
+ void paintEvent (QPaintEvent *event);
+ void timerEvent (QTimerEvent *event);
+
+protected slots:
+ void trafficUpdated ();
};
#endif /* __MAINWIDGET_H__ */