Changeset View
Changeset View
Standalone View
Standalone View
src/views/KDbTableViewData.cpp
Show First 20 Lines • Show All 316 Lines • ▼ Show 20 Line(s) | |||||
317 | KDbTableViewData::KDbTableViewData(KDbCursor *c) | 317 | KDbTableViewData::KDbTableViewData(KDbCursor *c) | ||
318 | : QObject() | 318 | : QObject() | ||
319 | , KDbTableViewDataBase() | 319 | , KDbTableViewDataBase() | ||
320 | , d(new Private) | 320 | , d(new Private) | ||
321 | { | 321 | { | ||
322 | d->cursor = c; | 322 | d->cursor = c; | ||
323 | d->containsRecordIdInfo = d->cursor->containsRecordIdInfo(); | 323 | d->containsRecordIdInfo = d->cursor->containsRecordIdInfo(); | ||
324 | if (d->cursor && d->cursor->query()) { | 324 | if (d->cursor && d->cursor->query()) { | ||
325 | const KDbQuerySchema::FieldsExpandedOptions fieldsExpandedOptions | 325 | const KDbQuerySchema::FieldsExpandedMode fieldsExpandedMode | ||
326 | = d->containsRecordIdInfo ? KDbQuerySchema::WithInternalFieldsAndRecordId | 326 | = d->containsRecordIdInfo ? KDbQuerySchema::FieldsExpandedMode::WithInternalFieldsAndRecordId | ||
327 | : KDbQuerySchema::WithInternalFields; | 327 | : KDbQuerySchema::FieldsExpandedMode::WithInternalFields; | ||
328 | d->realColumnCount = d->cursor->query()->fieldsExpanded(fieldsExpandedOptions).count(); | 328 | d->realColumnCount = d->cursor->query()->fieldsExpanded( | ||
329 | d->cursor->connection(), fieldsExpandedMode).count(); | ||||
329 | } else { | 330 | } else { | ||
330 | d->realColumnCount = d->columns.count() + (d->containsRecordIdInfo ? 1 : 0); | 331 | d->realColumnCount = d->columns.count() + (d->containsRecordIdInfo ? 1 : 0); | ||
331 | } | 332 | } | ||
332 | 333 | | |||
333 | // Allocate KDbTableViewColumn objects for each visible query column | 334 | // Allocate KDbTableViewColumn objects for each visible query column | ||
334 | const KDbQueryColumnInfo::Vector fields = d->cursor->query()->fieldsExpanded(); | 335 | const KDbQueryColumnInfo::Vector fields | ||
336 | = d->cursor->query()->fieldsExpanded(d->cursor->connection()); | ||||
335 | const int fieldCount = fields.count(); | 337 | const int fieldCount = fields.count(); | ||
336 | for (int i = 0;i < fieldCount;i++) { | 338 | for (int i = 0;i < fieldCount;i++) { | ||
337 | KDbQueryColumnInfo *ci = fields[i]; | 339 | KDbQueryColumnInfo *ci = fields[i]; | ||
338 | if (ci->isVisible()) { | 340 | if (ci->isVisible()) { | ||
339 | KDbQueryColumnInfo *visibleLookupColumnInfo = nullptr; | 341 | KDbQueryColumnInfo *visibleLookupColumnInfo = nullptr; | ||
340 | if (ci->indexForVisibleLookupValue() != -1) { | 342 | if (ci->indexForVisibleLookupValue() != -1) { | ||
341 | //Lookup field is defined | 343 | // Lookup field is defined | ||
342 | visibleLookupColumnInfo = d->cursor->query()->expandedOrInternalField(ci->indexForVisibleLookupValue()); | 344 | visibleLookupColumnInfo = d->cursor->query()->expandedOrInternalField( | ||
345 | d->cursor->connection(), ci->indexForVisibleLookupValue()); | ||||
343 | } | 346 | } | ||
344 | KDbTableViewColumn* col = new KDbTableViewColumn(*d->cursor->query(), ci, visibleLookupColumnInfo); | 347 | KDbTableViewColumn* col = new KDbTableViewColumn(*d->cursor->query(), ci, visibleLookupColumnInfo); | ||
345 | addColumn(col); | 348 | addColumn(col); | ||
346 | } | 349 | } | ||
347 | } | 350 | } | ||
348 | } | 351 | } | ||
349 | 352 | | |||
350 | KDbTableViewData::KDbTableViewData(const QList<QVariant> &keys, const QList<QVariant> &values, | 353 | KDbTableViewData::KDbTableViewData(const QList<QVariant> &keys, const QList<QVariant> &values, | ||
▲ Show 20 Lines • Show All 604 Lines • Show Last 20 Lines |