X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Ftopicwidget.h;h=5933d5e2c7b022037bd98488f0e8d4e21f38ea1a;hb=d42123b2f56292e10bf4ad4a710950149af824d0;hp=f899a2baa30c721f3c0feeff25d04b0e588eab2d;hpb=dcba0652ac1275877b98b06d6482924ee6df0cd1;p=quassel.git diff --git a/src/qtui/topicwidget.h b/src/qtui/topicwidget.h index f899a2ba..5933d5e2 100644 --- a/src/qtui/topicwidget.h +++ b/src/qtui/topicwidget.h @@ -21,28 +21,37 @@ #ifndef _TOPICWIDGET_H_ #define _TOPICWIDGET_H_ -#include +#include "abstractitemview.h" #include "ui_topicwidget.h" -class TopicWidget : public QWidget { +class TopicWidget : public AbstractItemView { Q_OBJECT - Q_PROPERTY(QString topic READ topic WRITE setTopic STORED false) - public: - TopicWidget(QWidget *parent = 0); +public: + TopicWidget(QWidget *parent = 0); - inline QString topic() const { return ui.topicLineEdit->text(); } - void setTopic(const QString &newtopic); + void setTopic(const QString &newtopic); - signals: - void topicChanged(const QString &text); + virtual bool eventFilter(QObject *obj, QEvent *event); - private slots: - void on_topicLineEdit_returnPressed(); +signals: + void topicChanged(const QString &text); + +protected slots: + virtual void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); + virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); + +private slots: + void on_topicLineEdit_returnPressed(); + void on_topicEditButton_clicked(); + void switchEditable(); + void switchPlain(); - private: - Ui::TopicWidget ui; +private: + Ui::TopicWidget ui; + + QString _topic; };