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 *deVoiceAction = modeMenu->addAction(tr("Devoice %1").arg(nick));
QMenu *kickBanMenu = nickContextMenu.addMenu(tr("Kick/Ban"));
+ //TODO: add kick message from network identity (kick reason)
QAction *kickAction = kickBanMenu->addAction(tr("Kick %1").arg(nick));
QAction *kickBanAction = kickBanMenu->addAction(tr("Kickban %1").arg(nick));
+ kickBanMenu->setEnabled(false);
QAction *ignoreAction = nickContextMenu.addAction(tr("Ignore"));
ignoreAction->setEnabled(false);
void NickView::executeCommand(const BufferInfo & bufferInfo, const QString & command) {
Client::instance()->userInput(bufferInfo, command);
}
+
+QSize NickView::sizeHint() const {
+ if(!model())
+ return QTreeView::sizeHint();
+
+ int columnSize = 0;
+ for(int i = 0; i < model()->columnCount(); i++) {
+ if(!isColumnHidden(i))
+ columnSize += sizeHintForColumn(i);
+ }
+
+ return QSize(columnSize, 50);
+}