File indexing completed on 2024-05-12 16:27:15
0001 /* 0002 SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "reportmessagewidget.h" 0008 0009 #include <KTextEdit> 0010 #include <QHBoxLayout> 0011 #include <QLabel> 0012 0013 #include <KLocalizedString> 0014 0015 ReportMessageWidget::ReportMessageWidget(QWidget *parent) 0016 : QWidget(parent) 0017 , mMessageLineEdit(new KTextEdit(this)) 0018 , mMessagePreview(new QLabel(this)) 0019 { 0020 auto mainLayout = new QVBoxLayout(this); 0021 mainLayout->setObjectName(QStringLiteral("mainLayout")); 0022 mainLayout->setContentsMargins({}); 0023 0024 mMessagePreview->setObjectName(QStringLiteral("mMessagePreview")); 0025 mMessagePreview->setWordWrap(true); 0026 QFont messagePreviewFont = mMessagePreview->font(); 0027 messagePreviewFont.setBold(true); 0028 mMessagePreview->setFont(messagePreviewFont); 0029 mainLayout->addWidget(mMessagePreview); 0030 0031 auto messageLayout = new QHBoxLayout; 0032 messageLayout->setObjectName(QStringLiteral("messageLayout")); 0033 messageLayout->setContentsMargins({}); 0034 0035 mainLayout->addLayout(messageLayout); 0036 0037 auto lab = new QLabel(i18n("Message:"), this); 0038 lab->setObjectName(QStringLiteral("label")); 0039 messageLayout->addWidget(lab); 0040 0041 mMessageLineEdit->setObjectName(QStringLiteral("mMessageLineEdit")); 0042 mMessageLineEdit->setAcceptRichText(false); 0043 mMessageLineEdit->setPlaceholderText(i18n("Why you signal this message?")); 0044 messageLayout->addWidget(mMessageLineEdit); 0045 connect(mMessageLineEdit, &KTextEdit::textChanged, this, [this]() { 0046 Q_EMIT updateOkButton(!mMessageLineEdit->toPlainText().trimmed().isEmpty()); 0047 }); 0048 } 0049 0050 ReportMessageWidget::~ReportMessageWidget() = default; 0051 0052 QString ReportMessageWidget::message() const 0053 { 0054 return mMessageLineEdit->toPlainText(); 0055 } 0056 0057 void ReportMessageWidget::setPreviewMessage(const QString &msg) 0058 { 0059 mMessagePreview->setText(msg); 0060 } 0061 0062 #include "moc_reportmessagewidget.cpp"