/***************************************************************** KWin - the KDE window manager This file is part of the KDE project. Copyright (C) 2007 Rivo Laks You can Freely distribute this program under the GNU General Public License. See the file "COPYING" for the exact licensing terms. ******************************************************************/ #ifndef __MAIN_H__ #define __MAIN_H__ #include #include #include #include #include "ui_main.h" #include "compositingprefs.h" class KPluginSelector; class QLabel; namespace KWin { class ConfirmDialog : public KDialog { Q_OBJECT public: ConfirmDialog(); protected slots: void advanceTimer(); private: int mSecondsToLive; QLabel* mTextLabel; }; class KWinCompositingConfig : public KCModule { Q_OBJECT public: KWinCompositingConfig(QWidget *parent, const QVariantList &args); virtual ~KWinCompositingConfig(); virtual QString quickHelp() const; public slots: virtual void compositingEnabled(bool enabled); virtual void showAdvancedOptions(); virtual void showConfirmDialog(); void currentTabChanged(int tab); virtual void load(); virtual void save(); virtual void defaults(); void reparseConfiguration(const QByteArray&conf); void loadGeneralTab(); void loadEffectsTab(); bool saveGeneralTab(); void saveEffectsTab(); void configChanged(); void initEffectSelector(); private: KSharedConfigPtr mKWinConfig; Ui::KWinCompositingConfig ui; CompositingPrefs mDefaultPrefs; QMap mPreviousConfig; KTemporaryFile mTmpConfigFile; KSharedConfigPtr mTmpConfig; }; } // namespace #endif