X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Finputline.h;h=dc6d691ceeb1dd3c1285af8dfd04c125b6c3299d;hp=802eae2575b630b76d164289a50dfc505cfac59c;hb=7c9c1b348382b8b77f96a883945c522d32a478d5;hpb=8699dd758516d0ded076811e8ea656adc95e69d0 diff --git a/src/uisupport/inputline.h b/src/uisupport/inputline.h index 802eae25..dc6d691c 100644 --- a/src/uisupport/inputline.h +++ b/src/uisupport/inputline.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel Project * + * Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -28,29 +28,35 @@ class TabCompleter; class InputLine : public QLineEdit { Q_OBJECT - public: - InputLine(QWidget *parent = 0); - ~InputLine(); - - protected: - virtual bool event(QEvent *); - virtual void keyPressEvent(QKeyEvent * event); - - private slots: - void enter(); - - public slots: - void updateNickList(QStringList); - - signals: - void nickListUpdated(QStringList); - - private: - qint32 idx; - QStringList history; - QStringList nickList; - - TabCompleter *tabComplete; +public: + InputLine(QWidget *parent = 0); + ~InputLine(); + +protected: + // virtual bool event(QEvent *); + virtual void keyPressEvent(QKeyEvent * event); + virtual bool eventFilter(QObject *watched, QEvent *event); + +private slots: + void on_returnPressed(); + void on_textChanged(QString newText); + + bool addToHistory(const QString &text, bool temporary = false); + +signals: + void sendText(QString text); + +private: + QStringList history; + QHash tempHistory; + qint32 idx; + TabCompleter *tabCompleter; + + int bindModifier; + int jumpModifier; + + void resetLine(); + void showHistoryEntry(); }; #endif