Changeset View
Changeset View
Standalone View
Standalone View
kcms/workspaceoptions/workspaceoptions.cpp
Show All 15 Lines | |||||
16 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | 16 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | ||
17 | */ | 17 | */ | ||
18 | #include "workspaceoptions.h" | 18 | #include "workspaceoptions.h" | ||
19 | 19 | | |||
20 | #include <KPluginFactory> | 20 | #include <KPluginFactory> | ||
21 | #include <KAboutData> | 21 | #include <KAboutData> | ||
22 | #include <KLocalizedString> | 22 | #include <KLocalizedString> | ||
23 | #include <KConfigGroup> | 23 | #include <KConfigGroup> | ||
24 | #include <ksharedconfig.h> | 24 | #include <KSharedConfig> | ||
25 | #include <KDELibs4Support/KDE/KGlobalSettings> | 25 | #include <KDELibs4Support/KDE/KGlobalSettings> | ||
26 | #include <../migrationlib/kdelibs4config.h> | 26 | #include <../migrationlib/kdelibs4config.h> | ||
27 | 27 | | |||
28 | #include <QtDBus/QDBusMessage> | 28 | #include <QtDBus/QDBusMessage> | ||
29 | #include <QtDBus/QDBusConnection> | 29 | #include <QtDBus/QDBusConnection> | ||
30 | 30 | | |||
31 | K_PLUGIN_FACTORY_WITH_JSON(KCMWorkspaceOptionsFactory, "kcm_workspace.json", registerPlugin<KCMWorkspaceOptions>();) | 31 | K_PLUGIN_FACTORY_WITH_JSON(KCMWorkspaceOptionsFactory, "kcm_workspace.json", registerPlugin<KCMWorkspaceOptions>();) | ||
32 | 32 | | |||
33 | KCMWorkspaceOptions::KCMWorkspaceOptions(QObject *parent, const QVariantList& args) | 33 | KCMWorkspaceOptions::KCMWorkspaceOptions(QObject *parent, const QVariantList& args) | ||
34 | : KQuickAddons::ConfigModule(parent, args), | 34 | : KQuickAddons::ConfigModule(parent, args), | ||
35 | m_stateToolTip(true), | 35 | m_stateToolTip(true), | ||
36 | m_stateVisualFeedback(true), | 36 | m_stateVisualFeedback(true), | ||
37 | m_stateSingleClick(true) | 37 | m_stateSingleClick(true) | ||
38 | { | 38 | { | ||
39 | KAboutData* about = new KAboutData(QStringLiteral("kcm_workspace"), | 39 | KAboutData* about = new KAboutData(QStringLiteral("kcm_workspace"), | ||
40 | i18n("Plasma Workspace global options"), | 40 | i18n("Plasma Workspace global options"), | ||
41 | QStringLiteral("1.1"), | 41 | QStringLiteral("1.1"), | ||
42 | i18n("System Settings module for managing global options for the Plasma Workspace."), | 42 | i18n("System Settings module for managing global options for the Plasma Workspace."), | ||
43 | KAboutLicense::GPL); | 43 | KAboutLicense::GPL); | ||
44 | 44 | | |||
45 | about->addAuthor(i18n("Furkan Tokac"), QString(), QStringLiteral("furkantokac34@gmail.com")); | 45 | about->addAuthor(i18n("Furkan Tokac"), QString(), QStringLiteral("furkantokac34@gmail.com")); | ||
46 | setAboutData(about); | 46 | setAboutData(about); | ||
47 | 47 | | |||
48 | setButtons( Default | Apply ); | 48 | setButtons(Default | Apply); | ||
49 | } | 49 | } | ||
50 | 50 | | |||
51 | /*ConfigModule functions*/ | 51 | /*ConfigModule functions*/ | ||
52 | void KCMWorkspaceOptions::load() | 52 | void KCMWorkspaceOptions::load() | ||
53 | { | 53 | { | ||
54 | bool state = false; | 54 | bool state = false; | ||
55 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("plasmarc")); | 55 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("plasmarc")); | ||
56 | 56 | | |||
57 | // Load toolTip | 57 | // Load toolTip | ||
58 | { | 58 | { | ||
59 | const KConfigGroup cg(config, QStringLiteral("PlasmaToolTips")); | 59 | const KConfigGroup cg(config, QStringLiteral("PlasmaToolTips")); | ||
60 | | ||||
60 | state = cg.readEntry("Delay", 0.7) > 0; | 61 | state = cg.readEntry("Delay", 0.7) > 0; | ||
61 | setToolTip(state); | 62 | setToolTip(state); | ||
63 | | ||||
62 | m_ostateToolTip = getToolTip(); | 64 | m_ostateToolTip = getToolTip(); | ||
63 | } | 65 | } | ||
64 | 66 | | |||
65 | // Load visualFeedback | 67 | // Load visualFeedback | ||
66 | { | 68 | { | ||
67 | const KConfigGroup cg(config, QStringLiteral("OSD")); | 69 | const KConfigGroup cg(config, QStringLiteral("OSD")); | ||
68 | state = cg.readEntry(QStringLiteral("Enabled"), true); | 70 | state = cg.readEntry(QStringLiteral("Enabled"), true); | ||
69 | setVisualFeedback(state); | 71 | setVisualFeedback(state); | ||
Show All 9 Lines | 76 | { | |||
79 | m_ostateSingleClick = getSingleClick(); | 81 | m_ostateSingleClick = getSingleClick(); | ||
80 | } | 82 | } | ||
81 | 83 | | |||
82 | setNeedsSave(false); | 84 | setNeedsSave(false); | ||
83 | } | 85 | } | ||
84 | 86 | | |||
85 | void KCMWorkspaceOptions::save() | 87 | void KCMWorkspaceOptions::save() | ||
86 | { | 88 | { | ||
87 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("plasmarc")); | | |||
88 | | ||||
89 | // Save toolTip | 89 | // Save toolTip | ||
90 | { | 90 | if (m_stateToolTip != m_ostateToolTip) { | ||
91 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("plasmarc")); | ||||
91 | KConfigGroup cg(config, QStringLiteral("PlasmaToolTips")); | 92 | KConfigGroup cg(config, QStringLiteral("PlasmaToolTips")); | ||
93 | | ||||
92 | cg.writeEntry("Delay", getToolTip() ? 0.7 : -1); | 94 | cg.writeEntry("Delay", getToolTip() ? 0.7 : -1); | ||
93 | m_ostateToolTip = getToolTip(); | 95 | m_ostateToolTip = getToolTip(); | ||
96 | | ||||
97 | config->sync(); | ||||
94 | } | 98 | } | ||
95 | 99 | | |||
96 | // Save visualFeedback | 100 | // Save visualFeedback | ||
97 | { | 101 | if (m_stateVisualFeedback != m_ostateVisualFeedback) { | ||
102 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("plasmarc")); | ||||
98 | KConfigGroup cg(config, QStringLiteral("OSD")); | 103 | KConfigGroup cg(config, QStringLiteral("OSD")); | ||
104 | | ||||
99 | cg.writeEntry("Enabled", getVisualFeedback()); | 105 | cg.writeEntry("Enabled", getVisualFeedback()); | ||
100 | m_ostateVisualFeedback = getVisualFeedback(); | 106 | m_ostateVisualFeedback = getVisualFeedback(); | ||
107 | | ||||
108 | config->sync(); | ||||
101 | } | 109 | } | ||
102 | 110 | | |||
103 | // Save singleClick | 111 | // Save singleClick | ||
104 | KSharedConfig::Ptr configKdeGlobals = KSharedConfig::openConfig(QStringLiteral("kdeglobals")); | 112 | if (m_stateSingleClick != m_ostateSingleClick) { | ||
105 | KConfigGroup cg(configKdeGlobals, QStringLiteral("KDE")); | 113 | KSharedConfig::Ptr config = KSharedConfig::openConfig(QStringLiteral("kdeglobals")); | ||
114 | KConfigGroup cg(config, QStringLiteral("KDE")); | ||||
106 | cg.writeEntry("SingleClick", getSingleClick()); | 115 | cg.writeEntry("SingleClick", getSingleClick()); | ||
107 | m_ostateSingleClick = getSingleClick(); | 116 | m_ostateSingleClick = getSingleClick(); | ||
117 | | ||||
108 | config->sync(); | 118 | config->sync(); | ||
109 | configKdeGlobals->sync(); | | |||
110 | 119 | | |||
111 | Kdelibs4SharedConfig::syncConfigGroup(QLatin1String("KDE"), "kdeglobals"); | 120 | Kdelibs4SharedConfig::syncConfigGroup(QLatin1String("KDE"), "kdeglobals"); | ||
112 | 121 | | |||
113 | QDBusMessage message = QDBusMessage::createSignal("/KGlobalSettings", "org.kde.KGlobalSettings", "notifyChange"); | 122 | QDBusMessage message = QDBusMessage::createSignal("/KGlobalSettings", "org.kde.KGlobalSettings", "notifyChange"); | ||
114 | QList<QVariant> args; | 123 | QList<QVariant> args; | ||
115 | args.append(KGlobalSettings::SettingsChanged); | 124 | args.append(KGlobalSettings::SettingsChanged); | ||
116 | args.append(KGlobalSettings::SETTINGS_MOUSE); | 125 | args.append(KGlobalSettings::SETTINGS_MOUSE); | ||
117 | message.setArguments(args); | 126 | message.setArguments(args); | ||
118 | QDBusConnection::sessionBus().send(message); | 127 | QDBusConnection::sessionBus().send(message); | ||
128 | } | ||||
119 | 129 | | |||
120 | setNeedsSave(false); | 130 | setNeedsSave(false); | ||
121 | } | 131 | } | ||
122 | 132 | | |||
123 | void KCMWorkspaceOptions::defaults() | 133 | void KCMWorkspaceOptions::defaults() | ||
124 | { | 134 | { | ||
125 | setToolTip(true); | 135 | setToolTip(true); | ||
126 | setVisualFeedback(true); | 136 | setVisualFeedback(true); | ||
127 | setSingleClick(true); | 137 | setSingleClick(true); | ||
128 | 138 | | |||
129 | handleNeedsSave(); | 139 | handleNeedsSave(); | ||
130 | } | 140 | } | ||
131 | 141 | | |||
132 | /*ToolTip functions*/ | 142 | /*ToolTip functions*/ | ||
133 | bool KCMWorkspaceOptions::getToolTip() const | 143 | bool KCMWorkspaceOptions::getToolTip() const | ||
134 | { | 144 | { | ||
135 | return m_stateToolTip; | 145 | return m_stateToolTip; | ||
136 | } | 146 | } | ||
137 | 147 | | |||
138 | void KCMWorkspaceOptions::setToolTip(bool state) | 148 | void KCMWorkspaceOptions::setToolTip(bool state) | ||
139 | { | 149 | { | ||
140 | // Prevent from binding loop | 150 | // Prevent from binding loop | ||
141 | if( m_stateToolTip == state ) { | 151 | if (m_stateToolTip == state) { | ||
142 | return; | 152 | return; | ||
143 | } | 153 | } | ||
144 | 154 | | |||
145 | m_stateToolTip = state; | 155 | m_stateToolTip = state; | ||
146 | 156 | | |||
147 | emit toolTipChanged(); | 157 | emit toolTipChanged(); | ||
148 | handleNeedsSave(); | 158 | handleNeedsSave(); | ||
149 | } | 159 | } | ||
150 | 160 | | |||
151 | /*VisualFeedback functions*/ | 161 | /*VisualFeedback functions*/ | ||
152 | bool KCMWorkspaceOptions::getVisualFeedback() const | 162 | bool KCMWorkspaceOptions::getVisualFeedback() const | ||
153 | { | 163 | { | ||
154 | return m_stateVisualFeedback; | 164 | return m_stateVisualFeedback; | ||
155 | } | 165 | } | ||
156 | 166 | | |||
157 | void KCMWorkspaceOptions::setVisualFeedback(bool state) | 167 | void KCMWorkspaceOptions::setVisualFeedback(bool state) | ||
158 | { | 168 | { | ||
159 | // Prevent from binding loop | 169 | // Prevent from binding loop | ||
160 | if( m_stateVisualFeedback == state ) { | 170 | if (m_stateVisualFeedback == state) { | ||
161 | return; | 171 | return; | ||
162 | } | 172 | } | ||
163 | 173 | | |||
164 | m_stateVisualFeedback = state; | 174 | m_stateVisualFeedback = state; | ||
165 | 175 | | |||
166 | emit visualFeedbackChanged(); | 176 | emit visualFeedbackChanged(); | ||
167 | handleNeedsSave(); | 177 | handleNeedsSave(); | ||
168 | } | 178 | } | ||
169 | 179 | | |||
170 | /*SingleClick functions*/ | 180 | /*SingleClick functions*/ | ||
171 | bool KCMWorkspaceOptions::getSingleClick() const | 181 | bool KCMWorkspaceOptions::getSingleClick() const | ||
172 | { | 182 | { | ||
173 | return m_stateSingleClick; | 183 | return m_stateSingleClick; | ||
174 | } | 184 | } | ||
175 | 185 | | |||
176 | void KCMWorkspaceOptions::setSingleClick(bool state) | 186 | void KCMWorkspaceOptions::setSingleClick(bool state) | ||
177 | { | 187 | { | ||
178 | // Prevent from binding loop | 188 | // Prevent from binding loop | ||
179 | if( m_stateSingleClick == state ) { | 189 | if (m_stateSingleClick == state) { | ||
180 | return; | 190 | return; | ||
181 | } | 191 | } | ||
182 | 192 | | |||
183 | m_stateSingleClick = state; | 193 | m_stateSingleClick = state; | ||
184 | 194 | | |||
185 | emit singleClickChanged(); | 195 | emit singleClickChanged(); | ||
186 | handleNeedsSave(); | 196 | handleNeedsSave(); | ||
187 | } | 197 | } | ||
Show All 12 Lines |