aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/Ui/skinned/playlistbrowser.cpp22
-rw-r--r--src/plugins/Ui/skinned/playlistbrowser.h3
2 files changed, 23 insertions, 2 deletions
diff --git a/src/plugins/Ui/skinned/playlistbrowser.cpp b/src/plugins/Ui/skinned/playlistbrowser.cpp
index ed35dea81..981083124 100644
--- a/src/plugins/Ui/skinned/playlistbrowser.cpp
+++ b/src/plugins/Ui/skinned/playlistbrowser.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2009-2012 by Ilya Kotov *
+ * Copyright (C) 2009-2013 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -21,6 +21,7 @@
#include <QAction>
#include <QApplication>
#include <QStyle>
+#include <QKeyEvent>
#include <qmmpui/playlistmanager.h>
#include "playlistbrowser.h"
@@ -115,3 +116,22 @@ void PlayListBrowser::on_upButton_clicked()
if(pos > 0)
m_pl_manager->move(pos, pos - 1);
}
+
+void PlayListBrowser::keyPressEvent(QKeyEvent *e)
+{
+ if(e->key() == Qt::Key_Return)
+ {
+ QListWidgetItem *item = ui.listWidget->currentItem();
+ if(item)
+ {
+ disconnect(m_pl_manager, SIGNAL(playListsChanged()), this, SLOT(updateList()));
+ m_pl_manager->activatePlayList(ui.listWidget->row(item));
+ m_pl_manager->selectPlayList(ui.listWidget->row(item));
+ connect(m_pl_manager, SIGNAL(playListsChanged()), SLOT(updateList()));
+ updateList();
+ }
+ e->accept();
+ }
+ else
+ QDialog::keyPressEvent(e);
+}
diff --git a/src/plugins/Ui/skinned/playlistbrowser.h b/src/plugins/Ui/skinned/playlistbrowser.h
index 1d311a49e..f78680d4b 100644
--- a/src/plugins/Ui/skinned/playlistbrowser.h
+++ b/src/plugins/Ui/skinned/playlistbrowser.h
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2009 by Ilya Kotov *
+ * Copyright (C) 2009-2013 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -47,6 +47,7 @@ private slots:
void on_upButton_clicked();
private:
+ void keyPressEvent(QKeyEvent *e);
Ui::PlayListBrowser ui;
PlayListManager *m_pl_manager;
};