- 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<int, QString> tempHistory;
+ qint32 idx;
+ TabCompleter *tabCompleter;
+
+ int bindModifier;
+ int jumpModifier;
+
+ void resetLine();
+ void showHistoryEntry();