Changeset View
Changeset View
Standalone View
Standalone View
src/quickaddons/managedconfigmodule.cpp
Show First 20 Lines • Show All 117 Lines • ▼ Show 20 Line(s) | 109 | for (auto item : items) { | |||
---|---|---|---|---|---|
118 | if (!property.hasNotifySignal()) { | 118 | if (!property.hasNotifySignal()) { | ||
119 | continue; | 119 | continue; | ||
120 | } | 120 | } | ||
121 | 121 | | |||
122 | const auto changedSignal = property.notifySignal(); | 122 | const auto changedSignal = property.notifySignal(); | ||
123 | QObject::connect(skeleton, changedSignal, _q, settingsChangedSlot); | 123 | QObject::connect(skeleton, changedSignal, _q, settingsChangedSlot); | ||
124 | } | 124 | } | ||
125 | } | 125 | } | ||
126 | | ||||
127 | _k_settingsChanged(); | ||||
126 | } | 128 | } | ||
127 | 129 | | |||
128 | void ManagedConfigModulePrivate::_k_settingsChanged() | 130 | void ManagedConfigModulePrivate::_k_settingsChanged() | ||
129 | { | 131 | { | ||
130 | bool needsSave = false; | 132 | bool needsSave = false; | ||
133 | bool isDefaults = true; | ||||
131 | for (const auto skeleton : qAsConst(_skeletons)) { | 134 | for (const auto skeleton : qAsConst(_skeletons)) { | ||
132 | needsSave |= skeleton->isSaveNeeded(); | 135 | needsSave |= skeleton->isSaveNeeded(); | ||
133 | if (needsSave) { | 136 | isDefaults &= skeleton->isDefaults(); | ||
134 | break; | | |||
135 | } | | |||
136 | } | 137 | } | ||
138 | | ||||
137 | if (!needsSave) { | 139 | if (!needsSave) { | ||
138 | needsSave = _q->isSaveNeeded(); | 140 | needsSave = _q->isSaveNeeded(); | ||
139 | } | 141 | } | ||
140 | _q->setNeedsSave(needsSave); | | |||
141 | 142 | | |||
142 | // TODO: Also deal with defaults, once we got an equivalent to setNeedsSave | 143 | if (isDefaults) { | ||
143 | // in ConfigModule | 144 | isDefaults = _q->isDefaults(); | ||
145 | } | ||||
146 | | ||||
147 | _q->setRepresentsDefaults(isDefaults); | ||||
148 | _q->setNeedsSave(needsSave); | ||||
144 | } | 149 | } | ||
145 | 150 | | |||
146 | } | 151 | } | ||
147 | 152 | | |||
148 | #include "moc_managedconfigmodule.cpp" | 153 | #include "moc_managedconfigmodule.cpp" | ||
149 | 154 | |