VirtualBox

Changeset 63769 in vbox for trunk/src/VBox/Frontends


Ignore:
Timestamp:
Sep 8, 2016 2:55:37 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
110584
Message:

FE/Qt: bugref:6899: Accessibility support (step 19): Selector UI: Reworking details item acessibility interface to represent elements (not just sets and groups) as lists as well.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/details/UIGDetailsItem.cpp

    r63764 r63769  
    2828
    2929/* GUI includes: */
     30# include "UIGraphicsTextPane.h"
    3031# include "UIGDetailsGroup.h"
    3132# include "UIGDetailsSet.h"
     
    101102        AssertPtrReturn(item(), 0);
    102103
    103         /* Return the number of set children: */
    104         if (item()->type() == UIGDetailsItemType_Set)
    105             return item()->items().size();
     104        /* Return the number of children: */
     105        switch (item()->type())
     106        {
     107            case UIGDetailsItemType_Set:     return item()->items().size();
     108            case UIGDetailsItemType_Element: return item()->toElement()->text().size();
     109            default: break;
     110        }
    106111
    107112        /* Zero by default: */
     
    117122        AssertReturn(iIndex >= 0 && iIndex < childCount(), 0);
    118123
    119         /* Return the child with the passed iIndex: */
    120         return QAccessible::queryAccessibleInterface(item()->items().at(iIndex));
     124        /* Return the child with the iIndex: */
     125        switch (item()->type())
     126        {
     127            case UIGDetailsItemType_Set:     return QAccessible::queryAccessibleInterface(item()->items().at(iIndex));
     128            case UIGDetailsItemType_Element: return QAccessible::queryAccessibleInterface(&item()->toElement()->text()[iIndex]);
     129            default: break;
     130        }
     131
     132        /* Null be default: */
     133        return 0;
    121134    }
    122135
     
    162175    virtual QAccessible::Role role() const /* override */
    163176    {
    164         /* Make sure item still alive: */
    165         AssertPtrReturn(item(), QAccessible::NoRole);
    166 
    167         /* Return the role of set: */
    168         if (item()->type() == UIGDetailsItemType_Set)
    169             return QAccessible::List;
    170 
    171         /* ListItem by default: */
    172         return QAccessible::ListItem;
     177        /* Return the role: */
     178        return QAccessible::List;
    173179    }
    174180
     
    176182    virtual QAccessible::State state() const /* override */
    177183    {
    178         /* Return the default state: */
    179         QAccessible::State state;
    180         return state;
     184        /* Return the state: */
     185        return QAccessible::State();
    181186    }
    182187
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette