File indexing completed on 2026-06-14 05:21:49
0001 /* 0002 main.h 0003 0004 SPDX-FileCopyrightText: 2001 Waldo Bastian <bastian@kde.org> 0005 0006 Requires the Qt widget libraries, available at no cost at 0007 https://www.qt.io 0008 0009 SPDX-License-Identifier: GPL-2.0-or-later 0010 */ 0011 0012 #pragma once 0013 0014 #include <KCModule> 0015 #include <QTabWidget> 0016 0017 class KWinOptionsSettings; 0018 class KWinOptionsKDEGlobalsSettings; 0019 class KFocusConfig; 0020 class KTitleBarActionsConfig; 0021 class KWindowActionsConfig; 0022 class KAdvancedConfig; 0023 class KMovingConfig; 0024 0025 class KWinOptions : public KCModule 0026 { 0027 Q_OBJECT 0028 0029 public: 0030 explicit KWinOptions(QObject *parent, const KPluginMetaData &data); 0031 0032 void load() override; 0033 void save() override; 0034 void defaults() override; 0035 0036 protected Q_SLOTS: 0037 void updateUnmanagedState(); 0038 0039 private: 0040 QTabWidget *tab; 0041 0042 KFocusConfig *mFocus; 0043 KTitleBarActionsConfig *mTitleBarActions; 0044 KWindowActionsConfig *mWindowActions; 0045 KMovingConfig *mMoving; 0046 KAdvancedConfig *mAdvanced; 0047 0048 KWinOptionsSettings *mSettings; 0049 }; 0050 0051 class KActionsOptions : public KCModule 0052 { 0053 Q_OBJECT 0054 0055 public: 0056 KActionsOptions(QObject *parent, const KPluginMetaData &data); 0057 0058 void load() override; 0059 void save() override; 0060 void defaults() override; 0061 0062 protected Q_SLOTS: 0063 0064 void moduleChanged(bool state); 0065 0066 private: 0067 QTabWidget *tab; 0068 0069 KTitleBarActionsConfig *mTitleBarActions; 0070 KWindowActionsConfig *mWindowActions; 0071 0072 KWinOptionsSettings *mSettings; 0073 };