Revert back to single context menu.
This commit is contained in:
@@ -708,7 +708,7 @@ MainWindow::MainWindow(QWidget *parent)
|
||||
|
||||
playQueueProxyModel.setSourceModel(&playQueueModel);
|
||||
playQueue->setModel(&playQueueProxyModel);
|
||||
playQueue->addAction(playQueue->removeFromAct(), true);
|
||||
playQueue->addAction(playQueue->removeFromAct());
|
||||
ratingAction=new Action(i18n("Set Rating"), this);
|
||||
ratingAction->setMenu(new QMenu(0));
|
||||
for (int i=0; i<((Song::Rating_Max/Song::Rating_Step)+1); ++i) {
|
||||
@@ -725,14 +725,16 @@ MainWindow::MainWindow(QWidget *parent)
|
||||
ratingAction->menu()->addAction(action);
|
||||
connect(action, SIGNAL(triggered(bool)), SLOT(setRating()));
|
||||
}
|
||||
playQueue->addAction(ratingAction, true);
|
||||
playQueue->addAction(setPriorityAction, true);
|
||||
playQueue->addAction(stopAfterTrackAction, true);
|
||||
playQueue->addAction(locateTrackAction, true);
|
||||
playQueue->addAction(ratingAction);
|
||||
playQueue->addAction(setPriorityAction);
|
||||
playQueue->addAction(stopAfterTrackAction);
|
||||
playQueue->addAction(locateTrackAction);
|
||||
#ifdef TAGLIB_FOUND
|
||||
playQueue->addAction(editPlayQueueTagsAction, true);
|
||||
playQueue->addAction(editPlayQueueTagsAction);
|
||||
#endif
|
||||
playQueue->addSeparator();
|
||||
Action *sep=new Action(this);
|
||||
sep->setSeparator(true);
|
||||
playQueue->addAction(sep);
|
||||
playQueue->addAction(playQueueModel.removeDuplicatesAct());
|
||||
playQueue->addAction(promptClearPlayQueueAction);
|
||||
playQueue->addAction(cropPlayQueueAction);
|
||||
|
||||
@@ -42,7 +42,6 @@
|
||||
#include <QFile>
|
||||
#include <QPainter>
|
||||
#include <QApplication>
|
||||
#include <QMenu>
|
||||
#include <qglobal.h>
|
||||
|
||||
// Exported by QtGui
|
||||
@@ -128,8 +127,6 @@ void PlayQueueGroupedView::paintEvent(QPaintEvent *e)
|
||||
|
||||
PlayQueueView::PlayQueueView(QWidget *parent)
|
||||
: QStackedWidget(parent)
|
||||
, contextMenu(0)
|
||||
, selectContextMenu(0)
|
||||
, mode(ItemView::Mode_Count)
|
||||
, groupedView(0)
|
||||
, treeView(0)
|
||||
@@ -215,28 +212,26 @@ void PlayQueueView::setMode(ItemView::Mode m)
|
||||
case ItemView::Mode_GroupedTree:
|
||||
if (!groupedView) {
|
||||
groupedView=new PlayQueueGroupedView(this);
|
||||
groupedView->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
groupedView->setIndentation(0);
|
||||
groupedView->setItemsExpandable(false);
|
||||
groupedView->setExpandsOnDoubleClick(false);
|
||||
groupedView->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
groupedView->installFilter(new KeyEventHandler(groupedView, removeFromAction));
|
||||
addWidget(groupedView);
|
||||
connect(groupedView, SIGNAL(itemsSelected(bool)), SIGNAL(itemsSelected(bool)));
|
||||
connect(groupedView, SIGNAL(doubleClicked(const QModelIndex &)), SIGNAL(doubleClicked(const QModelIndex &)));
|
||||
connect(groupedView, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showMenu(QPoint)));
|
||||
updatePalette();
|
||||
}
|
||||
break;
|
||||
case ItemView::Mode_Table:
|
||||
if (!treeView) {
|
||||
treeView=new PlayQueueTreeView(this);
|
||||
treeView->setContextMenuPolicy(Qt::CustomContextMenu);
|
||||
treeView->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
treeView->installFilter(new KeyEventHandler(treeView, removeFromAction));
|
||||
treeView->initHeader();
|
||||
addWidget(treeView);
|
||||
connect(treeView, SIGNAL(itemsSelected(bool)), SIGNAL(itemsSelected(bool)));
|
||||
connect(treeView, SIGNAL(doubleClicked(const QModelIndex &)), SIGNAL(doubleClicked(const QModelIndex &)));
|
||||
connect(treeView, SIGNAL(customContextMenuRequested(QPoint)), SLOT(showMenu(QPoint)));
|
||||
updatePalette();
|
||||
}
|
||||
default:
|
||||
@@ -319,28 +314,9 @@ QModelIndex PlayQueueView::indexAt(const QPoint &point)
|
||||
return view()->indexAt(point);
|
||||
}
|
||||
|
||||
void PlayQueueView::addAction(QAction *a, bool withSelectionOnly)
|
||||
void PlayQueueView::addAction(QAction *a)
|
||||
{
|
||||
if (!contextMenu) {
|
||||
contextMenu=new QMenu(this);
|
||||
}
|
||||
if (!selectContextMenu) {
|
||||
selectContextMenu=new QMenu(this);
|
||||
}
|
||||
if (!withSelectionOnly) {
|
||||
contextMenu->addAction(a);
|
||||
}
|
||||
selectContextMenu->addAction(a);
|
||||
}
|
||||
|
||||
void PlayQueueView::addSeparator()
|
||||
{
|
||||
if (contextMenu) {
|
||||
contextMenu->addSeparator();
|
||||
}
|
||||
if (selectContextMenu) {
|
||||
selectContextMenu->addSeparator();
|
||||
}
|
||||
view()->addAction(a);
|
||||
}
|
||||
|
||||
void PlayQueueView::setFocus()
|
||||
@@ -512,15 +488,6 @@ void PlayQueueView::streamFetchStatus(const QString &msg)
|
||||
msgOverlay->setText(msg);
|
||||
}
|
||||
|
||||
void PlayQueueView::showMenu(const QPoint &p)
|
||||
{
|
||||
if (haveSelectedItems()) {
|
||||
selectContextMenu->popup(view()->mapToGlobal(p));
|
||||
} else {
|
||||
contextMenu->popup(view()->mapToGlobal(p));
|
||||
}
|
||||
}
|
||||
|
||||
void PlayQueueView::drawBackdrop(QWidget *widget, const QSize &size)
|
||||
{
|
||||
if (BI_None==backgroundImageType) {
|
||||
|
||||
@@ -41,7 +41,6 @@ class QAction;
|
||||
class Action;
|
||||
class QItemSelectionModel;
|
||||
class QModelIndex;
|
||||
class QMenu;
|
||||
class Spinner;
|
||||
class PlayQueueView;
|
||||
class MessageOverlay;
|
||||
@@ -95,8 +94,7 @@ public:
|
||||
void scrollTo(const QModelIndex &index, QAbstractItemView::ScrollHint hint);
|
||||
QModelIndex indexAt(const QPoint &point);
|
||||
void setModel(QAbstractItemModel *m) { view()->setModel(m); }
|
||||
void addAction(QAction *a, bool withSelectionOnly=false);
|
||||
void addSeparator();
|
||||
void addAction(QAction *a);
|
||||
void setFocus();
|
||||
bool hasFocus();
|
||||
QAbstractItemModel * model() { return view()->model(); }
|
||||
@@ -119,9 +117,6 @@ public Q_SLOTS:
|
||||
void setImage(const QImage &img);
|
||||
void streamFetchStatus(const QString &msg);
|
||||
|
||||
private Q_SLOTS:
|
||||
void showMenu(const QPoint &p);
|
||||
|
||||
Q_SIGNALS:
|
||||
void itemsSelected(bool);
|
||||
void doubleClicked(const QModelIndex &);
|
||||
@@ -132,8 +127,6 @@ private:
|
||||
void drawBackdrop(QWidget *widget, const QSize &size);
|
||||
|
||||
private:
|
||||
QMenu *contextMenu;
|
||||
QMenu *selectContextMenu;
|
||||
Action *removeFromAction;
|
||||
ItemView::Mode mode;
|
||||
PlayQueueGroupedView *groupedView;
|
||||
|
||||
Reference in New Issue
Block a user