/***************************************************************************
- * Copyright (C) 2005/06 by The Quassel Team *
+ * Copyright (C) 2005/06 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
#include <QtGui>
-class ChatLine;
+#include "types.h"
+
+class ChatLineOld;
class AbstractUiMsg;
//!\brief Scroll area showing part of the chat messages for a given buffer.
public:
ChatWidget(QWidget *parent = 0);
~ChatWidget();
- void init(QString net, QString buf);
+ void init(BufferId id);
+ virtual QSize minimumSizeHint() const;
virtual QSize sizeHint() const;
public slots:
void prependMsg(AbstractUiMsg *);
void appendMsg(AbstractUiMsg *);
- void prependChatLine(ChatLine *);
- void appendChatLine(ChatLine *);
- void prependChatLines(QList<ChatLine *>);
- void appendChatLines(QList<ChatLine *>);
- void setContents(QList<ChatLine *>);
+ void prependChatLine(ChatLineOld *);
+ void appendChatLine(ChatLineOld *);
+ void prependChatLines(QList<ChatLineOld *>);
+ void appendChatLines(QList<ChatLineOld *>);
+ void setContents(QList<ChatLineOld *>);
protected:
virtual void resizeEvent(QResizeEvent *event);
void handleScrollTimer();
private:
- QString networkName, bufferName;
+ BufferId bufferId;
enum SelectionMode { NoSelection, TextSelected, LinesSelected };
enum MouseMode { Normal, Pressed, DragTsSep, DragTextSep, MarkText, MarkLines };
enum MousePos { None, OverTsSep, OverTextSep, OverUrl };
int bottomLine, bottomLineOffset;
- QList<ChatLine *> lines;
+ QList<ChatLineOld *> lines;
QList<qreal> ycoords;
QTimer *scrollTimer;
QPoint pointerPosition;