|
| 1 | +# A part of NonVisual Desktop Access (NVDA) |
| 2 | +# This file is covered by the GNU General Public License. |
| 3 | +# See the file COPYING for more details. |
| 4 | +# Copyright (C) 2007-2021 NV Access Limited, Babbage B.V. |
| 5 | + |
| 6 | +from buildVersion import version_year |
| 7 | + |
| 8 | +# imports used in __all__ |
| 9 | +from .isCurrent import IsCurrent |
| 10 | +from .processing import OutputReason, processAndLabelStates, processNegativeStates, processPositiveStates |
| 11 | +from .role import Role, silentRolesOnFocus, silentValuesForRoles, _roleLabels |
| 12 | +from .state import State, STATES_SORTED, negativeStateLabels, _stateLabels |
| 13 | + |
| 14 | + |
| 15 | +__all__ = [ |
| 16 | + "IsCurrent", |
| 17 | + "OutputReason", |
| 18 | + "processAndLabelStates", |
| 19 | + "processNegativeStates", |
| 20 | + "processPositiveStates", |
| 21 | + "Role", |
| 22 | + "silentRolesOnFocus", |
| 23 | + "silentValuesForRoles", |
| 24 | + "State", |
| 25 | + "STATES_SORTED", |
| 26 | + "negativeStateLabels", |
| 27 | +] |
| 28 | + |
| 29 | + |
| 30 | +# Added to maintain backwards compatibility, marked for deprecation to be removed in 2022.1 |
| 31 | +# usages to be replaced by Role.*.displayString and State.*.displayString |
| 32 | +if version_year < 2022: |
| 33 | + roleLabels = _roleLabels |
| 34 | + stateLabels = _stateLabels |
| 35 | + |
| 36 | + |
| 37 | +# Added to maintain backwards compatibility, marked for deprecation to be removed in 2022.1 |
| 38 | +if version_year < 2022: |
| 39 | + ROLE_UNKNOWN = Role.UNKNOWN |
| 40 | + ROLE_WINDOW = Role.WINDOW |
| 41 | + ROLE_TITLEBAR = Role.TITLEBAR |
| 42 | + ROLE_PANE = Role.PANE |
| 43 | + ROLE_DIALOG = Role.DIALOG |
| 44 | + ROLE_CHECKBOX = Role.CHECKBOX |
| 45 | + ROLE_RADIOBUTTON = Role.RADIOBUTTON |
| 46 | + ROLE_STATICTEXT = Role.STATICTEXT |
| 47 | + ROLE_EDITABLETEXT = Role.EDITABLETEXT |
| 48 | + ROLE_BUTTON = Role.BUTTON |
| 49 | + ROLE_MENUBAR = Role.MENUBAR |
| 50 | + ROLE_MENUITEM = Role.MENUITEM |
| 51 | + ROLE_POPUPMENU = Role.POPUPMENU |
| 52 | + ROLE_COMBOBOX = Role.COMBOBOX |
| 53 | + ROLE_LIST = Role.LIST |
| 54 | + ROLE_LISTITEM = Role.LISTITEM |
| 55 | + ROLE_GRAPHIC = Role.GRAPHIC |
| 56 | + ROLE_HELPBALLOON = Role.HELPBALLOON |
| 57 | + ROLE_TOOLTIP = Role.TOOLTIP |
| 58 | + ROLE_LINK = Role.LINK |
| 59 | + ROLE_TREEVIEW = Role.TREEVIEW |
| 60 | + ROLE_TREEVIEWITEM = Role.TREEVIEWITEM |
| 61 | + ROLE_TAB = Role.TAB |
| 62 | + ROLE_TABCONTROL = Role.TABCONTROL |
| 63 | + ROLE_SLIDER = Role.SLIDER |
| 64 | + ROLE_PROGRESSBAR = Role.PROGRESSBAR |
| 65 | + ROLE_SCROLLBAR = Role.SCROLLBAR |
| 66 | + ROLE_STATUSBAR = Role.STATUSBAR |
| 67 | + ROLE_TABLE = Role.TABLE |
| 68 | + ROLE_TABLECELL = Role.TABLECELL |
| 69 | + ROLE_TABLECOLUMN = Role.TABLECOLUMN |
| 70 | + ROLE_TABLEROW = Role.TABLEROW |
| 71 | + ROLE_TABLECOLUMNHEADER = Role.TABLECOLUMNHEADER |
| 72 | + ROLE_TABLEROWHEADER = Role.TABLEROWHEADER |
| 73 | + ROLE_FRAME = Role.FRAME |
| 74 | + ROLE_TOOLBAR = Role.TOOLBAR |
| 75 | + ROLE_DROPDOWNBUTTON = Role.DROPDOWNBUTTON |
| 76 | + ROLE_CLOCK = Role.CLOCK |
| 77 | + ROLE_SEPARATOR = Role.SEPARATOR |
| 78 | + ROLE_FORM = Role.FORM |
| 79 | + ROLE_HEADING = Role.HEADING |
| 80 | + ROLE_HEADING1 = Role.HEADING1 |
| 81 | + ROLE_HEADING2 = Role.HEADING2 |
| 82 | + ROLE_HEADING3 = Role.HEADING3 |
| 83 | + ROLE_HEADING4 = Role.HEADING4 |
| 84 | + ROLE_HEADING5 = Role.HEADING5 |
| 85 | + ROLE_HEADING6 = Role.HEADING6 |
| 86 | + ROLE_PARAGRAPH = Role.PARAGRAPH |
| 87 | + ROLE_BLOCKQUOTE = Role.BLOCKQUOTE |
| 88 | + ROLE_TABLEHEADER = Role.TABLEHEADER |
| 89 | + ROLE_TABLEBODY = Role.TABLEBODY |
| 90 | + ROLE_TABLEFOOTER = Role.TABLEFOOTER |
| 91 | + ROLE_DOCUMENT = Role.DOCUMENT |
| 92 | + ROLE_ANIMATION = Role.ANIMATION |
| 93 | + ROLE_APPLICATION = Role.APPLICATION |
| 94 | + ROLE_BOX = Role.BOX |
| 95 | + ROLE_GROUPING = Role.GROUPING |
| 96 | + ROLE_PROPERTYPAGE = Role.PROPERTYPAGE |
| 97 | + ROLE_CANVAS = Role.CANVAS |
| 98 | + ROLE_CAPTION = Role.CAPTION |
| 99 | + ROLE_CHECKMENUITEM = Role.CHECKMENUITEM |
| 100 | + ROLE_DATEEDITOR = Role.DATEEDITOR |
| 101 | + ROLE_ICON = Role.ICON |
| 102 | + ROLE_DIRECTORYPANE = Role.DIRECTORYPANE |
| 103 | + ROLE_EMBEDDEDOBJECT = Role.EMBEDDEDOBJECT |
| 104 | + ROLE_ENDNOTE = Role.ENDNOTE |
| 105 | + ROLE_FOOTER = Role.FOOTER |
| 106 | + ROLE_FOOTNOTE = Role.FOOTNOTE |
| 107 | + ROLE_GLASSPANE = Role.GLASSPANE |
| 108 | + ROLE_HEADER = Role.HEADER |
| 109 | + ROLE_IMAGEMAP = Role.IMAGEMAP |
| 110 | + ROLE_INPUTWINDOW = Role.INPUTWINDOW |
| 111 | + ROLE_LABEL = Role.LABEL |
| 112 | + ROLE_NOTE = Role.NOTE |
| 113 | + ROLE_PAGE = Role.PAGE |
| 114 | + ROLE_RADIOMENUITEM = Role.RADIOMENUITEM |
| 115 | + ROLE_LAYEREDPANE = Role.LAYEREDPANE |
| 116 | + ROLE_REDUNDANTOBJECT = Role.REDUNDANTOBJECT |
| 117 | + ROLE_ROOTPANE = Role.ROOTPANE |
| 118 | + ROLE_EDITBAR = Role.EDITBAR |
| 119 | + ROLE_TERMINAL = Role.TERMINAL |
| 120 | + ROLE_RICHEDIT = Role.RICHEDIT |
| 121 | + ROLE_RULER = Role.RULER |
| 122 | + ROLE_SCROLLPANE = Role.SCROLLPANE |
| 123 | + ROLE_SECTION = Role.SECTION |
| 124 | + ROLE_SHAPE = Role.SHAPE |
| 125 | + ROLE_SPLITPANE = Role.SPLITPANE |
| 126 | + ROLE_VIEWPORT = Role.VIEWPORT |
| 127 | + ROLE_TEAROFFMENU = Role.TEAROFFMENU |
| 128 | + ROLE_TEXTFRAME = Role.TEXTFRAME |
| 129 | + ROLE_TOGGLEBUTTON = Role.TOGGLEBUTTON |
| 130 | + ROLE_BORDER = Role.BORDER |
| 131 | + ROLE_CARET = Role.CARET |
| 132 | + ROLE_CHARACTER = Role.CHARACTER |
| 133 | + ROLE_CHART = Role.CHART |
| 134 | + ROLE_CURSOR = Role.CURSOR |
| 135 | + ROLE_DIAGRAM = Role.DIAGRAM |
| 136 | + ROLE_DIAL = Role.DIAL |
| 137 | + ROLE_DROPLIST = Role.DROPLIST |
| 138 | + ROLE_SPLITBUTTON = Role.SPLITBUTTON |
| 139 | + ROLE_MENUBUTTON = Role.MENUBUTTON |
| 140 | + ROLE_DROPDOWNBUTTONGRID = Role.DROPDOWNBUTTONGRID |
| 141 | + ROLE_MATH = Role.MATH |
| 142 | + ROLE_GRIP = Role.GRIP |
| 143 | + ROLE_HOTKEYFIELD = Role.HOTKEYFIELD |
| 144 | + ROLE_INDICATOR = Role.INDICATOR |
| 145 | + ROLE_SPINBUTTON = Role.SPINBUTTON |
| 146 | + ROLE_SOUND = Role.SOUND |
| 147 | + ROLE_WHITESPACE = Role.WHITESPACE |
| 148 | + ROLE_TREEVIEWBUTTON = Role.TREEVIEWBUTTON |
| 149 | + ROLE_IPADDRESS = Role.IPADDRESS |
| 150 | + ROLE_DESKTOPICON = Role.DESKTOPICON |
| 151 | + ROLE_INTERNALFRAME = Role.INTERNALFRAME |
| 152 | + ROLE_DESKTOPPANE = Role.DESKTOPPANE |
| 153 | + ROLE_OPTIONPANE = Role.OPTIONPANE |
| 154 | + ROLE_COLORCHOOSER = Role.COLORCHOOSER |
| 155 | + ROLE_FILECHOOSER = Role.FILECHOOSER |
| 156 | + ROLE_FILLER = Role.FILLER |
| 157 | + ROLE_MENU = Role.MENU |
| 158 | + ROLE_PANEL = Role.PANEL |
| 159 | + ROLE_PASSWORDEDIT = Role.PASSWORDEDIT |
| 160 | + ROLE_FONTCHOOSER = Role.FONTCHOOSER |
| 161 | + ROLE_LINE = Role.LINE |
| 162 | + ROLE_FONTNAME = Role.FONTNAME |
| 163 | + ROLE_FONTSIZE = Role.FONTSIZE |
| 164 | + ROLE_BOLD = Role.BOLD |
| 165 | + ROLE_ITALIC = Role.ITALIC |
| 166 | + ROLE_UNDERLINE = Role.UNDERLINE |
| 167 | + ROLE_FGCOLOR = Role.FGCOLOR |
| 168 | + ROLE_BGCOLOR = Role.BGCOLOR |
| 169 | + ROLE_SUPERSCRIPT = Role.SUPERSCRIPT |
| 170 | + ROLE_SUBSCRIPT = Role.SUBSCRIPT |
| 171 | + ROLE_STYLE = Role.STYLE |
| 172 | + ROLE_INDENT = Role.INDENT |
| 173 | + ROLE_ALIGNMENT = Role.ALIGNMENT |
| 174 | + ROLE_ALERT = Role.ALERT |
| 175 | + ROLE_DATAGRID = Role.DATAGRID |
| 176 | + ROLE_DATAITEM = Role.DATAITEM |
| 177 | + ROLE_HEADERITEM = Role.HEADERITEM |
| 178 | + ROLE_THUMB = Role.THUMB |
| 179 | + ROLE_CALENDAR = Role.CALENDAR |
| 180 | + ROLE_VIDEO = Role.VIDEO |
| 181 | + ROLE_AUDIO = Role.AUDIO |
| 182 | + ROLE_CHARTELEMENT = Role.CHARTELEMENT |
| 183 | + ROLE_DELETED_CONTENT = Role.DELETED_CONTENT |
| 184 | + ROLE_INSERTED_CONTENT = Role.INSERTED_CONTENT |
| 185 | + ROLE_LANDMARK = Role.LANDMARK |
| 186 | + ROLE_ARTICLE = Role.ARTICLE |
| 187 | + ROLE_REGION = Role.REGION |
| 188 | + ROLE_FIGURE = Role.FIGURE |
| 189 | + ROLE_MARKED_CONTENT = Role.MARKED_CONTENT |
| 190 | + |
| 191 | + |
| 192 | +# Added to maintain backwards compatibility, marked for deprecation to be removed in 2022.1 |
| 193 | +if version_year < 2022: |
| 194 | + STATE_UNAVAILABLE = State.UNAVAILABLE |
| 195 | + STATE_FOCUSED = State.FOCUSED |
| 196 | + STATE_SELECTED = State.SELECTED |
| 197 | + STATE_BUSY = State.BUSY |
| 198 | + STATE_PRESSED = State.PRESSED |
| 199 | + STATE_CHECKED = State.CHECKED |
| 200 | + STATE_HALFCHECKED = State.HALFCHECKED |
| 201 | + STATE_READONLY = State.READONLY |
| 202 | + STATE_EXPANDED = State.EXPANDED |
| 203 | + STATE_COLLAPSED = State.COLLAPSED |
| 204 | + STATE_INVISIBLE = State.INVISIBLE |
| 205 | + STATE_VISITED = State.VISITED |
| 206 | + STATE_LINKED = State.LINKED |
| 207 | + STATE_HASPOPUP = State.HASPOPUP |
| 208 | + STATE_PROTECTED = State.PROTECTED |
| 209 | + STATE_REQUIRED = State.REQUIRED |
| 210 | + STATE_DEFUNCT = State.DEFUNCT |
| 211 | + STATE_INVALID_ENTRY = State.INVALID_ENTRY |
| 212 | + STATE_MODAL = State.MODAL |
| 213 | + STATE_AUTOCOMPLETE = State.AUTOCOMPLETE |
| 214 | + STATE_MULTILINE = State.MULTILINE |
| 215 | + STATE_ICONIFIED = State.ICONIFIED |
| 216 | + STATE_OFFSCREEN = State.OFFSCREEN |
| 217 | + STATE_SELECTABLE = State.SELECTABLE |
| 218 | + STATE_FOCUSABLE = State.FOCUSABLE |
| 219 | + STATE_CLICKABLE = State.CLICKABLE |
| 220 | + STATE_EDITABLE = State.EDITABLE |
| 221 | + STATE_CHECKABLE = State.CHECKABLE |
| 222 | + STATE_DRAGGABLE = State.DRAGGABLE |
| 223 | + STATE_DRAGGING = State.DRAGGING |
| 224 | + STATE_DROPTARGET = State.DROPTARGET |
| 225 | + STATE_SORTED = State.SORTED |
| 226 | + STATE_SORTED_ASCENDING = State.SORTED_ASCENDING |
| 227 | + STATE_SORTED_DESCENDING = State.SORTED_DESCENDING |
| 228 | + STATE_HASLONGDESC = State.HASLONGDESC |
| 229 | + STATE_PINNED = State.PINNED |
| 230 | + STATE_HASFORMULA = State.HASFORMULA |
| 231 | + STATE_HASCOMMENT = State.HASCOMMENT |
| 232 | + STATE_OBSCURED = State.OBSCURED |
| 233 | + STATE_CROPPED = State.CROPPED |
| 234 | + STATE_OVERFLOWING = State.OVERFLOWING |
| 235 | + STATE_UNLOCKED = State.UNLOCKED |
| 236 | + STATE_HAS_ARIA_DETAILS = State.HAS_ARIA_DETAILS |
0 commit comments