###############################################################################
# Copyright (c) 2007, 2008 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
#msaa
msaa.application=Application
msaa.button=Button
msaa.cell=cell
msaa.checkbox=check box
msaa.checked=checked
msaa.checker_tip=Go to GUI Report
msaa.checker=Go to &GUI Report
msaa.clear_tip=Clear Event Logs
msaa.clear=Clea&r
msaa.collapse=Collapse
msaa.collapse_all=Collapse All
msaa.columnheader=Column header
msaa.combobox=Combo box
msaa.description=Description
msaa.document=Document
msaa.edit=Edit
msaa.edit_readonly=Edit read only
msaa.editspinbox=edit spin box
msaa.expand=Expand &All Children
msaa.expand_all=Expand All
msaa.external_browsers=External &Browsers
msaa.external_windows=External &Windows
msaa.filter_html=Show &Flash Items Only
msaa.flash_end=Flash movie end
msaa.flash_start=Flash movie start
msaa.flash_inaccessible=Inaccessible Flash movie
msaa.font=Font:
msaa.graphic=Graphic
msaa.showTTSEvents=Show &On-Screen TTS Messages
msaa.showNull=Show &null Properties
msaa.indicator=Indicator
msaa.jaws_simulation=GUI Summary
msaa.link=Link
msaa.listbox=List box
msaa.menu=menu
msaa.submenu=submenu
msaa.menubar=Menu bar
msaa.msaa_event=GUI Event
msaa.name=Name
msaa.value=Value
msaa.NAMELESS=Nameless
msaa.no_alt_for_button=No ALT text for button
msaa.no_alt_for_clickable_object=No ALT text for clickable item
msaa.no_alt_for_graphic=No ALT text for graphic
msaa.no_alt_for_nonclickable_object=No ALT text for non-clickable item
msaa.no_alt_for_form_control=No ALT text for form control
msaa.no_title_for_table=No caption for table
msaa.no_text_for_link=No text for hyperlink
msaa.no_title_for_frame=No title for frame
msaa.not_checked=not checked
msaa.preference_description=GUI accessibility preferences
msaa.progressbar=Progress bar
msaa.radiobutton=radio button
msaa.refresh=&Refresh
msaa.role=Role
msaa.rowheader=Row header
msaa.scrollbar=Scroll bar
msaa.selected=selected
msaa.show_problem=Show Report I&cons on Screen
msaa.show_tree=Show &Icons on Screen
msaa.speak_event=Read &Event Messages
msaa.speak_tip=Read Entire Text
msaa.speak_here=Read from &Here
msaa.speak=Read &All
msaa.state=State
msaa.statusbar=Status bar
msaa.stop_tip=Stop reading
msaa.stop=&Stop
msaa.tab=Tab
msaa.table=Table
msaa.toolbar=Tool bar
msaa.tree=tree
msaa.treeview=Tree view
msaa.unavailable=Unavailable
msaa.updown_scrollbat=up down Scroll bar
msaa.window=Window
msaa.warning=Warning
msaa.menu_start=menu
msaa.menu_end=End menu
msaa.popup_start=submenu
msaa.popup_end=End submenu
msaa.show_offscreen=Show &Off-screen Items
msaa.no_flash=No Flash text in this page
msaa.empty_page=This page is empty
msaa.ns_passed=------ ({0,number,#.#} second passed)
msaa.jaws.notarget=No target window is specified.\n\nPlease select an window in the "Target Window" menu.
msaa.showError=Show &Error Report
msaa.showWarning=Show &Warning Report
msaa.showInformation=Show &Information Report
msaa.preferences=&Preferences...
msaa.bringToTop=Always on &Top
msaa.switchPerspective=&Hide Embedded Browser Automatically
msaa.changePropertiesColor=Show &Value Change with Color
msaa.filters_menu=&Filters...
msaa.filters_title=GUI Event Filters
msaa.filters_message=S&elect the events to display
msaa.filters_default=&Restore Defaults
msaa.showRawEvents=S&how Event Details
msaa.vis_label=Visualization Options
msaa.vis_notice=We recommend that screen reader users turn off these options
msaa.vis_use_overlay=&Use transparent window for visualization
msaa.vis_always_top=Keep tool window on &top
msaa.copy=&Copy
msaa.invoke=&Invoke Method

#msaa properties
props.pressEnter=Press Enter to Invoke
props.pressOK=Press OK to Invoke
props.invalid=*Invalid value {0}
props.range=*Valid range: {1} <= {0} <={2}
props.success=Success
props.fail=Fail

#ia2
ia2.shape=Shape
ia2.style_shape={0} shape
ia2.heading_level=Heading level {0}
