MCPcopy Create free account
hub / github.com/KDAB/GammaRay / data

Method data

core/paintbuffermodel.cpp:357–408  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

355}
356
357QVariant PaintBufferModel::data(const QModelIndex &index, int role) const
358{
359 if (!index.isValid() || !m_privateBuffer)
360 return QVariant();
361
362 if (!index.parent().isValid()) {
363 const auto cmd = m_privateBuffer->commands.at(index.row());
364 switch (role) {
365 case Qt::DisplayRole:
366 if (index.column() == 0)
367 return cmdTypes[cmd.id].name;
368 else if (index.column() == 1)
369 return argumentDisplayString(cmd);
370 else if (index.column() == 2 && m_costs.size() > index.row())
371 return m_costs.at(index.row());
372 break;
373 case Qt::DecorationRole:
374 if (index.column() == 1)
375 return argumentDecoration(cmd);
376 break;
377 case Qt::EditRole:
378 // for fancy matrix rendering in the client
379 if (index.column() == 1 && cmd.id == QPaintBufferPrivate::Cmd_SetTransform)
380 return m_privateBuffer->variants.at(cmd.offset);
381 break;
382 case PaintBufferModelRoles::ValueRole:
383 return argumentAt(cmd, 0);
384 case PaintBufferModelRoles::ClipPathRole:
385 return QVariant::fromValue(clipPath(index.row()));
386 case PaintBufferModelRoles::MaxCostRole:
387 if (index.column() == 2 && index.row() == 0)
388 return m_maxCost;
389 break;
390 case PaintBufferModelRoles::ObjectIdRole:
391 return QVariant::fromValue(m_buffer.origin(index.row()));
392 }
393 } else {
394 const auto cmd = m_privateBuffer->commands.at(index.internalId());
395 switch (role) {
396 case Qt::DisplayRole:
397 if (index.column() == 0)
398 return cmd_argument_names[cmdTypes[cmd.id].argumentName + index.row()];
399 else if (index.column() == 1)
400 return VariantHandler::displayString(argumentAt(cmd, index.row()));
401 break;
402 case PaintBufferModelRoles::ValueRole:
403 return argumentAt(cmd, index.row());
404 }
405 }
406
407 return QVariant();
408}
409
410QMap<int, QVariant> PaintBufferModel::itemData(const QModelIndex &index) const
411{

Callers 1

setPaintBufferMethod · 0.45

Calls 8

displayStringFunction · 0.85
rowMethod · 0.80
columnMethod · 0.80
originMethod · 0.80
QVariantClass · 0.70
isValidMethod · 0.45
parentMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected