File indexing completed on 2024-05-19 05:04:04
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 "modifystatuswidget.h" 0008 #include "misc/statuscombobox.h" 0009 #include <KLineEditEventHandler> 0010 #include <KLocalizedString> 0011 #include <QFormLayout> 0012 #include <QLineEdit> 0013 0014 ModifyStatusWidget::ModifyStatusWidget(QWidget *parent) 0015 : QWidget(parent) 0016 , mStatusCombobox(new StatusCombobox(this)) 0017 , mStatusLineEdit(new QLineEdit(this)) 0018 { 0019 auto mainLayout = new QFormLayout(this); 0020 mainLayout->setObjectName(QStringLiteral("mainLayout")); 0021 mainLayout->setContentsMargins({}); 0022 0023 mStatusCombobox->setObjectName(QStringLiteral("mStatusCombobox")); 0024 0025 mStatusCombobox->setUseOnlyStandardStatus(); 0026 0027 mStatusLineEdit->setObjectName(QStringLiteral("mStatusLineEdit")); 0028 mStatusLineEdit->setClearButtonEnabled(true); 0029 KLineEditEventHandler::catchReturnKey(mStatusLineEdit); 0030 0031 mainLayout->addRow(i18n("Message Status:"), mStatusLineEdit); 0032 mainLayout->addRow(i18n("Status:"), mStatusCombobox); 0033 } 0034 0035 ModifyStatusWidget::~ModifyStatusWidget() = default; 0036 0037 void ModifyStatusWidget::setMessageStatus(const QString &statusStr) 0038 { 0039 mStatusLineEdit->setText(statusStr); 0040 } 0041 0042 QString ModifyStatusWidget::messageStatus() const 0043 { 0044 return mStatusLineEdit->text(); 0045 } 0046 0047 User::PresenceStatus ModifyStatusWidget::status() const 0048 { 0049 return mStatusCombobox->status(); 0050 } 0051 0052 void ModifyStatusWidget::setStatus(User::PresenceStatus status) 0053 { 0054 mStatusCombobox->setStatus(status); 0055 } 0056 0057 #include "moc_modifystatuswidget.cpp"