File tree 8 files changed +512
-30
lines changed
8 files changed +512
-30
lines changed Original file line number Diff line number Diff line change @@ -98,6 +98,7 @@ if (Qt5_FOUND OR Qt6_FOUND)
98
98
useraccountsmodel.h encryptionsetupdlg.h utiltt.h utilxml.h
99
99
utilos.h serverdlg.h moveusersdlg.h useraccountdlg.h soundeventsmodel.h
100
100
mytableview.h mytabwidget.h shortcutsmodel.h utilmedia.h
101
+ chattextlist.h
101
102
102
103
main.cpp mainwindow.cpp preferencesdlg.cpp uservideowidget.cpp
103
104
channelstree.cpp channeldlg.cpp userinfodlg.cpp
@@ -119,6 +120,7 @@ if (Qt5_FOUND OR Qt6_FOUND)
119
120
useraccountsmodel.cpp encryptionsetupdlg.cpp utiltt.cpp utilxml.cpp
120
121
utilos.cpp serverdlg.cpp moveusersdlg.cpp useraccountdlg.cpp soundeventsmodel.cpp
121
122
mytableview.cpp mytabwidget.cpp shortcutsmodel.cpp utilmedia.cpp
123
+ chattextlist.cpp
122
124
mainwindow.ui channel.ui preferences.ui
123
125
serverlist.ui userinfo.ui bannedusers.ui useraccounts.ui
124
126
serverproperties.ui uservideo.ui keycomp.ui textmessage.ui
Original file line number Diff line number Diff line change @@ -124,6 +124,14 @@ ChatTextEdit::ChatTextEdit(QWidget * parent/* = 0*/)
124
124
{
125
125
new UrlSyntaxHighlighter (document ());
126
126
viewport ()->setMouseTracking (true );
127
+ setTabChangesFocus (true );
128
+ setUndoRedoEnabled (false );
129
+ setReadOnly (true );
130
+ setTextInteractionFlags (Qt::TextInteractionFlag::LinksAccessibleByKeyboard |
131
+ Qt::TextInteractionFlag::LinksAccessibleByMouse |
132
+ Qt::TextInteractionFlag::TextBrowserInteraction |
133
+ Qt::TextInteractionFlag::TextSelectableByKeyboard |
134
+ Qt::TextInteractionFlag::TextSelectableByMouse);
127
135
}
128
136
129
137
QString ChatTextEdit::getTimeStamp (const QDateTime& tm , bool force_ts)
Original file line number Diff line number Diff line change 22
22
23
23
#include < QPlainTextEdit>
24
24
25
- class ChatTextEdit : public QPlainTextEdit
25
+ class ChatTextHistory
26
+ {
27
+ public:
28
+ virtual ~ChatTextHistory () = default ;
29
+
30
+ virtual void updateServer (const ServerProperties& srvprop) = 0;
31
+ virtual void joinedChannel (int channelid) = 0;
32
+
33
+ virtual QString addTextMessage (const MyTextMessage& msg) = 0;
34
+ virtual void addLogMessage (const QString& msg) = 0;
35
+
36
+ virtual bool hasFocus () const = 0;
37
+ };
38
+
39
+ class ChatTextEdit : public QPlainTextEdit , public ChatTextHistory
26
40
{
27
41
Q_OBJECT
28
42
29
43
public:
30
44
ChatTextEdit (QWidget * parent = 0 );
31
45
32
- void updateServer (const ServerProperties& srvprop);
46
+ void updateServer (const ServerProperties& srvprop) override ;
33
47
34
- void joinedChannel (int channelid);
48
+ void joinedChannel (int channelid) override ;
35
49
36
- QString addTextMessage (const MyTextMessage& msg);
37
- void addLogMessage (const QString& msg);
50
+ QString addTextMessage (const MyTextMessage& msg) override ;
51
+ void addLogMessage (const QString& msg) override ;
52
+ bool hasFocus () const override { return QPlainTextEdit::hasFocus (); }
38
53
39
54
signals:
40
55
void clearHistory ();
You can’t perform that action at this time.
0 commit comments