case nsIAccessible::STATE_ACTIVE:
switch (aExtState) { case nsIAccessible::EXT_STATE_ACTIVE:
TranslateAState(PRUint32 aState){    switch (aState) {    case nsIAccessible::STATE_SELECTED:        return ATK_STATE_SELECTED;    case nsIAccessible::STATE_FOCUSED:        return ATK_STATE_FOCUSED;    case nsIAccessible::STATE_PRESSED:        return ATK_STATE_PRESSED;    case nsIAccessible::STATE_CHECKED:        return ATK_STATE_CHECKED;    case nsIAccessible::STATE_EXPANDED:        return ATK_STATE_EXPANDED;    case nsIAccessible::STATE_COLLAPSED:        return ATK_STATE_EXPANDABLE;        // The control can't accept input at this time    case nsIAccessible::STATE_BUSY:        return ATK_STATE_BUSY;    case nsIAccessible::STATE_FOCUSABLE:        return ATK_STATE_FOCUSABLE;    case nsIAccessible::STATE_SELECTABLE:        return ATK_STATE_SELECTABLE;    case nsIAccessible::STATE_SIZEABLE:        return ATK_STATE_RESIZABLE;    case nsIAccessible::STATE_MULTISELECTABLE:        return ATK_STATE_MULTISELECTABLE;#if 0        // The following states are opposite the MSAA states.        // We need to deal with them specially    case nsIAccessible::STATE_INVISIBLE:        return !ATK_STATE_VISIBLE;    case nsIAccessible::STATE_UNAVAILABLE:        return !ATK_STATE_ENABLED;    case nsIAccessible::STATE_READONLY:        return !ATK_STATE_EDITABLE;#endif        // The following state is        // Extended state flags (for non-MSAA, for Java and Gnome/ATK support)        // They are only the states that are not already  mapped in MSAA        // See www.accessmozilla.org/article.php?sid=11 for information on the        // mappings between accessibility API state    case nsIAccessible::STATE_ACTIVE:        return ATK_STATE_ACTIVE;    case nsIAccessible::STATE_EXPANDABLE:        return ATK_STATE_EXPANDABLE;#if 0        // Need change definitions in nsIAccessible.idl to avoid        // duplicate value    case nsIAccessible::STATE_MODAL:        return ATK_STATE_MODAL;#endif    case nsIAccessible::STATE_MULTI_LINE:        return ATK_STATE_MULTI_LINE;    case nsIAccessible::STATE_SENSITIVE:        return ATK_STATE_SENSITIVE;    case nsIAccessible::STATE_SHOWING:        return ATK_STATE_SHOWING;    case nsIAccessible::STATE_SINGLE_LINE:        return ATK_STATE_SINGLE_LINE;    case nsIAccessible::STATE_TRANSIENT:        return ATK_STATE_TRANSIENT;    case nsIAccessible::STATE_VERTICAL:        return ATK_STATE_VERTICAL;    default:        return ATK_STATE_INVALID;    }}