[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [amarok/spotify] src/core-impl/collections/spotifycollection: SpotifyDownloadDialog WIP.
From: Bart Cerneels <bart.cerneels () kde ! org>
Date: 2012-11-07 17:16:24
Message-ID: 20121107171624.D0DE7A60C8 () git ! kde ! org
[Download RAW message or body]
Git commit cabd4ed94a2a2c8c38fbc3ab711cac299ce9bb4b by Bart Cerneels.
Committed on 07/11/2012 at 16:44.
Pushed by shanachie into branch 'spotify'.
SpotifyDownloadDialog WIP.
M +3 -4 src/core-impl/collections/spotifycollection/SpotifyCollection.cpp
M +18 -0 src/core-impl/collections/spotifycollection/SpotifyDownloadDialog.ui
M +21 -29 src/core-impl/collections/spotifycollection/SpotifySettingsDialog.cpp
M +2 -2 src/core-impl/collections/spotifycollection/SpotifySettingsDialog.h
http://commits.kde.org/amarok/cabd4ed94a2a2c8c38fbc3ab711cac299ce9bb4b
diff --git a/src/core-impl/collections/spotifycollection/SpotifyCollection.cpp \
b/src/core-impl/collections/spotifycollection/SpotifyCollection.cpp index \
3b47a67..543050a 100644
--- a/src/core-impl/collections/spotifycollection/SpotifyCollection.cpp
+++ b/src/core-impl/collections/spotifycollection/SpotifyCollection.cpp
@@ -400,11 +400,10 @@ namespace Collections
void
SpotifyCollection::slotConfigure()
{
- // settingDialog will be deleted after closed
- SpotifySettingsDialog* settingDialog = new SpotifySettingsDialog;
- settingDialog->setModal( true );
+ SpotifySettingsDialog settingDialog;
+ settingDialog.setModal( true );
// This will return immediately
- settingDialog->show();
+ settingDialog.exec();
}
void
diff --git a/src/core-impl/collections/spotifycollection/SpotifyDownloadDialog.ui \
b/src/core-impl/collections/spotifycollection/SpotifyDownloadDialog.ui index \
77d380e..9a1e65c 100644
--- a/src/core-impl/collections/spotifycollection/SpotifyDownloadDialog.ui
+++ b/src/core-impl/collections/spotifycollection/SpotifyDownloadDialog.ui
@@ -27,6 +27,16 @@
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
+ <widget class="KMessageWidget" name="messageWidget">
+ <property name="frameShape">
+ <enum>QFrame::StyledPanel</enum>
+ </property>
+ <property name="frameShadow">
+ <enum>QFrame::Raised</enum>
+ </property>
+ </widget>
+ </item>
+ <item>
<widget class="QLabel" name="messageLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
@@ -133,6 +143,14 @@ p, li { white-space: pre-wrap; }
</item>
</layout>
</widget>
+ <customwidgets>
+ <customwidget>
+ <class>KMessageWidget</class>
+ <extends>QFrame</extends>
+ <header location="global">kmessagewidget.h</header>
+ <container>1</container>
+ </customwidget>
+ </customwidgets>
<resources/>
<connections/>
</ui>
diff --git a/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.cpp \
b/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.cpp index \
3274f62..9f0d264 100644
--- a/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.cpp
+++ b/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.cpp
@@ -34,16 +34,29 @@
#include <QScopedPointer>
#include <QtGlobal>
-SpotifySettingsDialog::SpotifySettingsDialog( QWidget* parent, const QVariantList& \
args ) +SpotifySettingsDialog::SpotifySettingsDialog( QWidget *parent )
: KDialog( parent )
, m_settingsWidget(new Ui::SpotifySettingsWidget)
, m_downloadReply( 0 )
{
- DEBUG_BLOCK
-
- Q_UNUSED( args )
-
- debug() << "Creating Spotify settings object...";
+ debug() << "Checking Spotify resolver: " << m_config.resolverPath();
+ if( !QFile::exists( m_config.resolverPath() ) )
+ {
+ QDialog dialog;
+ m_downloadDialog = new Ui::SpotifyDownloadDialog;
+ m_downloadDialog->setupUi(&dialog);
+ m_config.reset();
+ connect(m_downloadDialog->buttonBox, SIGNAL(accepted()),
+ SLOT(tryDownloadResolver()));
+ if( SpotifyConfig::supportedPlatformName().isEmpty() )
+ {
+ m_downloadDialog->messageWidget->setText(i18n( "Your platform is not \
currently " + "supported by Amarok Spotify \
resolver." )); + m_downloadDialog->messageWidget->animatedShow();
+ m_downloadDialog->buttonBox->setEnabled(false);
+ }
+ dialog.exec();
+ }
setCaption( i18n( "Spotify configuration" ) );
setButtons( KDialog::Ok | KDialog::Cancel | KDialog::Apply | KDialog::Default );
@@ -74,22 +87,6 @@ SpotifySettingsDialog::SpotifySettingsDialog( QWidget* parent, \
const QVariantLis
// Load config from KConfig or KWallet
load();
-
- debug() << "Checking Spotify resolver: " << m_config.resolverPath();
- if( !QFile::exists( m_config.resolverPath() ) )
- {
- if( SpotifyConfig::supportedPlatformName().isEmpty() )
- {
- m_settingsWidget->messageWidget->setText(i18n( "Your platform is not \
currently "
- "supported by Amarok Spotify resolver." \
));
- m_settingsWidget->messageWidget->animatedShow();
- }
-
- m_downloadDialog = new Ui::SpotifyDownloadDialog;
- m_config.reset();
- connect(m_downloadDialog->buttonBox, SIGNAL(accepted()),
- SLOT(tryDownloadResolver()));
- }
}
SpotifySettingsDialog::~SpotifySettingsDialog()
@@ -143,7 +140,7 @@ SpotifySettingsDialog::slotTryLogin()
connect(controller, SIGNAL(customMessage(QString,QVariantMap)),
SLOT(slotCustomMessage(QString,QVariantMap)));
connect(controller, SIGNAL(loginSuccess(QString)), \
SLOT(slotLoginSuccess(QString)));
- connect(controller, SIGNAL(loginFailed(QString)), \
SLOT(slotLogonFailed(QString))); + connect(controller, \
SIGNAL(loginFailed(QString)), SLOT(slotLoginFailed(QString)));
controller->login( m_settingsWidget->lineUsername->text(),
m_settingsWidget->linePassword->text(),
@@ -158,7 +155,7 @@ void SpotifySettingsDialog::slotLoginSuccess(const QString \
&username) m_settingsWidget->messageWidget->animatedShow();
}
-void SpotifySettingsDialog::slotLogonFailed(const QString &message)
+void SpotifySettingsDialog::slotLoginFailed(const QString &message)
{
//TODO: translate message
m_settingsWidget->messageWidget->setText(message);
@@ -202,11 +199,6 @@ SpotifySettingsDialog::tryDownloadResolver()
m_downloadDialog->progDownload->setMinimum( 0 );
m_downloadDialog->progDownload->setMaximum( 1000 );
m_downloadDialog->progDownload->setValue( 0 );
- m_downloadDialog->progDownload->show();
-
- enableButtonApply( false );
- enableButtonOk( false );
- enableButton( Default, false );
}
void
diff --git a/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.h \
b/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.h index \
a486eb1..9232997 100644
--- a/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.h
+++ b/src/core-impl/collections/spotifycollection/SpotifySettingsDialog.h
@@ -34,7 +34,7 @@ class SpotifySettingsDialog: public KDialog
Q_OBJECT
public:
- explicit SpotifySettingsDialog( QWidget *parent = 0, const QVariantList &args = \
QVariantList() ); + explicit SpotifySettingsDialog( QWidget *parent = 0 );
virtual ~SpotifySettingsDialog();
signals:
@@ -50,7 +50,7 @@ public Q_SLOTS:
private Q_SLOTS:
void slotTryLogin();
void slotLoginSuccess(const QString &user);
- void slotLogonFailed(const QString &message);
+ void slotLoginFailed(const QString &message);
void slotCustomMessage(const QString &messageType, const QVariantMap &map);
void slotDownloadError( QNetworkReply::NetworkError error );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic