1 #include "mainwidget.h"
4 #include "settingsdlg.h"
6 #include <QInputDialog>
12 MainWidget::MainWidget (QWidget *parent)
14 , engine(new Engine())
16 engine->setRemote("1");
18 layout = new QGridLayout(this);
20 settings = new QSettings(this);
22 char iconNames[][128] = {
23 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volumelevel4.png",
24 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volumelevel1.png",
25 "/usr/share/icons/hicolor/48x48/hildon/rss_reader_move_up.png",
26 "/usr/share/icons/hicolor/48x48/hildon/rss_reader_move_down.png",
27 "/usr/share/icons/hicolor/48x48/hildon/location_applet_on.png",
28 "/usr/share/icons/hicolor/48x48/hildon/statusarea_volume_mute.png"
31 for (int i = 0; i < BUTTON_COUNT; ++i)
33 QToolButton *button = new QToolButton(this);
34 button->setIcon(QIcon(QString(
35 settings->value(QString("buttonIcon") + QString::number(i),
36 iconNames[i]).toString())));
38 button->setSizePolicy(QSizePolicy::MinimumExpanding,
39 QSizePolicy::MinimumExpanding);
40 layout->addWidget(button, i%2, i/2);
43 connect(buttons[0], SIGNAL(clicked()),
44 this, SLOT(sendCmdClicked(IRemote::VOLUMEUP)));
46 this->setContentsMargins(0, 0, 0, 0);
47 layout->setContentsMargins(0, 0, 0, 0);
48 this->setLayout(layout);
49 this->setAttribute(Qt::WA_TranslucentBackground);
50 this->setAttribute(Qt::WA_OpaquePaintEvent);
57 MainWidget::~MainWidget()
63 void MainWidget::paintEvent(QPaintEvent*)
65 int bgAlpha = settings->value("bgAlpha", "192").toInt();
67 p.fillRect(rect(), QColor(0, 0, 0, bgAlpha));
71 void MainWidget::showSettingsDialog()
73 SettingsDlg dlg(this, engine);
75 update(); // Repaint required if bgAlpha value was changed
79 void MainWidget::resize()
81 int w = settings->value("width", "250").toInt();
82 int h = settings->value("height", "148").toInt();
87 QWidget::resize(w, h);
90 void MainWidget::sendCmdClicked(IRemote::RemoteCmd cmd)
92 engine->remote()->sendCmd(cmd);