From b2891fe17c395b885b4fac8634fa8cca1a45fbb6 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Sun, 26 Feb 2012 14:57:49 +0000 Subject: Dropped the KviTalPopupMenu layer, ported the involved code to QAction. This fixes most of the random crashes on osx, and is the base for a next change in the menubar. Addiotional fix: "disconnect" menu entry was broken since the 3.x era git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@6072 17fca916-40b9-46aa-a4ea-0a15b648b75c --- src/modules/reguser/RegisteredUsersDialog.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'src/modules/reguser/RegisteredUsersDialog.cpp') diff --git a/src/modules/reguser/RegisteredUsersDialog.cpp b/src/modules/reguser/RegisteredUsersDialog.cpp index 3b2f1c068..3cf8efcee 100644 --- a/src/modules/reguser/RegisteredUsersDialog.cpp +++ b/src/modules/reguser/RegisteredUsersDialog.cpp @@ -469,29 +469,29 @@ void RegisteredUsersDialog::rightButtonPressed ( QTreeWidgetItem * pItem, QPoint RegisteredUsersDialogItemBase* b=(RegisteredUsersDialogItemBase*)pItem; if(b->type()==RegisteredUsersDialogItemBase::User) { - KviTalPopupMenu *groups = new KviTalPopupMenu; + QMenu *groups = new QMenu; KviPointerHashTable * pGroups = g_pLocalRegisteredUserDataBase->groupDict(); - m_TmpDict.clear(); for(KviPointerHashTableEntry * g = pGroups->firstEntry();g;g = pGroups->nextEntry()) { - int id=groups->insertItem(g->key()); - m_TmpDict.replace(id,g->data()); + groups->addAction(g->key()) + ->setData(g->data()->name()); } - connect(groups,SIGNAL(activated ( int )),this,SLOT(moveToGroupMenuClicked(int))); + connect(groups,SIGNAL(triggered(QAction *)),this,SLOT(moveToGroupMenuClicked(QAction *))); - KviTalPopupMenu *mainPopup = new KviTalPopupMenu; - mainPopup->insertItem(__tr2qs_ctx("Move to group","register"),groups); + QMenu *mainPopup = new QMenu; + mainPopup->addAction(__tr2qs_ctx("Move to group","register"))->setMenu(groups); mainPopup->exec(pnt); } } } -void RegisteredUsersDialog::moveToGroupMenuClicked(int id) +void RegisteredUsersDialog::moveToGroupMenuClicked(QAction *pAction) { - QString szGroup=(*(m_TmpDict.find(id)))->name(); - QList list = m_pListView->selectedItems(); + QString szGroup=pAction->data().toString(); + + QList list = m_pListView->selectedItems(); for(int i=0; i