From b5ae84c3c3ee6ff42bb4ae4fd3a54e858160a1b1 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Sun, 3 Sep 2017 11:43:45 +0300 Subject: Add write support for m.emote events closes #41 --- include/TextInputWidget.h | 44 +++++++++++++++++++++++--------------------- 1 file changed, 23 insertions(+), 21 deletions(-) (limited to 'include/TextInputWidget.h') diff --git a/include/TextInputWidget.h b/include/TextInputWidget.h index 690a899b..73c2a603 100644 --- a/include/TextInputWidget.h +++ b/include/TextInputWidget.h @@ -25,49 +25,51 @@ #include "EmojiPickButton.h" #include "FlatButton.h" +static const QString EMOTE_COMMAND("/me "); + class FilteredTextEdit : public QTextEdit { - Q_OBJECT + Q_OBJECT public: - explicit FilteredTextEdit(QWidget *parent = nullptr); - void keyPressEvent(QKeyEvent *event); + explicit FilteredTextEdit(QWidget *parent = nullptr); + void keyPressEvent(QKeyEvent *event); signals: - void enterPressed(); + void enterPressed(); }; -class TextInputWidget : public QWidget +class TextInputWidget : public QFrame { - Q_OBJECT + Q_OBJECT public: - TextInputWidget(QWidget *parent = 0); - ~TextInputWidget(); + TextInputWidget(QWidget *parent = 0); + ~TextInputWidget(); public slots: - void onSendButtonClicked(); - inline void focusLineEdit(); + void onSendButtonClicked(); + inline void focusLineEdit(); private slots: - void addSelectedEmoji(const QString &emoji); + void addSelectedEmoji(const QString &emoji); signals: - void sendTextMessage(QString msg); - -protected: - void paintEvent(QPaintEvent *event) override; + void sendTextMessage(QString msg); + void sendEmoteMessage(QString msg); private: - QHBoxLayout *top_layout_; - FilteredTextEdit *input_; + QString parseEmoteCommand(const QString &cmd); + + QHBoxLayout *top_layout_; + FilteredTextEdit *input_; - FlatButton *send_file_button_; - FlatButton *send_message_button_; - EmojiPickButton *emoji_button_; + FlatButton *send_file_button_; + FlatButton *send_message_button_; + EmojiPickButton *emoji_button_; }; inline void TextInputWidget::focusLineEdit() { - input_->setFocus(); + input_->setFocus(); } -- cgit 1.5.1