Build with non-standard boost locations.
[kdepim.git] / messagecomposer / messagecomposersettings.h
blob32df83c8c9cc0f73966365493ca0e9724e7b1c8e
1 /*
2 This file is part of KMail.
4 Copyright (c) 2005 David Faure <faure@kde.org>
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License version 2,
8 as published by the Free Software Foundation.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution.
24 #ifndef MESSAGECOMPOSER_GLOBALSETTINGS_H
25 #define MESSAGECOMPOSER_GLOBALSETTINGS_H
27 #include "messagecomposer_export.h"
28 #include "messagecomposersettings_base.h"
31 class QTimer;
33 namespace MessageComposer {
35 class MESSAGECOMPOSER_EXPORT MessageComposerSettings : public MessageComposer::MessageComposerSettingsBase
37 Q_OBJECT
38 public:
39 static MessageComposerSettings *self();
41 /** Call this slot instead of directly @ref KConfig::sync() to
42 minimize the overall config writes. Calling this slot will
43 schedule a sync of the application config file using a timer, so
44 that many consecutive calls can be condensed into a single
45 sync, which is more efficient. */
46 void requestSync();
48 private slots:
49 void slotSyncNow();
51 private:
52 MessageComposerSettings();
53 virtual ~MessageComposerSettings();
54 static MessageComposerSettings *mSelf;
56 QTimer *mConfigSyncTimer;
62 #endif /* MESSAGECOMPOSER_GLOBALSETTINGS_H */