X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatline.h;h=20afe66fc09e7df11232a2cfb56e2e8438e8d374;hp=dcf2e410107eaa27765d28b1494783328c057f8c;hb=61e0633ce94a38e669382c29db498f335d2e0fa8;hpb=c74675fde7e2082dce1a6e4c4281308b946c49d9 diff --git a/src/qtui/chatline.h b/src/qtui/chatline.h index dcf2e410..20afe66f 100644 --- a/src/qtui/chatline.h +++ b/src/qtui/chatline.h @@ -25,6 +25,7 @@ #include "chatlinemodel.h" #include "chatitem.h" +#include "chatscene.h" class ChatLine : public QGraphicsItem { public: @@ -51,11 +52,14 @@ public: inline ContentsChatItem &contentsItem() { return _contentsItem; } virtual void paint (QPainter * painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); + enum { Type = ChatScene::ChatLineType }; + virtual inline int type() const { return Type; } - // setColumns and setGeometryByWidth both return height - qreal setColumns(const qreal ×tampWidth, const qreal &senderWidth, const qreal &contentsWidth, - const QPointF &senderPos, const QPointF &contentsPos); - qreal setGeometryByWidth(const qreal &width, const qreal &contentsWidth); + void setFirstColumn(const qreal ×tampWidth, const qreal &senderWidth, const QPointF &senderPos); + // setSecondColumn and setGeometryByWidth both also relocate the chatline. + // the _bottom_ position is passed via linePos. linePos is updated to the top of the chatLine. + void setSecondColumn(const qreal &senderWidth, const qreal &contentsWidth, const QPointF &contentsPos, qreal &linePos); + void setGeometryByWidth(const qreal &width, const qreal &contentsWidth, qreal &linePos); void setSelected(bool selected, ChatLineModel::ColumnType minColumn = ChatLineModel::ContentsColumn); void setHighlighted(bool highlighted);