diff options
Diffstat (limited to 'application/pages/instance/ServersPage.cpp')
-rw-r--r-- | application/pages/instance/ServersPage.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/application/pages/instance/ServersPage.cpp b/application/pages/instance/ServersPage.cpp index 44ede664..c33eef1f 100644 --- a/application/pages/instance/ServersPage.cpp +++ b/application/pages/instance/ServersPage.cpp @@ -564,6 +564,9 @@ ServersPage::ServersPage(MinecraftInstance * inst, QWidget* parent) m_model = new ServersModel(inst->gameRoot(), this); ui->serversView->setIconSize(QSize(64,64)); ui->serversView->setModel(m_model); + ui->serversView->setContextMenuPolicy(Qt::CustomContextMenu); + connect(ui->serversView, &QTreeView::customContextMenuRequested, this, &ServersPage::ShowContextMenu); + auto head = ui->serversView->header(); if(head->count()) { @@ -596,6 +599,13 @@ ServersPage::~ServersPage() m_model->saveNow(); } +void ServersPage::ShowContextMenu(const QPoint& pos) +{ + auto menu = ui->toolBar->createContextMenu(this, tr("Context menu")); + menu->exec(ui->serversView->mapToGlobal(pos)); + delete menu; +} + QMenu * ServersPage::createPopupMenu() { QMenu* filteredMenu = QMainWindow::createPopupMenu(); |