-QString NickView::nickFromModelIndex(const QModelIndex & index) {
- QString nick = index.sibling(index.row(), 0).data().toString();
- return nick;
-}
-
-BufferInfo NickView::bufferInfoFromModelIndex(const QModelIndex & index) {
- BufferInfo bufferInfo = index.data(NetworkModel::BufferInfoRole).value<BufferInfo>();
- return bufferInfo;
-}
-
-void NickView::showContextMenu(const QPoint & pos ) {
- QModelIndex index = indexAt(pos);
- if(index.data(NetworkModel::ItemTypeRole) != NetworkModel::IrcUserItemType) return;
-
- QString nick = nickFromModelIndex(index);
-
- QMenu nickContextMenu(this);
-
- QAction *whoisAction = nickContextMenu.addAction(tr("WHOIS"));
- QAction *versionAction = nickContextMenu.addAction(tr("VERSION"));
- QAction *pingAction = nickContextMenu.addAction(tr("PING"));
-
- nickContextMenu.addSeparator();
-
- QMenu *modeMenu = nickContextMenu.addMenu(tr("Modes"));
- QAction *opAction = modeMenu->addAction(tr("Op %1").arg(nick));
- QAction *deOpAction = modeMenu->addAction(tr("Deop %1").arg(nick));
- QAction *voiceAction = modeMenu->addAction(tr("Voice %1").arg(nick));
- QAction *deVoiceAction = modeMenu->addAction(tr("Devoice %1").arg(nick));
-
- QMenu *kickBanMenu = nickContextMenu.addMenu(tr("Kick/Ban"));
- QAction *kickAction = kickBanMenu->addAction(tr("Kick %1").arg(nick));
- QAction *banAction = kickBanMenu->addAction(tr("Ban %1").arg(nick));
- QAction *kickBanAction = kickBanMenu->addAction(tr("Kickban %1").arg(nick));
- QAction *ignoreAction = nickContextMenu.addAction(tr("Ignore"));
- ignoreAction->setEnabled(false);
-
- nickContextMenu.addSeparator();