aboutsummaryrefslogtreecommitdiffstats
path: root/gui/line_editor.h
diff options
context:
space:
mode:
Diffstat (limited to 'gui/line_editor.h')
-rw-r--r--gui/line_editor.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/gui/line_editor.h b/gui/line_editor.h
new file mode 100644
index 00000000..15b675f9
--- /dev/null
+++ b/gui/line_editor.h
@@ -0,0 +1,31 @@
+#ifndef LINE_EDITOR_H
+#define LINE_EDITOR_H
+
+#include <QLineEdit>
+#include <QMenu>
+
+class LineEditor : public QLineEdit
+{
+ Q_OBJECT
+
+ public:
+ explicit LineEditor(QWidget *parent = 0);
+
+ private Q_SLOTS:
+ void textInserted();
+ void showContextMenu(const QPoint &pt);
+ void clearHistory();
+
+ Q_SIGNALS:
+ void textLineInserted(QString);
+
+ protected:
+ void keyPressEvent(QKeyEvent *) Q_DECL_OVERRIDE;
+
+ private:
+ int index;
+ QStringList lines;
+ QMenu *contextMenu;
+};
+
+#endif // LINE_EDITOR_H