X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fnetworkmodel.cpp;h=4bad7a0e5ef01efe4e849c9be2b4c2288a10c8ed;hp=85cc23d685f78b718e250a01bbab7f34caa02a6c;hb=2f05c5d7e94d5e96d2b4bae59140fd3b60a7a62f;hpb=8699dd758516d0ded076811e8ea656adc95e69d0 diff --git a/src/client/networkmodel.cpp b/src/client/networkmodel.cpp index 85cc23d6..4bad7a0e 100644 --- a/src/client/networkmodel.cpp +++ b/src/client/networkmodel.cpp @@ -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); -}