diff --git a/examples/accessibleapps/accessibleproperties.cpp b/examples/accessibleapps/accessibleproperties.cpp --- a/examples/accessibleapps/accessibleproperties.cpp +++ b/examples/accessibleapps/accessibleproperties.cpp @@ -98,7 +98,7 @@ append(QString("LocalizedRole"), acc.localizedRoleName(), item); append(QString("Visible"), acc.isVisible(), item); append(QString("Default"), acc.isDefault(), item); - append(QString("State"), stateString(acc), item); + append(QString("State"), acc.stateString(), item); append(tr("Url"), acc.url(), item); AccessibleObject parent = acc.parent(); if (parent.isValid()) @@ -355,22 +355,3 @@ return nameItem; } - -QString ObjectProperties::stateString(const QAccessibleClient::AccessibleObject &acc) -{ - QStringList s; - if (acc.isActive()) s << "Active"; - if (acc.isCheckable()) s << "Checkable"; - if (acc.isChecked()) s << "Checked"; - if (acc.isEditable()) s << "Editable"; - if (acc.isExpandable()) s << "Expandable"; - if (acc.isExpanded()) s << "Expanded"; - if (acc.isFocusable()) s << "Focusable"; - if (acc.isFocused()) s << "Focused"; - if (acc.isMultiLine()) s << "MultiLine"; - if (acc.isSelectable()) s << "Selectable"; - if (acc.isSelected()) s << "Selected"; - if (acc.isSensitive()) s << "Sensitive"; - if (acc.isSingleLine()) s << "SingleLine"; - return s.join(","); -} diff --git a/src/qaccessibilityclient/accessibleobject.h b/src/qaccessibilityclient/accessibleobject.h --- a/src/qaccessibilityclient/accessibleobject.h +++ b/src/qaccessibilityclient/accessibleobject.h @@ -712,6 +712,13 @@ /// Returns if the AccessibleObject is a single line text edit bool isSingleLine() const; + /** + \brief Return a string representing states of this object. + + This is useful for debugging applications. + */ + QString stateString() const; + /* * \internal * \brief isTransient marks an object as being unreliable in that it can quickly disappear or change diff --git a/src/qaccessibilityclient/accessibleobject.cpp b/src/qaccessibilityclient/accessibleobject.cpp --- a/src/qaccessibilityclient/accessibleobject.cpp +++ b/src/qaccessibilityclient/accessibleobject.cpp @@ -513,6 +513,25 @@ return d->registryPrivate->state(*this) & (quint64(1) << ATSPI_STATE_SINGLE_LINE); } +QString AccessibleObject::stateString() const +{ + QStringList s; + if (isActive()) s << QStringLiteral("Active"); + if (isCheckable()) s << QStringLiteral("Checkable"); + if (isChecked()) s << QStringLiteral("Checked"); + if (isEditable()) s << QStringLiteral("Editable"); + if (isExpandable()) s << QStringLiteral("Expandable"); + if (isExpanded()) s << QStringLiteral("Expanded"); + if (isFocusable()) s << QStringLiteral("Focusable"); + if (isFocused()) s << QStringLiteral("Focused"); + if (isMultiLine()) s << QStringLiteral("MultiLine"); + if (isSelectable()) s << QStringLiteral("Selectable"); + if (isSelected()) s << QStringLiteral("Selected"); + if (isSensitive()) s << QStringLiteral("Sensitive"); + if (isSingleLine()) s << QStringLiteral("SingleLine"); + return s.join(QLatin1String(", ")); +} + bool AccessibleObject::isVisible() const { return d->registryPrivate->state(*this) & (quint64(1) << ATSPI_STATE_VISIBLE);