#include "configdialog.h"
#include "aboutdialog.h"
#include "accountdialog.h"
+ #include "settingsdialog.h"
#include "appsettings.h"
#if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
#include <QMaemo5InformationBox>
#endif
+#include <QMessageBox>
PlayerMainWindow::PlayerMainWindow(QWidget *parent) :
QMainWindow(parent),
#endif
connect(mTimer,SIGNAL(timeout()),this,SLOT(askStatus()));
+ connect(ui->actionSettings,SIGNAL(triggered()),this,SLOT(showSettings()));
connect(ui->actionConfiguration,SIGNAL(triggered()),this,SLOT(showConfig()));
connect(ui->actionAbout,SIGNAL(triggered()),this,SLOT(showAbout()));
- connect(ui->actionPortrait,SIGNAL(triggered()),this,SLOT(setPortrait()));
- connect(ui->actionLandscape,SIGNAL(triggered()),this,SLOT(setLandscape()));
- connect(ui->actionAutoRotate,SIGNAL(triggered()),this,SLOT(setAutoRotate()));
+ connect(ui->actionFavourites,SIGNAL(triggered()),this,SLOT(showFavourites()));
+ //connect(ui->actionPortrait,SIGNAL(triggered()),this,SLOT(setPortrait()));
+ //connect(ui->actionLandscape,SIGNAL(triggered()),this,SLOT(setLandscape()));
+ //connect(ui->actionAutoRotate,SIGNAL(triggered()),this,SLOT(setAutoRotate()));
connect(ui->playlistButton,SIGNAL(clicked()),mPlayListMainWindow,SLOT(show()));
connect(ui->playlistButton,SIGNAL(clicked()),mPlayListMainWindow,SLOT(showPlayList()));
connect(ui->browseButton,SIGNAL(clicked()),mBrowserMainWindow,SLOT(show()));
mFavouritesMainWindow->init();
}
+ void PlayerMainWindow::updateFromSettings()
+ {
+ #if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
+ switch (AppSettings::getOrientation()) {
+ case LANDSCAPE:
+ this->setAttribute(Qt::WA_Maemo5LandscapeOrientation, true);
+ break;
+ case PORTRAIT:
+ this->setAttribute(Qt::WA_Maemo5PortraitOrientation, true);
+ break;
+ case AUTO_ROTATE:
+ this->setAttribute(Qt::WA_Maemo5AutoOrientation, true);
+ break;
+ }
+ #endif
+ if (AppSettings::getShowAlbumArt()) {
+ this->mIsFirstStatusCall = true;
+ }
+ mTimer->start(AppSettings::getStatusPollTimeout());
+ }
+
void PlayerMainWindow::setPortrait()
{
#if defined(Q_WS_S60) || defined(Q_WS_MAEMO_5)
mNetManager->get(QNetworkRequest(QUrl("http://"+mIp+"/requests/status.xml?command=seek&val="+QString::number(value)+"%25")));
}
+ void PlayerMainWindow::showSettings()
+ {
+ SettingsDialog * dialog = new SettingsDialog(this);
+ connect(dialog, SIGNAL(closeSignal()), this, SLOT(updateFromSettings()));
+ dialog->exec();
+ }
void PlayerMainWindow::showConfig()
{
mTimer->stop();
ui->playpauseButton->setIcon(QIcon::fromTheme("camera_playback"));
}
- if (STOP == mCurrentStatus.state) {
+ if (STOP == mCurrentStatus.state || !AppSettings::getShowAlbumArt()) {
ui->labelArtPortrait->setVisible(false);
ui->labelArtLandscape->setVisible(false);
}
// potential actions:
// rebuild display layout
// retrieve album art
- mHasImage = false;
- QTimer::singleShot(AppSettings::getRetrieveArtTimeout(), mPlayListMainWindow, SLOT(requestPlayList()));
+ if (AppSettings::getShowAlbumArt()) {
+ mHasImage = false;
+ QTimer::singleShot(AppSettings::getRetrieveArtTimeout(), mPlayListMainWindow, SLOT(requestPlayList()));
+ }
}
// Update the buttons on the playlist window
if (NULL != this->mPlayListMainWindow) {
ui->labelArtPortrait->setVisible(true);
}
}
+ void PlayerMainWindow::closeEvent(QCloseEvent * event) {
+ if (!AppSettings::getAlertOnClose() || PLAYING != mCurrentStatus.state) {
+ event->accept();
+ }
+ else { // handle alert
+ if (QMessageBox::Yes == QMessageBox::question(this
+ , tr("Really quit?")
+ , tr("You currently have media playing on your remote machine. Are you sure you wish to quit vlc-remote?")
+ , QMessageBox::Yes | QMessageBox::No
+ , QMessageBox::No)) {
+ event->accept();
+ }
+ else {
+ event->ignore();
+ }
+ }
+ }