00001 #include "mainwidget.h"
00002
00003 #include <QInputDialog>
00004 #include <QPainter>
00005 #include <QGridLayout>
00006 #include <QToolButton>
00007 #include <QSettings>
00008
00009 #include "settingsdlg.h"
00010
00011 MainWidget::MainWidget (QWidget *parent)
00012 : QWidget(parent)
00013 {
00014 layout = new QGridLayout(this);
00015
00016 settings = new QSettings(this);
00017
00018 char iconNames[][128] = {
00019 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volumelevel4.png",
00020 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volumelevel1.png",
00021 "/usr/share/icons/hicolor/48x48/hildon/rss_reader_move_up.png",
00022 "/usr/share/icons/hicolor/48x48/hildon/rss_reader_move_down.png",
00023 "/usr/share/icons/hicolor/48x48/hildon/location_applet_on.png",
00024 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volume_mute.png"
00025 };
00026
00027 for (int i = 0; i < BUTTON_COUNT; ++i)
00028 {
00029 QToolButton *button = new QToolButton(this);
00030 button->setIcon(QIcon(QString(
00031 settings->value(QString("buttonIcon") + QString::number(i),
00032 iconNames[i]).toString())));
00033 buttons[i] = button;
00034 layout->addWidget(button, i%2, i/2);
00035 }
00036
00037 connect(buttons[0], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd0()));
00038 connect(buttons[1], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd1()));
00039 connect(buttons[2], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd2()));
00040 connect(buttons[3], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd3()));
00041 connect(buttons[4], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd4()));
00042 connect(buttons[5], SIGNAL(clicked()), &irCtrl, SLOT(sendCmd5()));
00043
00044 this->setContentsMargins(0, 0, 0, 0);
00045 layout->setContentsMargins(0, 0, 0, 0);
00046 this->setLayout(layout);
00047 this->setAttribute(Qt::WA_TranslucentBackground);
00048 this->setAttribute(Qt::WA_OpaquePaintEvent);
00049 }
00050
00051 MainWidget::~MainWidget()
00052 {
00053 delete settings;
00054 }
00055
00056 void MainWidget::paintEvent(QPaintEvent*)
00057 {
00058 int bgAlpha = settings->value("bgAlpha", "192").toInt();
00059 QPainter p(this);
00060 p.setBrush(QColor(0, 0, 0, bgAlpha));
00061 p.setPen(Qt::NoPen);
00062 p.drawRect(rect());
00063 p.end();
00064 }
00065
00066 void MainWidget::showSettingsDialog()
00067 {
00068 SettingsDlg dlg;
00069 dlg.exec();
00070 update();
00071 }
00072
00073
00074