diff options
author | Forkk <forkk@forkk.net> | 2014-01-04 19:47:28 -0600 |
---|---|---|
committer | Forkk <forkk@forkk.net> | 2014-01-04 19:47:28 -0600 |
commit | ee02eecfdce40f28aaff4e21edb6be0921d8702a (patch) | |
tree | b39f9c3cefaa4ee9454b091cd74386982344a587 /gui/MainWindow.cpp | |
parent | d30962bf00b491f3cc23c505b6597c7618ddcd8c (diff) | |
parent | ffacaba1aaa5250a7ebac03059ec8c5c0bb070ad (diff) | |
download | MultiMC-ee02eecfdce40f28aaff4e21edb6be0921d8702a.tar MultiMC-ee02eecfdce40f28aaff4e21edb6be0921d8702a.tar.gz MultiMC-ee02eecfdce40f28aaff4e21edb6be0921d8702a.tar.lz MultiMC-ee02eecfdce40f28aaff4e21edb6be0921d8702a.tar.xz MultiMC-ee02eecfdce40f28aaff4e21edb6be0921d8702a.zip |
Merge branch 'develop' of github.com:MultiMC/MultiMC5 into develop
Diffstat (limited to 'gui/MainWindow.cpp')
-rw-r--r-- | gui/MainWindow.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gui/MainWindow.cpp b/gui/MainWindow.cpp index cb9171f1..d1119028 100644 --- a/gui/MainWindow.cpp +++ b/gui/MainWindow.cpp @@ -166,6 +166,10 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWi view->setFrameShape(QFrame::NoFrame); view->setModel(proxymodel); + view->setContextMenuPolicy(Qt::CustomContextMenu); + connect(view, SIGNAL(customContextMenuRequested(const QPoint&)), + this, SLOT(showInstanceContextMenu(const QPoint&))); + ui->horizontalLayout->addWidget(view); } // The cat background @@ -315,6 +319,29 @@ MainWindow::~MainWindow() delete drawer; } +void MainWindow::showInstanceContextMenu(const QPoint& pos) +{ + if(!view->indexAt(pos).isValid()) + { + return; + } + + QList<QAction *> actions = ui->instanceToolBar->actions(); + + // HACK: Filthy rename button hack because the instance view is getting rewritten anyway + QAction *actionRename; + actionRename = new QAction(tr("Rename"), this); + actionRename->setToolTip(ui->actionRenameInstance->toolTip()); + + connect(actionRename, SIGNAL(triggered(bool)), SLOT(on_actionRenameInstance_triggered())); + + actions.replace(1, actionRename); + + QMenu myMenu; + myMenu.addActions(actions); + myMenu.exec(view->mapToGlobal(pos)); +} + void MainWindow::repopulateAccountsMenu() { accountMenu->clear(); |