aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/reguser/RegisteredUsersDialog.cpp
diff options
context:
space:
mode:
authorGravatar Fabio Bas2012-02-26 14:57:49 +0000
committerGravatar Fabio Bas2012-02-26 14:57:49 +0000
commitb2891fe17c395b885b4fac8634fa8cca1a45fbb6 (patch)
treee9fcfdebc14137188b3cf02376fe90145d52943d /src/modules/reguser/RegisteredUsersDialog.cpp
parentSome mixed changes, mostly related to osx development: (diff)
downloadKVIrc-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.cpp20
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));