File indexing completed on 2024-05-12 16:27:24

0001 /*
0002    SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <QWidget>
0010 
0011 #include "libruqolawidgets_private_export.h"
0012 class QLineEdit;
0013 class QComboBox;
0014 class QCheckBox;
0015 class RocketChatAccount;
0016 class QSpinBox;
0017 class LIBRUQOLAWIDGETS_TESTS_EXPORT MyAccountPreferenceConfigureWidget : public QWidget
0018 {
0019     Q_OBJECT
0020 public:
0021     explicit MyAccountPreferenceConfigureWidget(RocketChatAccount *account, QWidget *parent = nullptr);
0022     ~MyAccountPreferenceConfigureWidget() override;
0023     void save();
0024     void load();
0025 
0026 private:
0027     LIBRUQOLAWIDGETS_NO_EXPORT void slotUserRequestDataDownloadDone();
0028     LIBRUQOLAWIDGETS_NO_EXPORT void setWasChanged();
0029     LIBRUQOLAWIDGETS_NO_EXPORT void initComboboxValues();
0030     LIBRUQOLAWIDGETS_NO_EXPORT void downloadData(bool fullData);
0031     QLineEdit *const mHighlightWords;
0032     QComboBox *const mDesktopNotification;
0033     QComboBox *const mEmailNotification;
0034     QComboBox *const mPushNotification;
0035     QCheckBox *const mUseEmojis;
0036     QCheckBox *const mConvertAsciiEmoji;
0037     QCheckBox *const mHideRoles;
0038     QCheckBox *const mDisplayAvatars;
0039     QCheckBox *const mReceiveLoginDetectionEmails;
0040     QSpinBox *const mIdleTimeLimit;
0041 
0042     QCheckBox *const mAutomaticAway;
0043 
0044     RocketChatAccount *const mRocketChatAccount;
0045     bool mChanged = false;
0046 };