22#ifndef QT_NO_ACCESSIBILITY
33#include " AccessibleRegistersView.h"
44
5- AccessibleRegistersViewItem::AccessibleRegistersViewItem () : mParent(nullptr ), id(RegistersView::REGISTER_NAME::CAX )
5+ AccessibleRegistersViewItem::AccessibleRegistersViewItem (AccessibleRegistersView* parent, RegistersView::REGISTER_NAME id ) : mParent(parent ), id(id )
66{
77}
88
9- void AccessibleRegistersViewItem::setRegistersView (AccessibleRegistersView* parent, int id)
10- {
11- this ->mParent = parent;
12- this ->id = (RegistersView::REGISTER_NAME)id;
13- }
14-
159QString AccessibleRegistersViewItem::text (QAccessible::Text t) const
1610{
1711 RegistersView* w = mParent ->m_registersView ;
@@ -20,8 +14,8 @@ QString AccessibleRegistersViewItem::text(QAccessible::Text t) const
2014 case QAccessible::Name:
2115 case QAccessible::Value:
2216 if (w->mLABELDISPLAY .contains (id))
23- return QString (w->mRegisterMapping [id]) + " = " + w->GetRegStringValueFromValue (w-> mSelected , w->registerValue (&w->mRegDumpStruct , w-> mSelected )) + ' ' + w->getRegisterLabel (id);
24- return QString (w->mRegisterMapping [id]) + " = " + w->GetRegStringValueFromValue (w-> mSelected , w->registerValue (&w->mRegDumpStruct , w-> mSelected ));
17+ return QString (w->mRegisterMapping [id]) + " = " + w->GetRegStringValueFromValue (id , w->registerValue (&w->mRegDumpStruct , id )) + ' ' + w->getRegisterLabel (id);
18+ return QString (w->mRegisterMapping [id]) + " = " + w->GetRegStringValueFromValue (id , w->registerValue (&w->mRegDumpStruct , id ));
2519 case QAccessible::Help:
2620 return w->helpRegister (id);
2721 default :
@@ -53,7 +47,7 @@ QWindow* AccessibleRegistersViewItem::window() const
5347
5448QAccessibleInterface* AccessibleRegistersViewItem::parent () const
5549{
56- return dynamic_cast <QAccessibleInterface*>( mParent ) ;
50+ return mParent ;
5751}
5852
5953QAccessibleInterface* AccessibleRegistersViewItem::child (int index) const
@@ -142,8 +136,7 @@ QAccessibleInterface* AccessibleRegistersView::child(int index) const
142136 }
143137 else
144138 {
145- auto child = new AccessibleRegistersViewItem ();
146- child->setRegistersView (const_cast <AccessibleRegistersView*>(this ), index);
139+ auto child = new AccessibleRegistersViewItem (const_cast <AccessibleRegistersView*>(this ), (RegistersView::REGISTER_NAME)index);
147140 interfaces[index] = QAccessible::registerAccessibleInterface (child);
148141 return child;
149142 }
@@ -164,7 +157,10 @@ QAccessibleInterface* AccessibleRegistersView::childAt(int x, int y) const
164157
165158QAccessibleInterface* AccessibleRegistersView::focusChild () const
166159{
167- return child (m_registersView->mSelected );
160+ if (m_registersView->mSelected < RegistersView::UNKNOWN)
161+ return child (m_registersView->mSelected );
162+ else
163+ return (QAccessibleInterface*)this ;
168164}
169165
170166bool AccessibleRegistersView::isValid () const
0 commit comments