| 388 | } |
| 389 | |
| 390 | int AccessibleInstanceView::indexOfChild(const QAccessibleInterface *iface) const |
| 391 | { |
| 392 | if (!view()->model()) |
| 393 | return -1; |
| 394 | QAccessibleInterface *parent = iface->parent(); |
| 395 | if (parent->object() != view()) |
| 396 | return -1; |
| 397 | |
| 398 | Q_ASSERT(iface->role() != QAccessible::TreeItem); // should be handled by tree class |
| 399 | if (iface->role() == QAccessible::Cell || iface->role() == QAccessible::ListItem) { |
| 400 | const AccessibleInstanceViewItem* cell = static_cast<const AccessibleInstanceViewItem*>(iface); |
| 401 | return logicalIndex(cell->m_index); |
| 402 | } else if (iface->role() == QAccessible::Pane) { |
| 403 | return 0; // corner button |
| 404 | } else { |
| 405 | qWarning() << "AccessibleInstanceView::indexOfChild has a child with unknown role..." << iface->role() << iface->text(QAccessible::Name); |
| 406 | } |
| 407 | // FIXME: we are in denial of our children. this should stop. |
| 408 | return -1; |
| 409 | } |
| 410 | |
| 411 | QString AccessibleInstanceView::text(QAccessible::Text t) const |
| 412 | { |