diff options
| author | 2012-02-26 14:57:49 +0000 | |
|---|---|---|
| committer | 2012-02-26 14:57:49 +0000 | |
| commit | b2891fe17c395b885b4fac8634fa8cca1a45fbb6 (patch) | |
| tree | e9fcfdebc14137188b3cf02376fe90145d52943d /src/modules/reguser/RegisteredUsersDialog.cpp | |
| parent | Some mixed changes, mostly related to osx development: (diff) | |
| download | KVIrc-b2891fe17c395b885b4fac8634fa8cca1a45fbb6.tar.gz KVIrc-b2891fe17c395b885b4fac8634fa8cca1a45fbb6.tar.bz2 KVIrc-b2891fe17c395b885b4fac8634fa8cca1a45fbb6.zip | |
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
Diffstat (limited to 'src/modules/reguser/RegisteredUsersDialog.cpp')
| -rw-r--r-- | src/modules/reguser/RegisteredUsersDialog.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
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<QString,KviRegisteredUserGroup> * pGroups = g_pLocalRegisteredUserDataBase->groupDict(); - m_TmpDict.clear(); for(KviPointerHashTableEntry<QString,KviRegisteredUserGroup> * 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<QTreeWidgetItem *> list = m_pListView->selectedItems(); + QString szGroup=pAction->data().toString(); + + QList<QTreeWidgetItem *> list = m_pListView->selectedItems(); for(int i=0; i<list.count(); i++) { RegisteredUsersDialogItemBase* b=(RegisteredUsersDialogItemBase*)(list.at(i)); |
