diff --git a/assets/coverlogo.png b/assets/coverlogo.png new file mode 100644 index 0000000..95ed332 Binary files /dev/null and b/assets/coverlogo.png differ diff --git a/assets/mp3-hot.png b/assets/mp3-hot.png new file mode 100644 index 0000000..72ba8d9 Binary files /dev/null and b/assets/mp3-hot.png differ diff --git a/assets/resources.qrc b/assets/resources.qrc index 0e76303..d93c1d1 100644 --- a/assets/resources.qrc +++ b/assets/resources.qrc @@ -26,6 +26,8 @@ bug-hot.png eye-hot.png skin-hot.png + mp3-hot.png + coverlogo.png black.png Roboto-Regular.ttf diff --git a/assets/skin-hot.png b/assets/skin-hot.png old mode 100755 new mode 100644 diff --git a/include/f1x/openauto/autoapp/UI/MainWindow.hpp b/include/f1x/openauto/autoapp/UI/MainWindow.hpp index 4d17974..914f37b 100644 --- a/include/f1x/openauto/autoapp/UI/MainWindow.hpp +++ b/include/f1x/openauto/autoapp/UI/MainWindow.hpp @@ -25,13 +25,18 @@ #include #include +#include #include +#include +#include #include #include #include #include +#include + namespace Ui { class MainWindow; @@ -111,10 +116,17 @@ private slots: void on_horizontalSliderVolumePlayer_sliderMoved(int position); void on_pushButtonPlayerPlay_clicked(); void on_pushButtonPlayerStop_clicked(); + void on_pushButtonPlayerPause_clicked(); void on_positionChanged(qint64 position); void on_durationChanged(qint64 position); void on_mp3List_itemClicked(QListWidgetItem *item); void metaDataChanged(); + void stateChanged(); + void on_pushButtonScanFolder_clicked(); + void on_pushButtonSelectFolder_clicked(); + void on_pushButtonPlayerPlayList_clicked(); + void on_pushButtonPlayerPrev_clicked(); + void on_pushButtonPlayerNext_clicked(); private: Ui::MainWindow* ui_; @@ -156,7 +168,8 @@ private: QString custom_button_color_c8 = "186,189,192"; QString selectedMp3file; - QString folderMp3 = "/media/CSSTORAGE/Music"; + QString musicfolder = "/media/CSSTORAGE/Music"; + QMediaPlaylist *playlist; bool customBrightnessControl = false; diff --git a/src/autoapp/UI/MainWindow.cpp b/src/autoapp/UI/MainWindow.cpp index 8beffe6..efb28b5 100644 --- a/src/autoapp/UI/MainWindow.cpp +++ b/src/autoapp/UI/MainWindow.cpp @@ -165,6 +165,7 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi connect(ui_->pushButtonWifi, &QPushButton::clicked, this, &MainWindow::openConnectDialog); connect(ui_->pushButtonWifi2, &QPushButton::clicked, this, &MainWindow::openConnectDialog); connect(ui_->pushButtonMusic, &QPushButton::clicked, this, &MainWindow::playerShow); + connect(ui_->pushButtonMusic2, &QPushButton::clicked, this, &MainWindow::playerShow); connect(ui_->pushButtonBack, &QPushButton::clicked, this, &MainWindow::playerHide); // by default hide bluetooth button on init @@ -247,13 +248,14 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi } // as default hide brightness slider - ui_->horizontalSliderBrightness->hide(); - ui_->brightnessValueLabel->hide(); + ui_->BrightnessSliderControl->hide(); // as default hide alpha slider and button - ui_->horizontalSliderAlpha->hide(); - ui_->alphaValueLabel->hide(); - ui_->pushButtonAlpha->show(); + ui_->pushButtonAlpha->hide(); + ui_->AlphaSliderControl->hide(); + + // as default hide volume slider player + ui_->VolumeSliderControlPlayer->hide(); // as default hide power buttons ui_->pushButtonShutdown->hide(); @@ -559,8 +561,8 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi } // hide alpha controls if enabled in settings - if (configuration->hideAlpha()) { - ui_->pushButtonAlpha->hide(); + if (!configuration->hideAlpha()) { + ui_->pushButtonAlpha->show(); } // init alpha values @@ -568,9 +570,14 @@ MainWindow::MainWindow(configuration::IConfiguration::Pointer configuration, QWi MainWindow::on_horizontalSliderAlpha_valueChanged(int(configuration->getAlphaTrans())); player = new QMediaPlayer(this); + playlist = new QMediaPlaylist(this); connect(player, &QMediaPlayer::positionChanged, this, &MainWindow::on_positionChanged); connect(player, &QMediaPlayer::durationChanged, this, &MainWindow::on_durationChanged); connect(player, &QMediaPlayer::metaDataAvailableChanged, this, &MainWindow::metaDataChanged); + connect(player, &QMediaPlayer::stateChanged, this, &MainWindow::stateChanged); + ui_->id3TagInfo->hide(); + + MainWindow::on_pushButtonScanFolder_clicked(); } MainWindow::~MainWindow() @@ -650,14 +657,9 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonBrightness_clicked() this->brightnessFileAlt->close(); } } - ui_->horizontalSliderBrightness->show(); - ui_->brightnessValueLabel->show(); - ui_->horizontalSliderVolume->hide(); - ui_->volumeValueLabel->hide(); - ui_->pushButtonMute->hide(); - ui_->pushButtonUnMute->hide(); - ui_->horizontalSliderAlpha->hide(); - ui_->alphaValueLabel->hide(); + ui_->BrightnessSliderControl->show(); + ui_->VolumeSliderControl->hide(); + ui_->AlphaSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonBrightness2_clicked() @@ -687,14 +689,9 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonBrightness2_clicked() this->brightnessFileAlt->close(); } } - ui_->horizontalSliderBrightness->show(); - ui_->brightnessValueLabel->show(); - ui_->horizontalSliderVolume->hide(); - ui_->volumeValueLabel->hide(); - ui_->pushButtonMute->hide(); - ui_->pushButtonUnMute->hide(); - ui_->horizontalSliderAlpha->hide(); - ui_->alphaValueLabel->hide(); + ui_->BrightnessSliderControl->show(); + ui_->VolumeSliderControl->hide(); + ui_->AlphaSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonVolume_clicked() @@ -706,10 +703,10 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonVolume_clicked() } else { ui_->pushButtonMute->show(); } - ui_->horizontalSliderBrightness->hide(); - ui_->brightnessValueLabel->hide(); - ui_->horizontalSliderAlpha->hide(); - ui_->alphaValueLabel->hide(); + ui_->VolumeSliderControl->show(); + ui_->BrightnessSliderControl->hide(); + ui_->AlphaSliderControl->hide(); + } void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonVolume2_clicked() @@ -721,22 +718,16 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonVolume2_clicked() } else { ui_->pushButtonMute->show(); } - ui_->horizontalSliderBrightness->hide(); - ui_->brightnessValueLabel->hide(); - ui_->horizontalSliderAlpha->hide(); - ui_->alphaValueLabel->hide(); + ui_->VolumeSliderControl->show(); + ui_->BrightnessSliderControl->hide(); + ui_->AlphaSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonAlpha_clicked() { - ui_->horizontalSliderAlpha->show(); - ui_->alphaValueLabel->show(); - ui_->horizontalSliderVolume->hide(); - ui_->volumeValueLabel->hide(); - ui_->pushButtonMute->hide(); - ui_->pushButtonUnMute->hide(); - ui_->horizontalSliderBrightness->hide(); - ui_->brightnessValueLabel->hide(); + ui_->AlphaSliderControl->show(); + ui_->VolumeSliderControl->hide(); + ui_->BrightnessSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderBrightness_valueChanged(int value) @@ -886,6 +877,10 @@ void f1x::openauto::autoapp::ui::MainWindow::playerShow() ui_->oldmenuWidget->hide(); } ui_->mediaWidget->show(); + ui_->VolumeSliderControlPlayer->show(); + ui_->VolumeSliderControl->hide(); + ui_->BrightnessSliderControl->hide(); + ui_->AlphaSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::playerHide() @@ -896,6 +891,10 @@ void f1x::openauto::autoapp::ui::MainWindow::playerHide() ui_->oldmenuWidget->show(); } ui_->mediaWidget->hide(); + ui_->VolumeSliderControl->show(); + ui_->VolumeSliderControlPlayer->hide(); + ui_->BrightnessSliderControl->hide(); + ui_->AlphaSliderControl->hide(); } void f1x::openauto::autoapp::ui::MainWindow::toggleExit() @@ -1178,42 +1177,39 @@ void f1x::openauto::autoapp::ui::MainWindow::showTime() ui_->pushButtonDummyCamWifi->hide(); } } - - // handle dummys in classic menu - int button_count = 0; - if (ui_->pushButtonCameraShow2->isVisible() == true) { - button_count = button_count + 1; - } - if (ui_->pushButtonToggleGUI2->isVisible() == true) { - button_count = button_count + 1; - } - if (ui_->pushButtonWifi2->isVisible() == true) { - button_count = button_count + 1; - } - if (ui_->pushButtonDebug2->isVisible() == true) { - button_count = button_count + 1; - } - if (button_count >= 3) { - ui_->pushButtonDummyClassic1->hide(); - ui_->pushButtonDummyClassic2->hide(); - ui_->pushButtonDummyClassic3->hide(); - } - if (button_count == 2) { - ui_->pushButtonDummyClassic1->show(); - ui_->pushButtonDummyClassic2->hide(); - ui_->pushButtonDummyClassic3->hide(); - } - if (button_count == 1) { - ui_->pushButtonDummyClassic1->show(); - ui_->pushButtonDummyClassic2->show(); - ui_->pushButtonDummyClassic3->hide(); - } - if (button_count == 0) { - ui_->pushButtonDummyClassic1->show(); - ui_->pushButtonDummyClassic2->show(); - ui_->pushButtonDummyClassic3->show(); - } } + + // handle dummys in classic menu + int button_count = 0; + if (ui_->pushButtonCameraShow2->isVisible() == true) { + button_count = button_count + 1; + } + if (ui_->pushButtonToggleGUI2->isVisible() == true) { + button_count = button_count + 1; + } + if (ui_->pushButtonWifi2->isVisible() == true) { + button_count = button_count + 1; + } + if (ui_->pushButtonDebug2->isVisible() == true) { + button_count = button_count + 1; + } + if (button_count >= 3) { + ui_->pushButtonDummyClassic1->hide(); + ui_->pushButtonDummyClassic2->hide(); + } + if (button_count == 2) { + ui_->pushButtonDummyClassic1->hide(); + ui_->pushButtonDummyClassic2->hide(); + } + if (button_count == 1) { + ui_->pushButtonDummyClassic1->show(); + ui_->pushButtonDummyClassic2->hide(); + } + if (button_count == 0) { + ui_->pushButtonDummyClassic1->show(); + ui_->pushButtonDummyClassic2->show(); + } + ui_->Digital_clock->setText(time_text); ui_->bigClock->setText(time_text); } @@ -1227,11 +1223,14 @@ void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderProgressPlayer_s void f1x::openauto::autoapp::ui::MainWindow::on_horizontalSliderVolumePlayer_sliderMoved(int position) { player->setVolume(position); + ui_->volumeValueLabelPlayer->setText(QString::number(position) + "%"); } void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerPlay_clicked() { - player->setMedia(QMediaContent(QUrl::fromLocalFile(this->folderMp3 + "/" + this->selectedMp3file))); + QString path = this->musicfolder + "/" + this->selectedMp3file; + ui_->labelFolderpath->setText(path); + player->setMedia(QMediaContent(QUrl::fromLocalFile(path))); player->play(); //qDebug() << player->errorString(); } @@ -1239,17 +1238,66 @@ void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerPlay_clicked() void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerStop_clicked() { player->stop(); + ui_->pushButtonBack->setIcon(QPixmap("://coverlogo.png")); +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerPause_clicked() +{ + { + if(player->state() == QMediaPlayer::PlayingState){ + player->pause(); + ui_->pushButtonPlayerPause->setStyleSheet( "background-color: rgb(218, 143, 143); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(0,0,0);"); + }else{ + ui_->pushButtonPlayerPause->setStyleSheet( "background-color: rgb(186, 189, 182); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); color: rgb(0,0,0);"); + player->play(); + player->setPosition(player->position()); + } + + } } void f1x::openauto::autoapp::ui::MainWindow::on_positionChanged(qint64 position) { ui_->horizontalSliderProgressPlayer->setValue(position); + + //Setting the time + QString time_elapsed, time_total; + + int total_seconds, total_minutes; + + total_seconds = (player->duration()/1000) % 60; + total_minutes = (player->duration()/1000) / 60; + + if(total_minutes >= 60){ + int total_hours = (total_minutes/60); + total_minutes = total_minutes - (total_hours*60); + time_total = QString("%1").arg(total_hours, 2,10,QChar('0')) + ':' + QString("%1").arg(total_minutes, 2,10,QChar('0')) + ':' + QString("%1").arg(total_seconds, 2,10,QChar('0')); + + }else{ + time_total = QString("%1").arg(total_minutes, 2,10,QChar('0')) + ':' + QString("%1").arg(total_seconds, 2,10,QChar('0')); + + } + + //calculate time elapsed + int seconds, minutes; + + seconds = (position/1000) % 60; + minutes = (position/1000) / 60; + + //if minutes is over 60 then we should really display hours + if(minutes >= 60){ + int hours = (minutes/60); + minutes = minutes - (hours*60); + time_elapsed = QString("%1").arg(hours, 2,10,QChar('0')) + ':' + QString("%1").arg(minutes, 2,10,QChar('0')) + ':' + QString("%1").arg(seconds, 2,10,QChar('0')); + }else{ + time_elapsed = QString("%1").arg(minutes, 2,10,QChar('0')) + ':' + QString("%1").arg(seconds, 2,10,QChar('0')); + } + ui_->playerPositionTime->setText(time_elapsed + " / " + time_total); } void f1x::openauto::autoapp::ui::MainWindow::on_durationChanged(qint64 position) { ui_->horizontalSliderProgressPlayer->setMaximum(position); - ui_->valueId3length->setText(QString::number(position)); } void f1x::openauto::autoapp::ui::MainWindow::on_mp3List_itemClicked(QListWidgetItem *item) @@ -1266,6 +1314,60 @@ void f1x::openauto::autoapp::ui::MainWindow::metaDataChanged() ui_->valueId3Genre->setText(player->metaData(QMediaMetaData::Genre).toString()); ui_->valueId3Year->setText(player->metaData(QMediaMetaData::Year).toString()); QImage img = player->metaData(QMediaMetaData::CoverArtImage).value(); - QImage imgscaled = img.scaled(300,300); - ui_->labelCover->setPixmap(QPixmap::fromImage(imgscaled)); + QImage imgscaled = img.scaled(270,270,Qt::IgnoreAspectRatio); + ui_->pushButtonBack->setIcon(QPixmap::fromImage(imgscaled)); + ui_->labelCurrentPlaying->setText(player->metaData(QMediaMetaData::Title).toString() + " - " + player->metaData(QMediaMetaData::AlbumArtist).toString()); +} + +void f1x::openauto::autoapp::ui::MainWindow::stateChanged() +{ + if (player->StoppedState) { + ui_->pushButtonBack->setIcon(QPixmap("://coverlogo.png")); + } +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonScanFolder_clicked() +{ + int cleaner = ui_->mp3List->count(); + while (cleaner > -1) { + ui_->mp3List->takeItem(cleaner); + cleaner--; + } + this->playlist->clear(); + + QDirIterator dir(this->musicfolder, QStringList() << "*.mp3", QDir::NoFilter, QDirIterator::Subdirectories); + QList content; + + while (dir.hasNext()) { + QFile f(dir.next()); + QString filename = f.fileName(); + // make path relative to musicfolder + ui_->mp3List->addItem(filename.replace(this->musicfolder + "/","")); + content.push_back(QMediaContent(QUrl::fromLocalFile(f.fileName()))); + } + this->playlist->addMedia(content); +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonSelectFolder_clicked() +{ + this->musicfolder = QFileDialog::getExistingDirectory(this, tr("Select Album"), this->musicfolder, QFileDialog::ShowDirsOnly); + f1x::openauto::autoapp::ui::MainWindow::on_pushButtonScanFolder_clicked(); +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerPlayList_clicked() +{ + QString path = this->musicfolder + "/" + this->selectedMp3file; + ui_->labelFolderpath->setText(path); + player->setPlaylist(this->playlist); + player->play(); +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerPrev_clicked() +{ + playlist->previous(); +} + +void f1x::openauto::autoapp::ui::MainWindow::on_pushButtonPlayerNext_clicked() +{ + playlist->next(); } diff --git a/src/autoapp/UI/mainwindow.ui b/src/autoapp/UI/mainwindow.ui index 53ee6ab..ab65ba2 100644 --- a/src/autoapp/UI/mainwindow.ui +++ b/src/autoapp/UI/mainwindow.ui @@ -6,8 +6,8 @@ 0 0 - 800 - 1268 + 808 + 1316 @@ -1110,7 +1110,18 @@ border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); - MP3 + + + + + :/mp3-hot.png + + + + + 64 + 64 + @@ -1734,6 +1745,33 @@ border: 2px solid rgba(255,255,255,0.5); + + + + + 0 + 0 + + + + background-color: rgba(136, 138, 133, 0.5); + + + + + + + :/mp3-hot.png + + + + + 50 + 50 + + + + @@ -1790,28 +1828,6 @@ border: 2px solid rgba(255,255,255,0.5); - - - - - 0 - 0 - - - - - 62 - 0 - - - - background-color: rgba(136, 138, 133, 0.5); - - - - - - @@ -1996,9 +2012,12 @@ border: 2px solid rgba(255,255,255,0.5); Qt::LeftToRight - background-color: rgba(0, 0, 0, 0.8); + background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(9, 41, 4, 255), stop:0.085 rgba(2, 79, 0, 255), stop:0.19 rgba(50, 147, 22, 255), stop:0.275 rgba(236, 191, 49, 255), stop:0.39 rgba(243, 61, 34, 255), stop:0.555 rgba(135, 81, 60, 255), stop:0.667 rgba(121, 75, 255, 255), stop:0.825 rgba(164, 255, 244, 255), stop:0.885 rgba(104, 222, 71, 255), stop:1 rgba(93, 128, 0, 255)); + + 4 + 0 @@ -2009,7 +2028,7 @@ border: 2px solid rgba(255,255,255,0.5); 0 - 4 + 6 @@ -2021,9 +2040,13 @@ border: 2px solid rgba(255,255,255,0.5); border: 0px; +background-color: rgba(0, 0, 0, 0); + + 0 + 0 @@ -2037,7 +2060,97 @@ border: 2px solid rgba(255,255,255,0.5); 0 - + + + + 0 + 0 + + + + + 4 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 20 + + + + + 16777215 + 20 + + + + background-color: rgba(85, 87, 83, 0.7); +color: rgb(255, 255, 255); +border: 2px solid rgba(255,255,255,0.5); + + + + + + + + + + + 75 + true + + + + Qt::LeftToRight + + + background-color: rgba(85, 87, 83, 0.7); +color: rgb(255, 255, 255); +border-bottom: 2px solid rgba(255,255,255,0.5); +border-left: 2px solid rgba(255,255,255,0.5); +border-right: 2px solid rgba(255,255,255,0.5); + + + + Qt::ScrollBarAlwaysOn + + + Qt::ScrollBarAsNeeded + + + false + + + true + + + + + + + + 0 @@ -2046,40 +2159,39 @@ border: 2px solid rgba(255,255,255,0.5); - 200 - 0 + 280 + 280 - 200 - 16777215 + 280 + 280 - - - 75 - true - - - - Qt::LeftToRight - - background-color: rgb(85, 87, 83); + background-color: rgba(0, 0, 0, 0); color: rgb(255, 255, 255); -border: 2px solid rgba(255,255,255,0.5); +border: 2px solid rgba(255,255,255,0.5); + + + + + + + + :/coverlogo.png + + + + + 270 + 270 + + + + false - - - test.mp3 - - - - - test2.mp3 - - @@ -2092,12 +2204,18 @@ border: 2px solid rgba(255,255,255,0.5); - 0 - 0 + 260 + 280 + + + + + 16777215 + 280 - background-color: rgb(46, 52, 54); + background-color: rgba(85, 87, 83, 0.7); color: rgb(255, 255, 255); border: 2px solid rgba(255,255,255,0.5); @@ -2197,6 +2315,40 @@ border: no-border; color: rgb(255, 255, 255); background-color: rgba(0, 0, 0, 0); +border: no-border; + + + + + + + + + + + 8 + + + + color: rgb(255, 255, 255); +background-color: rgba(0, 0, 0, 0); +border: no-border; + + + Genre + + + + + + + + 8 + + + + color: rgb(255, 255, 255); +background-color: rgba(0, 0, 0, 0); border: no-border; @@ -2265,74 +2417,6 @@ border: no-border; color: rgb(255, 255, 255); background-color: rgba(0, 0, 0, 0); -border: no-border; - - - - - - - - - - - 8 - - - - color: rgb(255, 255, 255); -background-color: rgba(0, 0, 0, 0); -border: no-border; - - - Genre - - - - - - - - 8 - - - - color: rgb(255, 255, 255); -background-color: rgba(0, 0, 0, 0); -border: no-border; - - - - - - - - - - - 8 - - - - color: rgb(255, 255, 255); -background-color: rgba(0, 0, 0, 0); -border: no-border; - - - Length - - - - - - - - 8 - - - - color: rgb(255, 255, 255); -background-color: rgba(0, 0, 0, 0); border: no-border; @@ -2343,93 +2427,165 @@ border: no-border; - - - - - 0 - 0 - - - - - 300 - 0 - - - - - 75 - true - - - - background-color: rgb(46, 52, 54); -color: rgb(255, 255, 255); -border: 2px solid rgba(255,255,255,0.5); - - - QFrame::NoFrame - - - Cover - - - Qt::AlignCenter - - - - + + + + 0 + 0 + + 0 - 10 + 20 - - Qt::LeftToRight + + + 16777215 + 20 + + + + + 12 + 75 + true + true + - QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} -QSlider::handle:horizontal { background: rgb(255, 255, 255); height: 52px; width: 52px; margin: 0 0;}; + background-color: rgba(0, 0, 0, 0); +color: rgb(255, 255, 255); - - Qt::Horizontal + + + + + Qt::AlignCenter - - + + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + Qt::LeftToRight + + + false + + + QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} +QSlider::handle:horizontal { background: rgb(255, 255, 255); height: 52px; width: 52px; margin: 0 0;}; + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 140 + 30 + + + + + 140 + 30 + + + + + 75 + true + + + + color: rgb(255, 255, 255); +background-color: #6d6d6d; + + + 00:00 / 00:00 + + + Qt::AlignCenter + + + + + + + + + Qt::Vertical + + - 0 - 30 + 20 + 0 - - Qt::LeftToRight - - - QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} -QSlider::handle:horizontal { background: rgb(64, 191, 191); height: 52px; width: 52px; margin: 0 0;}; - - - 100 - - - 100 - - - Qt::Horizontal - - + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + background-color: rgb(186, 189, 182); +border-radius: 4px; +border: 2px solid rgba(255,255,255,0.5); + + + Prev + + + @@ -2444,6 +2600,12 @@ QSlider::handle:horizontal { background: rgb(64, 191, 191); height: 52px; width: 30 + + + 16777215 + 30 + + background-color: rgb(186, 189, 182); border-radius: 4px; @@ -2455,7 +2617,7 @@ border: 2px solid rgba(255,255,255,0.5); - + 0 @@ -2468,13 +2630,19 @@ border: 2px solid rgba(255,255,255,0.5); 30 + + + 16777215 + 30 + + background-color: rgb(186, 189, 182); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); - Pause + Play All @@ -2492,6 +2660,12 @@ border: 2px solid rgba(255,255,255,0.5); 30 + + + 16777215 + 30 + + background-color: rgb(186, 189, 182); border-radius: 4px; @@ -2503,7 +2677,7 @@ border: 2px solid rgba(255,255,255,0.5); - + 0 @@ -2516,20 +2690,80 @@ border: 2px solid rgba(255,255,255,0.5); 30 + + + 16777215 + 30 + + background-color: rgb(186, 189, 182); border-radius: 4px; border: 2px solid rgba(255,255,255,0.5); - Back + Next - + + + + + + + 0 + 0 + + + - 50 - 50 + 0 + 30 + + + 16777215 + 30 + + + + background-color: rgb(186, 189, 182); +border-radius: 4px; +border: 2px solid rgba(255,255,255,0.5); + + + Pause + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + background-color: rgb(186, 189, 182); +border-radius: 4px; +border: 2px solid rgba(255,255,255,0.5); + + + Folder + @@ -2573,290 +2807,486 @@ color: rgb(0, 0, 0); - - - - - - 0 - 0 - - - - - 80 - 30 - - - - - 80 - 30 - - - - color: rgb(255, 255, 255); + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 80 + 30 + + + + + 80 + 30 + + + + color: rgb(255, 255, 255); background-color: rgb(164, 0, 0); - - - Muted - - - - - - - - 0 - 0 - - - - - 80 - 30 - - - - - 80 - 30 - - - - color: rgb(255, 255, 255); + + + Muted + + + + + + + + 0 + 0 + + + + + 80 + 30 + + + + + 80 + 30 + + + + color: rgb(255, 255, 255); background-color: #6d6d6d; - - - Mute - - - false - - - - - - - - 0 - 0 - - - - - 0 - 30 - - - - QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} + + + Mute + + + false + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} QSlider::handle:horizontal { background: rgb(64, 191, 191); height: 52px; width: 52px; margin: 0 0;}; - - - 100 - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - - 40 - 30 - - - - - 40 - 16777215 - - - - - 75 - true - - - - color: rgb(255, 255, 255); + + + 100 + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 40 + 30 + + + + + 40 + 16777215 + + + + + 75 + true + + + + color: rgb(255, 255, 255); background-color: #6d6d6d; - - - - - - - Qt::AlignCenter - - - - + + + - + + + Qt::AlignCenter + + + + + - - - - - - 0 - 0 - - - - - 0 - 30 - - - - - - - - - - QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 30 + + + + Qt::LeftToRight + + + QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} +QSlider::handle:horizontal { background: rgb(64, 191, 191); height: 52px; width: 52px; margin: 0 0;}; + + + 100 + + + 100 + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 40 + 30 + + + + + 40 + 16777215 + + + + + 75 + true + + + + color: rgb(255, 255, 255); +background-color: #6d6d6d; + + + 100% + + + Qt::AlignCenter + + + + + + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 0 + 30 + + + + + + + + + + QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} QSlider::handle:horizontal { background: rgb(245, 121, 0); height: 52px; width: 52px; margin: 0 0;}; - - - 30 - - - 255 - - - 25 - - - 30 - - - 30 - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - - 40 - 30 - - - - - 40 - 16777215 - - - - - 75 - true - - - - color: rgb(255, 255, 255); + + + 30 + + + 255 + + + 25 + + + 30 + + + 30 + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 40 + 30 + + + + + 40 + 16777215 + + + + + 75 + true + + + + color: rgb(255, 255, 255); background-color: #6d6d6d; - - - - - - - Qt::AlignCenter - - - - + + + - + + + Qt::AlignCenter + + + + + - - - - - - 0 - 30 - - - - QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} + + + + 0 + 0 + + + + + 0 + 30 + + + + + 16777215 + 30 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 30 + + + + QSlider::groove:horizontal { background: #6d6d6d; height: 32px;} QSlider::handle:horizontal { background: rgb(173, 127, 168); height: 52px; width: 52px; margin: 0 0;}; - - - 1 - - - 100 - - - 1 - - - 50 - - - Qt::Horizontal - - - - - - - - 0 - 0 - - - - - 40 - 30 - - - - - 40 - 16777215 - - - - - 75 - true - - - - color: rgb(255, 255, 255); + + + 1 + + + 100 + + + 1 + + + 50 + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 40 + 30 + + + + + 40 + 16777215 + + + + + 75 + true + + + + color: rgb(255, 255, 255); background-color: #6d6d6d; - - - 0.5 - - - Qt::AlignCenter - - - - + + + 0.5 + + + Qt::AlignCenter + + + + +