diff --git a/src/libtomahawk/widgets/newplaylistwidget.cpp b/src/libtomahawk/widgets/newplaylistwidget.cpp index e01c35e38..5d563b8f8 100644 --- a/src/libtomahawk/widgets/newplaylistwidget.cpp +++ b/src/libtomahawk/widgets/newplaylistwidget.cpp @@ -23,12 +23,14 @@ NewPlaylistWidget::NewPlaylistWidget( QWidget* parent ) { ui->setupUi( this ); - QPushButton* saveButton = new QPushButton( tr( "&Create Playlist" ) ); - saveButton->setDefault( true ); + m_saveButton = new QPushButton( tr( "&Create Playlist" ) ); + m_saveButton->setDefault( true ); + m_saveButton->setEnabled( false ); - ui->buttonBox->addButton( saveButton, QDialogButtonBox::AcceptRole ); + ui->buttonBox->addButton( m_saveButton, QDialogButtonBox::AcceptRole ); - connect( ui->tagEdit, SIGNAL( textChanged( QString ) ), SLOT( tagChanged() ) ); + connect( ui->titleEdit, SIGNAL( textChanged( QString ) ), SLOT( onTitleChanged( QString ) ) ); + connect( ui->tagEdit, SIGNAL( textChanged( QString ) ), SLOT( onTagChanged() ) ); connect( ui->buttonBox, SIGNAL( accepted() ), SLOT( savePlaylist() ) ); connect( ui->buttonBox, SIGNAL( rejected() ), SLOT( cancel() ) ); @@ -62,7 +64,14 @@ NewPlaylistWidget::changeEvent( QEvent* e ) void -NewPlaylistWidget::tagChanged() +NewPlaylistWidget::onTitleChanged( const QString& title ) +{ + m_saveButton->setEnabled( !title.isEmpty() ); +} + + +void +NewPlaylistWidget::onTagChanged() { m_tag = ui->tagEdit->text(); diff --git a/src/libtomahawk/widgets/newplaylistwidget.h b/src/libtomahawk/widgets/newplaylistwidget.h index 36a6c9e67..f19590aa7 100644 --- a/src/libtomahawk/widgets/newplaylistwidget.h +++ b/src/libtomahawk/widgets/newplaylistwidget.h @@ -10,6 +10,7 @@ #include "dllmacro.h" +class QPushButton; class PlaylistModel; namespace Ui @@ -32,7 +33,9 @@ signals: void destroyed( QWidget* widget ); private slots: - void tagChanged(); + void onTitleChanged( const QString& title ); + void onTagChanged(); + void updateSuggestions(); void suggestionsFound(); @@ -47,6 +50,7 @@ private: QTimer m_filterTimer; QString m_tag; + QPushButton* m_saveButton; }; #endif // NEWPLAYLISTWIDGET_H