aboutsummaryrefslogtreecommitdiff
path: root/src/aotextarea.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/aotextarea.h')
-rw-r--r--src/aotextarea.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/aotextarea.h b/src/aotextarea.h
new file mode 100644
index 00000000..b6f6ec6a
--- /dev/null
+++ b/src/aotextarea.h
@@ -0,0 +1,23 @@
+#pragma once
+
+#include <QDebug>
+#include <QRegularExpression>
+#include <QScrollBar>
+#include <QTextBrowser>
+#include <QTextCursor>
+
+class AOTextArea : public QTextBrowser
+{
+ Q_OBJECT
+
+public:
+ AOTextArea(QWidget *p_parent = nullptr);
+ AOTextArea(int p_log_length, QWidget *p_parent = nullptr);
+
+ void append_chatmessage(QString p_name, QString p_message, QString p_name_colour, QString p_color = QString());
+
+private:
+ const QRegularExpression url_parser_regex = QRegularExpression("\\b(https?://\\S+\\.\\S+)\\b");
+
+ void auto_scroll(QTextCursor old_cursor, int scrollbar_value, bool is_scrolled_down);
+};