X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatscene.h;h=b90de710d30b3f30b365cdef8ce23067892b6626;hp=12fc8c0f92974eb49c77125e3ebb7ddae1104b3a;hb=bc5aa95a2df7cbea81bb97345717c2763c9cf21d;hpb=e7494078ad676d9fd14fab0396f51608a3ad46dc diff --git a/src/qtui/chatscene.h b/src/qtui/chatscene.h index 12fc8c0f..b90de710 100644 --- a/src/qtui/chatscene.h +++ b/src/qtui/chatscene.h @@ -62,16 +62,17 @@ public: enum ClickMode { NoClick, + DragStartClick, SingleClick, DoubleClick, - TripleClick, - DragStartClick + TripleClick }; ChatScene(QAbstractItemModel *model, const QString &idString, qreal width, ChatView *parent); virtual ~ChatScene(); inline QAbstractItemModel *model() const { return _model; } + inline MessageFilter *filter() const { return qobject_cast(_model); } inline QString idString() const { return _idString; } int rowByScenePos(qreal y) const; @@ -81,10 +82,11 @@ public: ChatView *chatView() const; ChatItem *chatItemAt(const QPointF &pos) const; + inline ChatLine *chatLine(int row) { return (row < _lines.count()) ? _lines[row] : 0; } - inline bool isSingleBufferScene() const { return _singleBufferScene; } + inline bool isSingleBufferScene() const { return _singleBufferId.isValid(); } + inline BufferId singleBufferId() const { return _singleBufferId; } bool containsBuffer(const BufferId &id) const; - inline ChatLine *chatLine(int row) { return (row < _lines.count()) ? _lines[row] : 0; } ColumnHandleItem *firstColumnHandle() const; ColumnHandleItem *secondColumnHandle() const; @@ -114,6 +116,7 @@ public: void clearGlobalSelection(); void clearSelection(); void selectionToClipboard(QClipboard::Mode = QClipboard::Clipboard); + void stringToClipboard(const QString &str, QClipboard::Mode = QClipboard::Clipboard); void requestBacklog(); @@ -154,7 +157,7 @@ private: QString _idString; QAbstractItemModel *_model; QList _lines; - bool _singleBufferScene; + BufferId _singleBufferId; // calls to QChatScene::sceneRect() are very expensive. As we manage the scenerect ourselves // we store the size in a member variable.