X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Finputline.h;h=dc6d691ceeb1dd3c1285af8dfd04c125b6c3299d;hp=1595125157df9c8df303657a5205ad20e9d28647;hb=e8cec3162ce6a41c78764b64f704cb5fee5e0257;hpb=d6b056e936ec441258d291b7a8af7b83f9f53016 diff --git a/src/uisupport/inputline.h b/src/uisupport/inputline.h index 15951251..dc6d691c 100644 --- a/src/uisupport/inputline.h +++ b/src/uisupport/inputline.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-07 by the Quassel IRC Team * + * 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