#
# This properties file is used to create a PropertyResourceBundle
# It contains Locale specific strings used be the Accessibility package.
#
# When this file is read in, the strings are put into the 
# defaults table.  This is an implementation detail of the current
# workings of Accessibility.  DO NOT DEPEND ON THIS.  
# This may change in future versions of Accessibility as we improve 
# localization support.
#
# @author  Lynn Monsanto

#
# accessible roles
#
alert=\u8b66\u793a
awtcomponent=AWT \u5143\u4ef6
checkbox=\u6838\u53d6\u65b9\u584a
colorchooser=\u8272\u5f69\u9078\u64c7\u5668
columnheader=\u76f4\u6b04\u6a19\u984c
combobox=\u4e0b\u62c9\u5f0f\u6e05\u55ae\u65b9\u584a
canvas=\u756b\u5e03
desktopicon=\u684c\u9762\u5716\u793a
desktoppane=\u684c\u9762\u7a97\u683c
dialog=\u5c0d\u8a71\u65b9\u584a
directorypane=\u76ee\u9304\u7a97\u683c
glasspane=\u6aa2\u8996\u7a97\u683c
filechooser=\u6a94\u6848\u9078\u64c7\u5668
filler=\u586b\u5145\u7269
frame=\u6846\u67b6
internalframe=\u5167\u90e8\u6846\u67b6
label=\u6a19\u7c64
layeredpane=\u5206\u5c64\u7a97\u683c
list=\u6e05\u55ae
listitem=\u6e05\u55ae\u9805\u76ee
menubar=\u529f\u80fd\u8868\u5217
menu=\u529f\u80fd\u8868
menuitem=\u529f\u80fd\u8868\u9805\u76ee
optionpane=\u9078\u9805\u7a97\u683c
pagetab=\u9801\u9762\u6a19\u7c64
pagetablist=\u9801\u9762\u6a19\u7c64\u6e05\u55ae
panel=\u9762\u677f
passwordtext=\u5bc6\u78bc\u6587\u5b57
popupmenu=\u8e66\u73fe\u5f0f\u529f\u80fd\u8868
progressbar=\u9032\u5ea6\u5217
pushbutton=\u4e0b\u58d3\u6309\u9215
radiobutton=\u55ae\u9078\u9215
rootpane=root \u7a97\u683c
rowheader=\u5217\u6a19\u984c
scrollbar=\u6372\u8ef8
scrollpane=\u6372\u52d5\u7a97\u683c
separator=\u5206\u9694\u5143
slider=\u6ed1\u52d5\u8ef8
splitpane=\u5206\u5272\u7a97\u683c
swingcomponent=Swing \u5143\u4ef6
table=\u8868\u683c
text=\u6587\u5b57
tree=\u6a39\u72c0\u7d50\u69cb
togglebutton=\u5207\u63db\u6309\u9215
toolbar=\u5de5\u5177\u5217
tooltip=\u5de5\u5177\u63d0\u793a
unknown=\u672a\u77e5
viewport=\u6aa2\u8996\u5340
window=\u8996\u7a97
#
# accessible relations
#
labelFor=\u6a19\u793a\u5c0d\u8c61
labeledBy=\u6a19\u793a\u8005
memberOf=\u6240\u5c6c\u6210\u54e1
controlledBy=\u63a7\u5236\u8005
controllerFor=\u63a7\u5236\u5c0d\u8c61
#
# accessible states
#
active=\u4f5c\u7528\u4e2d
armed=\u5df2\u914d\u5099
busy=\u5fd9\u788c\u4e2d
checked=\u5df2\u6838\u9078
collapsed=\u5df2\u6536\u7e2e
editable=\u53ef\u7de8\u8f2f
expandable=\u53ef\u64f4\u5c55
expanded=\u5df2\u64f4\u5c55
enabled=\u5df2\u555f\u52d5
focusable=\u53ef\u805a\u7126
focused=\u5df2\u805a\u7126
iconified=\u5df2\u5716\u793a\u5316
modal=\u6a21\u614b
multiline=\u591a\u884c
multiselectable=\u53ef\u591a\u91cd\u9078\u53d6
opaque=\u4e0d\u900f\u660e
pressed=\u5df2\u6309\u4e0b
resizable=\u53ef\u8abf\u6574\u5927\u5c0f
selectable=\u53ef\u9078\u53d6
selected=\u5df2\u9078\u53d6
showing=\u986f\u793a
singleline=\u55ae\u884c
transient=\u66ab\u6642\u7684
visible=\u53ef\u898b\u7684
vertical=\u5782\u76f4
horizontal=\u6c34\u5e73
#
# accessible actions
#
toggle expand=\u5207\u63db\u64f4\u5c55

# new relations, roles and states for J2SE 1.5.0

# 
# accessible relations
#
flowsTo=\u6d41\u52d5\u81f3
flowsFrom=\u6d41\u52d5\u81ea
subwindowOf=\u5b50\u8996\u7a97
parentWindowOf=\u7236\u7cfb\u8996\u7a97
embeds=\u5167\u5d4c
embeddedBy=\u5167\u5d4c\u8005
childNodeOf=\u5b50\u7bc0\u9ede

#
# accessible roles
#
header=\u9801\u9996
footer=\u9801\u5c3e
paragraph=\u6bb5\u843d
ruler=\u6a19\u5c3a
editbar=\u7de8\u8f2f\u5217
progressMonitor=\u9032\u5ea6\u76e3\u8996\u5668

#
# accessible states
#
managesDescendants=\u7ba1\u7406\u5b50\u4ee3
indeterminate=\u4e0d\u78ba\u5b9a
truncated=\u5df2\u622a\u65b7

# new for J2SE 1.6.0

#
# accessible roles
#
htmlcontainer=HTML \u5bb9\u5668

#
# END OF MATERIAL TO LOCALIZE
#
