File indexing completed on 2024-06-23 05:18:37

0001 /*
0002     This file is part of KMail.
0003 
0004     SPDX-FileCopyrightText: 2005 David Faure <faure@kde.org>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0
0007 */
0008 
0009 #include "messagecomposersettings.h"
0010 #include <QTimer>
0011 
0012 using namespace MessageComposer;
0013 
0014 MessageComposerSettings *MessageComposerSettings::mSelf = nullptr;
0015 
0016 MessageComposerSettings *MessageComposerSettings::self()
0017 {
0018     if (!mSelf) {
0019         mSelf = new MessageComposerSettings();
0020         mSelf->load();
0021     }
0022 
0023     return mSelf;
0024 }
0025 
0026 MessageComposerSettings::MessageComposerSettings()
0027 {
0028     mConfigSyncTimer = new QTimer(this);
0029     mConfigSyncTimer->setSingleShot(true);
0030     connect(mConfigSyncTimer, &QTimer::timeout, this, &MessageComposerSettings::slotSyncNow);
0031 }
0032 
0033 void MessageComposerSettings::requestSync()
0034 {
0035     if (!mConfigSyncTimer->isActive()) {
0036         mConfigSyncTimer->start(0);
0037     }
0038 }
0039 
0040 void MessageComposerSettings::slotSyncNow()
0041 {
0042     config()->sync();
0043 }
0044 
0045 MessageComposerSettings::~MessageComposerSettings() = default;
0046 
0047 #include "moc_messagecomposersettings.cpp"