X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.cpp;h=4bad7a0e5ef01efe4e849c9be2b4c2288a10c8ed;hp=99016158746f758cb0e45d724c29558ee1b65fe8;hb=2e6dc76ae100a6b8e1b1661e422995f90083500e;hpb=f6f6f3e368543f0a4dce1dae772f161d7e357064 diff --git a/src/client/networkmodel.cpp b/src/client/networkmodel.cpp index 99016158..4bad7a0e 100644 --- a/src/client/networkmodel.cpp +++ b/src/client/networkmodel.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-07 by the Quassel IRC Team * + * Copyright (C) 2005-08 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -22,7 +22,6 @@ #include "networkmodel.h" -#include "mappedselectionmodel.h" #include #include "bufferinfo.h" @@ -128,8 +127,8 @@ void BufferItem::setTopic(const QString &topic) { } void BufferItem::join(IrcUser *ircUser) { -// emit newChild(new IrcUserItem(ircUser, this)); -// emit dataChanged(2); + emit newChild(new IrcUserItem(ircUser, this)); + emit dataChanged(2); } void BufferItem::part(IrcUser *ircUser) { @@ -262,19 +261,8 @@ void IrcUserItem::ircUserDestroyed() { * NetworkModel *****************************************/ NetworkModel::NetworkModel(QObject *parent) - : TreeModel(NetworkModel::defaultHeader(), parent), - _selectionModelSynchronizer(new SelectionModelSynchronizer(this)), - _propertyMapper(new ModelPropertyMapper(this)) + : TreeModel(NetworkModel::defaultHeader(), parent) { - // initialize the Property Mapper - _propertyMapper->setModel(this); - delete _propertyMapper->selectionModel(); - MappedSelectionModel *mappedSelectionModel = new MappedSelectionModel(this); - _propertyMapper->setSelectionModel(mappedSelectionModel); - synchronizeSelectionModel(mappedSelectionModel); - - connect(_selectionModelSynchronizer, SIGNAL(setCurrentIndex(QModelIndex, QItemSelectionModel::SelectionFlags)), - this, SLOT(setCurrentIndex(QModelIndex, QItemSelectionModel::SelectionFlags))); } QListNetworkModel::defaultHeader() { @@ -283,22 +271,6 @@ QListNetworkModel::defaultHeader() { return data; } -void NetworkModel::synchronizeSelectionModel(MappedSelectionModel *selectionModel) { - selectionModelSynchronizer()->addSelectionModel(selectionModel); -} - -void NetworkModel::synchronizeView(QAbstractItemView *view) { - MappedSelectionModel *mappedSelectionModel = new MappedSelectionModel(view->model()); - selectionModelSynchronizer()->addSelectionModel(mappedSelectionModel); - Q_ASSERT(mappedSelectionModel); - delete view->selectionModel(); - view->setSelectionModel(mappedSelectionModel); -} - -void NetworkModel::mapProperty(int column, int role, QObject *target, const QByteArray &property) { - propertyMapper()->addMapping(column, role, target, property); -} - bool NetworkModel::isBufferIndex(const QModelIndex &index) const { return index.data(NetworkModel::ItemTypeRole) == NetworkModel::BufferItemType; } @@ -469,38 +441,13 @@ void NetworkModel::bufferUpdated(Buffer *buffer) { emit dataChanged(itemindex, itemindex); } -// This Slot indicates that the user has selected a different buffer in the gui -void NetworkModel::setCurrentIndex(const QModelIndex &index, QItemSelectionModel::SelectionFlags command) { - Q_UNUSED(command) - Buffer *newCurrentBuffer; - if(isBufferIndex(index) && currentBuffer != (newCurrentBuffer = getBufferByIndex(index))) { - currentBuffer = newCurrentBuffer; - bufferActivity(Buffer::NoActivity, currentBuffer); - emit bufferSelected(currentBuffer); - emit selectionChanged(index); - } -} - void NetworkModel::bufferActivity(Buffer::ActivityLevel level, Buffer *buf) { BufferItem *bufferItem = buffer(buf->bufferInfo()); if(!bufferItem) { qWarning() << "NetworkModel::bufferActivity(): received Activity Info for uknown Buffer"; return; } - - if(buf != currentBuffer) - bufferItem->setActivity(level); - else - bufferItem->setActivity(Buffer::NoActivity); + bufferItem->setActivity(level); bufferUpdated(buf); } -void NetworkModel::selectBuffer(Buffer *buffer) { - QModelIndex index = bufferIndex(buffer->bufferInfo()); - if(!index.isValid()) { - qWarning() << "NetworkModel::selectBuffer(): unknown Buffer has been selected."; - return; - } - // SUPER UGLY! - setCurrentIndex(index, 0); -}