dialog.init();
if (_timer->isActive()) {
dialog.showDisable();
- int msec = _timer->interval();
+ int msec = _timeout_interval;
int h = msec/3600000;
int m = msec/60000 - h * 60;
int s = msec/1000 - h * 3600 - m * 60;
if (!dialog.timerDisabled()) {
int h, m, s;
dialog.getTime(&h, &m, &s);
- _timer->setInterval(h*3600000+m*60000+s*1000);
+ _timeout_interval = h*3600000+m*60000+s*1000;
+ _timer->setInterval(1000);
+ _timer->setSingleShot(false);
_timer->start();
} else if (_timer->isActive()) {
_timer->stop();
+ _player_form->hideCountdown();
}
}
}
void MainWindow::_timeout() {
- _player_form->stop();
- _timer->stop();
+ _timeout_interval -= 1000;
+ if (_timeout_interval <= 0) {
+ _player_form->stop();
+ _player_form->hideCountdown();
+ _timer->stop();
+ } else {
+ int h = _timeout_interval / 3600000;
+ int m = (_timeout_interval / 60000) - 60*h;
+ int s = (_timeout_interval / 1000) - 3600*h - 60*m;
+ QString hp = h < 10 ? QString("0%1").arg(h) : QString("%1").arg(h);
+ QString mp = m < 10 ? QString("0%1").arg(m) : QString("%1").arg(m);
+ QString sp = s < 10 ? QString("0%1").arg(s) : QString("%1").arg(s);
+ _player_form->showCountdown(hp+":"+mp+":"+sp);
+ }
}
void MainWindow::_equalizer() {
ui->viewButton->setIcon(QIcon(":/icons/"+_icons_theme+"/playback.png"));
_top_gradient = ui->topWidget->styleSheet();
_bottom_gradient = ui->bottomWidget->styleSheet();
+ ui->countdownWidget->hide();
// dbus
_dbusadaptor = new DBusAdaptop(_player);
_player->play();
}
}
+
+void PlayerForm::showCountdown(QString text) {
+ ui->countdownWidget->show();
+ ui->timeLabel->setText(text);
+}
+
+void PlayerForm::hideCountdown() {
+ ui->countdownWidget->hide();
+}
</layout>
</item>
<item>
+ <widget class="QWidget" name="countdownWidget" native="true">
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <property name="margin">
+ <number>0</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>Music off:</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QLabel" name="timeLabel">
+ <property name="text">
+ <string>00:00:00</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
<widget class="QTableView" name="playlistView">
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/library.png</normaloff>:/icons/white/library.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/playlist.png</normaloff>:/icons/white/playlist.png</iconset>
</property>
<property name="checkable">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/repeat_off.png</normaloff>:/icons/white/repeat_off.png</iconset>
</property>
<property name="iconSize">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/random_off.png</normaloff>:/icons/white/random_off.png</iconset>
</property>
<property name="iconSize">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/prev.png</normaloff>:/icons/white/prev.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/play.png</normaloff>:/icons/white/play.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/next.png</normaloff>:/icons/white/next.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/stop.png</normaloff>:/icons/white/stop.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/more.png</normaloff>:/icons/white/more.png</iconset>
</property>
<property name="flat">
<string/>
</property>
<property name="icon">
- <iconset resource="../../resources/resources.qrc">
+ <iconset>
<normaloff>:/icons/white/directory.png</normaloff>:/icons/white/directory.png</iconset>
</property>
<property name="flat">
</item>
</layout>
</widget>
- <resources>
- <include location="../../resources/resources.qrc"/>
- </resources>
+ <resources/>
<connections/>
</ui>