X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Finputwidget.h;h=fc358f246b1cd4e8cb7d9497f687634be29bfc47;hp=485ac671d01870ad64b8fe4d299fddc77e15b25c;hb=dcdc88676f6bf6c961c554e1ff0d160082ba0973;hpb=bcfd213c6c381e6d2344ceba4a82ed3f87a9fd3e diff --git a/src/qtui/inputwidget.h b/src/qtui/inputwidget.h index 485ac671..fc358f24 100644 --- a/src/qtui/inputwidget.h +++ b/src/qtui/inputwidget.h @@ -22,38 +22,29 @@ #define INPUTWIDGET_H #include "ui_inputwidget.h" -#include -#include +#include "abstractitemview.h" #include "buffermodel.h" #include "bufferinfo.h" #include "identity.h" -#include "network.h"; +#include "network.h" -class InputWidget : public QWidget { +class InputLine; + +class InputWidget : public AbstractItemView { Q_OBJECT public: InputWidget(QWidget *parent = 0); virtual ~InputWidget(); - inline BufferModel *model() { return _bufferModel; } - void setModel(BufferModel *bufferModel); - - inline QItemSelectionModel *selectionModel() const { return _selectionModel; } - void setSelectionModel(QItemSelectionModel *selectionModel); - const Network *currentNetwork() const; + inline InputLine* inputLine() const { return ui.inputEdit; } + protected slots: -// virtual void closeEditor(QWidget *editor, QAbstractItemDelegate::EndEditHint hint); -// virtual void commitData(QWidget *editor); virtual void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); -// virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); -// virtual void editorDestroyed(QObject *editor); -// virtual void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end); -// virtual void rowsInserted(const QModelIndex &parent, int start, int end); -// virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); + virtual void dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight); private slots: void sendText(QString text); @@ -62,21 +53,27 @@ private slots: void setNetwork(const Network *network); void setIdentity(const IdentityId &identityId); void updateNickSelector() const; + void updateEnabledState(); + + BufferInfo currentBufferInfo() const; signals: void userInput(BufferInfo, QString msg) const; private: Ui::InputWidget ui; - - bool validBuffer; - BufferInfo currentBufferInfo; - QPointer _bufferModel; - QPointer _selectionModel; NetworkId _networkId; IdentityId _identityId; +}; + +class MouseWheelFilter : public QObject { + Q_OBJECT + +public: + MouseWheelFilter(QObject *parent = 0); + virtual bool eventFilter(QObject *obj, QEvent *event); }; #endif // INPUTWIDGET_H