+void AccessibleNode::setFeatureProperty(AtspiStateType type) const
+{
+/*
+ LONGCLICKABLE = 0X0040,
+ SCROLLABLE = 0X0080,
+*/
+ switch(type) {
+ case ATSPI_STATE_CHECKED:
+ setFeatureProperty(NodeFeatureProperties::CHECKED, true);
+ break;
+ case ATSPI_STATE_CHECKABLE:
+ setFeatureProperty(NodeFeatureProperties::CHECKABLE, true);
+ break;
+ case ATSPI_STATE_ENABLED:
+ setFeatureProperty(NodeFeatureProperties::ENABLED, true);
+ break;
+ case ATSPI_STATE_FOCUSABLE:
+ setFeatureProperty(NodeFeatureProperties::FOCUSABLE, true);
+ break;
+ case ATSPI_STATE_FOCUSED:
+ setFeatureProperty(NodeFeatureProperties::FOCUSED, true);
+ break;
+ case ATSPI_STATE_SELECTABLE:
+ setFeatureProperty(NodeFeatureProperties::SELECTABLE, true);
+ break;
+ case ATSPI_STATE_SELECTED:
+ setFeatureProperty(NodeFeatureProperties::SELECTED, true);
+ break;
+ case ATSPI_STATE_SHOWING:
+ setFeatureProperty(NodeFeatureProperties::SHOWING, true);
+ break;
+ case ATSPI_STATE_VISIBLE:
+ setFeatureProperty(NodeFeatureProperties::VISIBLE, true);
+ break;
+ case ATSPI_STATE_ACTIVE:
+ setFeatureProperty(NodeFeatureProperties::ACTIVE, true);
+ break;
+ case ATSPI_STATE_SENSITIVE:
+ setFeatureProperty(NodeFeatureProperties::CLICKABLE, true);
+ break;
+
+ case ATSPI_STATE_TRANSIENT:
+ case ATSPI_STATE_TRUNCATED:
+ case ATSPI_STATE_ANIMATED:
+ case ATSPI_STATE_INVALID:
+ case ATSPI_STATE_ARMED:
+ case ATSPI_STATE_BUSY:
+ case ATSPI_STATE_COLLAPSED:
+ case ATSPI_STATE_DEFUNCT:
+ case ATSPI_STATE_EDITABLE:
+ case ATSPI_STATE_EXPANDABLE:
+ case ATSPI_STATE_EXPANDED:
+ case ATSPI_STATE_HAS_TOOLTIP:
+ case ATSPI_STATE_HORIZONTAL:
+ case ATSPI_STATE_ICONIFIED:
+ case ATSPI_STATE_MODAL:
+ case ATSPI_STATE_MULTI_LINE:
+ case ATSPI_STATE_MULTISELECTABLE:
+ case ATSPI_STATE_OPAQUE:
+ case ATSPI_STATE_PRESSED:
+ case ATSPI_STATE_RESIZABLE:
+ case ATSPI_STATE_SINGLE_LINE:
+ case ATSPI_STATE_STALE:
+ case ATSPI_STATE_VERTICAL:
+ case ATSPI_STATE_MANAGES_DESCENDANTS:
+ case ATSPI_STATE_INDETERMINATE:
+ case ATSPI_STATE_REQUIRED:
+ case ATSPI_STATE_INVALID_ENTRY:
+ case ATSPI_STATE_SUPPORTS_AUTOCOMPLETION:
+ case ATSPI_STATE_SELECTABLE_TEXT:
+ case ATSPI_STATE_IS_DEFAULT:
+ case ATSPI_STATE_VISITED:
+ case ATSPI_STATE_HAS_POPUP:
+ case ATSPI_STATE_READ_ONLY:
+ case ATSPI_STATE_LAST_DEFINED:
+ break;
+ }
+}
+
+void AccessibleNode::setFeatureProperty(NodeFeatureProperties prop, bool has) const