X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtopia%2Ftopicbar.h;h=9f00f53bebcb58c84470776765dcdb33a60f3d6d;hb=288bdd13039b6f94b50155982b74b67b0b79a9f9;hp=23afb1d6339828fc7e66a3e3a61cc3dd3175ed62;hpb=4e9a619ab2a22ce3c933fbb36122632debfd415a;p=quassel.git diff --git a/src/qtopia/topicbar.h b/src/qtopia/topicbar.h index 23afb1d6..9f00f53b 100644 --- a/src/qtopia/topicbar.h +++ b/src/qtopia/topicbar.h @@ -1,11 +1,11 @@ /*************************************************************************** - * Copyright (C) 2005-07 by The Quassel IRC Development Team * + * Copyright (C) 2005-08 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 * @@ -18,13 +18,13 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -#ifndef _TOPICBAR_H_ -#define _TOPICBAR_H_ +#ifndef TOPICBAR_H_ +#define TOPICBAR_H_ #include #include -#include +#include "buffermodel.h" class QPixmap; class QTimer; @@ -38,21 +38,33 @@ class TopicBar : public QPushButton { public slots: void setContents(QString text, bool oneshot = true); + void startScrolling(); + void stopScrolling(); protected: - virtual void paintEvent(QPaintEvent * event); + virtual void paintEvent(QPaintEvent *event); + virtual void resizeEvent (QResizeEvent *event); + private slots: void updateOffset(); + void dataChanged(const QModelIndex &, const QModelIndex &); + void currentChanged(const QModelIndex &, const QModelIndex &); private: + void calcTextMetrics(); + + BufferModel *_model; + QItemSelectionModel *_selectionModel; + QTimer *timer; int offset; int fillTextStart, secondTextStart; - QString text; + QString text, displayText; QString fillText; QFont topicFont; int frameWidth; + int textWidth; bool oneshot; };