Changeset View
Changeset View
Standalone View
Standalone View
src/kexiutils/utils.cpp
Show First 20 Lines • Show All 232 Lines • ▼ Show 20 Line(s) | 232 | while (metaObject) { | |||
---|---|---|---|---|---|
233 | const int count = metaObject->propertyCount(); | 233 | const int count = metaObject->propertyCount(); | ||
234 | for (int i = 0; i < count; i++) | 234 | for (int i = 0; i < count; i++) | ||
235 | result += metaObject->property(i); | 235 | result += metaObject->property(i); | ||
236 | metaObject = metaObject->superClass(); | 236 | metaObject = metaObject->superClass(); | ||
237 | } | 237 | } | ||
238 | return result; | 238 | return result; | ||
239 | } | 239 | } | ||
240 | 240 | | |||
241 | QStringList KexiUtils::enumKeysForProperty(const QMetaProperty& metaProperty) | 241 | QStringList KexiUtils::enumKeysForProperty(const QMetaProperty& metaProperty, int filter) | ||
242 | { | 242 | { | ||
243 | QStringList result; | 243 | QStringList result; | ||
244 | QMetaEnum enumerator(metaProperty.enumerator()); | 244 | const QMetaEnum enumerator(metaProperty.enumerator()); | ||
245 | const int count = enumerator.keyCount(); | 245 | const int count = enumerator.keyCount(); | ||
246 | for (int i = 0; i < count; i++) | 246 | int total = 0; | ||
247 | for (int i = 0; i < count; i++) { | ||||
248 | if (filter == INT_MIN) { | ||||
249 | result.append(QString::fromLatin1(enumerator.key(i))); | ||||
250 | } else { | ||||
251 | const int v = enumerator.value(i); | ||||
252 | if ((v & filter) && !(total & v)) { // !(total & v) is a protection adding against masks | ||||
247 | result.append(QString::fromLatin1(enumerator.key(i))); | 253 | result.append(QString::fromLatin1(enumerator.key(i))); | ||
254 | total |= v; | ||||
255 | } | ||||
256 | } | ||||
257 | } | ||||
248 | return result; | 258 | return result; | ||
249 | } | 259 | } | ||
250 | 260 | | |||
251 | QString KexiUtils::fileDialogFilterString(const QMimeType &mime, bool kdeFormat) | 261 | QString KexiUtils::fileDialogFilterString(const QMimeType &mime, bool kdeFormat) | ||
252 | { | 262 | { | ||
253 | if (!mime.isValid()) { | 263 | if (!mime.isValid()) { | ||
254 | return QString(); | 264 | return QString(); | ||
255 | } | 265 | } | ||
▲ Show 20 Lines • Show All 884 Lines • Show Last 20 Lines |