Project

General

Profile

02-channel-modes-title.patch

xeross, 05/03/2012 02:59 AM

View differences:

src/client/networkmodel.cpp
562 562
  removeAllChilds();
563 563
}
564 564

  
565
IrcChannel *ChannelBufferItem::getChannel() {
566
    return _ircChannel;
567
}
568

  
565 569
void ChannelBufferItem::join(const QList<IrcUser *> &ircUsers) {
566 570
  addUsersToCategory(ircUsers);
567 571
  emit dataChanged(2);
src/client/networkmodel.h
188 188
  virtual inline int nickCount() const { return (bool)_ircChannel ? _ircChannel->ircUsers().count() : 0; }
189 189

  
190 190
  void attachIrcChannel(IrcChannel *ircChannel);
191
  IrcChannel *getChannel();
191 192

  
192 193
public slots:
193 194
  void join(const QList<IrcUser *> &ircUsers);
......
327 328
  inline QList<BufferId> allBufferIds() const { return _bufferItemCache.keys(); }
328 329
  QList<BufferId> allBufferIdsSorted() const;
329 330
  void sortBufferIds(QList<BufferId> &bufferIds) const;
331
  BufferItem *findBufferItem(BufferId bufferId) const;
330 332

  
331 333
public slots:
332 334
  void bufferUpdated(BufferInfo bufferInfo);
......
354 356
  NetworkItem *findNetworkItem(NetworkId networkId) const;
355 357
  NetworkItem *networkItem(NetworkId networkId);
356 358
  inline BufferItem *findBufferItem(const BufferInfo &bufferInfo) const { return findBufferItem(bufferInfo.bufferId()); }
357
  BufferItem *findBufferItem(BufferId bufferId) const;
358 359
  BufferItem *bufferItem(const BufferInfo &bufferInfo);
359 360

  
360 361
  void updateBufferActivity(BufferItem *bufferItem, const Message &msg);
src/qtui/titlesetter.cpp
51 51
  QString title;
52 52
  if(Client::networkModel()->bufferType(id) == BufferInfo::StatusBuffer)
53 53
    title = index.data().toString();
54
  else if(Client::networkModel()->bufferType(id) == BufferInfo::ChannelBuffer)
55
  {
56
    BufferItem *item = Client::networkModel()->findBufferItem(id);
57
    ChannelBufferItem *channelItem = static_cast<ChannelBufferItem *>(item);
58
    IrcChannel *channel = channelItem->getChannel();
59
    if(!channel)
60
        title = QString("%1 (%2)").arg(index.data().toString(), Client::networkModel()->networkName(id));
61
    else
62
        title = QString("%1 (%2) (%3)").arg(index.data().toString(), Client::networkModel()->networkName(id), channel->channelModeString().trimmed());
63
  }
54 64
  else
55 65
    title = QString("%1 (%2)").arg(index.data().toString(), Client::networkModel()->networkName(id));
56 66
  QString newTitle = QString("%1 - %2").arg("Quassel IRC").arg(title);
57
-