summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2011-10-13 08:11:23 -0400
committerOz Linden <oz@lindenlab.com>2011-10-13 08:11:23 -0400
commit2e26a75215bb2d708671d71c5c66e2996c11495f (patch)
treec2cdcbf4758462b11f296c9ab200237aa33e5c71
parenta69ae967243e19bdc5969c34f0b1e94be794919d (diff)
parentaabdbeadf53b3a20b4db563a23535af74fd7d4b7 (diff)
merge changes for vwr-27090
-rw-r--r--.hgtags3
-rw-r--r--BuildParams2
-rw-r--r--autobuild.xml8
-rw-r--r--doc/contributions.txt5
-rw-r--r--indra/cmake/FindGLH.cmake30
-rw-r--r--indra/cmake/GLH.cmake11
-rw-r--r--indra/cmake/LLRender.cmake2
-rw-r--r--indra/cmake/LLSharedLibs.cmake24
-rw-r--r--indra/cmake/Linking.cmake29
-rw-r--r--indra/cmake/OpenSSL.cmake2
-rw-r--r--indra/linux_crash_logger/CMakeLists.txt1
-rw-r--r--indra/llcommon/lleventapi.cpp30
-rw-r--r--indra/llcommon/lleventapi.h83
-rw-r--r--indra/llcommon/llevents.cpp11
-rw-r--r--indra/llcommon/llmemory.cpp95
-rw-r--r--indra/llcommon/llmemory.h11
-rw-r--r--indra/llcommon/llqueuedthread.cpp7
-rw-r--r--indra/llcommon/llqueuedthread.h2
-rw-r--r--indra/llcommon/llversionviewer.h4
-rw-r--r--indra/llcommon/llworkerthread.cpp4
-rw-r--r--indra/llcommon/llworkerthread.h2
-rw-r--r--indra/llprimitive/llmaterialtable.cpp2
-rw-r--r--indra/llui/CMakeLists.txt2
-rw-r--r--indra/llui/lllineeditor.cpp1
-rw-r--r--indra/llui/llnotificationtemplate.h4
-rw-r--r--indra/llui/llscrollcontainer.cpp9
-rw-r--r--indra/llui/llscrollcontainer.h1
-rw-r--r--indra/llui/lluictrl.cpp6
-rw-r--r--indra/llui/lluictrl.h4
-rw-r--r--indra/llui/lluictrlfactory.h6
-rw-r--r--indra/llui/llview.cpp650
-rw-r--r--indra/llui/llview.h58
-rw-r--r--indra/llui/llviewinject.cpp49
-rw-r--r--indra/llui/llviewinject.h56
-rw-r--r--indra/llwindow/CMakeLists.txt2
-rw-r--r--indra/llwindow/llwindow.cpp9
-rw-r--r--indra/llwindow/llwindow.h2
-rw-r--r--indra/llwindow/llwindowlistener.cpp307
-rw-r--r--indra/llxml/llcontrol.h3
-rw-r--r--indra/llxuixml/llinitparam.h113
-rw-r--r--indra/llxuixml/llxuiparser.cpp3
-rw-r--r--indra/newview/CMakeLists.txt2
-rw-r--r--indra/newview/app_settings/settings.xml13
-rw-r--r--indra/newview/gpu_table.txt736
-rw-r--r--indra/newview/llappviewer.cpp60
-rw-r--r--indra/newview/llfloaterabout.cpp231
-rwxr-xr-xindra/newview/llfloaterpreference.cpp93
-rw-r--r--indra/newview/llfloaterpreference.h19
-rw-r--r--indra/newview/llfolderview.cpp2
-rw-r--r--indra/newview/llpanelmarketplaceinboxinventory.cpp7
-rw-r--r--indra/newview/lltexturefetch.cpp2
-rw-r--r--indra/newview/lltoolpie.cpp38
-rw-r--r--indra/newview/lltoolpie.h1
-rw-r--r--indra/newview/llviewercontrollistener.cpp231
-rw-r--r--indra/newview/llviewercontrollistener.h10
-rw-r--r--indra/newview/llviewerdisplay.cpp2
-rw-r--r--indra/newview/llviewerinventory.cpp2
-rw-r--r--indra/newview/llviewermessage.cpp4
-rw-r--r--indra/newview/llviewerwindow.cpp9
-rw-r--r--indra/newview/llviewerwindow.h4
-rw-r--r--indra/newview/llwindowlistener.cpp505
-rw-r--r--indra/newview/llwindowlistener.h (renamed from indra/llwindow/llwindowlistener.h)8
-rw-r--r--indra/newview/skins/default/textures/textures.xml2
-rw-r--r--indra/newview/skins/default/xui/de/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/de/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/de/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/de/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/de/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/de/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/de/notifications.xml79
-rw-r--r--indra/newview/skins/default/xui/de/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/de/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/de/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/de/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/de/strings.xml73
-rw-r--r--indra/newview/skins/default/xui/en/floater_about.xml6
-rw-r--r--indra/newview/skins/default/xui/en/floater_publish_classified.xml2
-rw-r--r--indra/newview/skins/default/xui/en/floater_stats.xml339
-rw-r--r--indra/newview/skins/default/xui/en/notifications.xml168
-rw-r--r--indra/newview/skins/default/xui/en/panel_preferences_move.xml162
-rw-r--r--indra/newview/skins/default/xui/en/sidepanel_task_info.xml2
-rw-r--r--indra/newview/skins/default/xui/en/strings.xml2
-rw-r--r--indra/newview/skins/default/xui/es/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/es/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/es/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/es/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/es/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/es/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/es/notifications.xml79
-rw-r--r--indra/newview/skins/default/xui/es/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/es/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/es/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/es/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/es/strings.xml75
-rw-r--r--indra/newview/skins/default/xui/fr/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/fr/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/fr/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/fr/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/fr/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/fr/notifications.xml79
-rw-r--r--indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/fr/panel_preferences_chat.xml2
-rw-r--r--indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml6
-rw-r--r--indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml4
-rw-r--r--indra/newview/skins/default/xui/fr/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/fr/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/fr/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/fr/strings.xml85
-rw-r--r--indra/newview/skins/default/xui/it/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/it/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/it/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/it/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/it/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/it/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/it/notifications.xml79
-rw-r--r--indra/newview/skins/default/xui/it/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/it/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/it/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/it/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/it/strings.xml73
-rw-r--r--indra/newview/skins/default/xui/ja/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/ja/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/ja/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/ja/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/ja/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/ja/notifications.xml79
-rw-r--r--indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/ja/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/ja/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/ja/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/ja/strings.xml75
-rw-r--r--indra/newview/skins/default/xui/pt/floater_about.xml26
-rw-r--r--indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml40
-rw-r--r--indra/newview/skins/default/xui/pt/menu_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/pt/menu_media_ctrl.xml1
-rw-r--r--indra/newview/skins/default/xui/pt/menu_mode_change.xml5
-rw-r--r--indra/newview/skins/default/xui/pt/menu_viewer.xml2
-rw-r--r--indra/newview/skins/default/xui/pt/notifications.xml81
-rw-r--r--indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/pt/panel_preferences_setup.xml21
-rw-r--r--indra/newview/skins/default/xui/pt/panel_status_bar.xml10
-rw-r--r--indra/newview/skins/default/xui/pt/sidepanel_inventory.xml70
-rw-r--r--indra/newview/skins/default/xui/pt/strings.xml73
-rw-r--r--indra/newview/skins/default/xui/zh/floater_about_land.xml80
-rw-r--r--indra/newview/skins/default/xui/zh/floater_animation_preview.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/floater_build_options.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/floater_bumps.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_buy_currency.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_buy_land.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/floater_critical.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_day_cycle_options.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_display_name.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/floater_image_preview.xml14
-rw-r--r--indra/newview/skins/default/xui/zh/floater_incoming_call.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/floater_inspect.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_outgoing_call.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/floater_preview_animation.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/floater_preview_sound.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_tools.xml52
-rw-r--r--indra/newview/skins/default/xui/zh/floater_url_entry.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/floater_voice_controls.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/menu_inventory.xml28
-rw-r--r--indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/menu_viewer.xml103
-rw-r--r--indra/newview/skins/default/xui/zh/mime_types.xml8
-rw-r--r--indra/newview/skins/default/xui/zh/mime_types_linux.xml8
-rw-r--r--indra/newview/skins/default/xui/zh/mime_types_mac.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/notifications.xml196
-rw-r--r--indra/newview/skins/default/xui/zh/panel_bottomtray.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_alpha.xml10
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_eyes.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_gloves.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_hair.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_jacket.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_pants.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_profile.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_shirt.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_shoes.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_skin.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_skirt.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_socks.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_underpants.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_group_general.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_group_land_money.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/panel_main_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_media_settings_general.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/panel_my_profile.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_notes.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_people.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_place_profile.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/panel_preferences_move.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml14
-rw-r--r--indra/newview/skins/default/xui/zh/panel_profile_view.xml8
-rw-r--r--indra/newview/skins/default/xui/zh/panel_region_general.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_region_terrain.xml14
-rw-r--r--indra/newview/skins/default/xui/zh/panel_script_ed.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/panel_side_tray.xml2
-rw-r--r--indra/newview/skins/default/xui/zh/role_actions.xml4
-rw-r--r--indra/newview/skins/default/xui/zh/sidepanel_inventory.xml6
-rw-r--r--indra/newview/skins/default/xui/zh/sidepanel_task_info.xml16
-rw-r--r--indra/newview/skins/default/xui/zh/strings.xml140
-rw-r--r--indra/newview/skins/minimal/xui/de/notifications.xml2
-rw-r--r--indra/newview/skins/minimal/xui/de/panel_status_bar.xml17
-rw-r--r--indra/newview/skins/minimal/xui/es/panel_status_bar.xml17
-rw-r--r--indra/newview/skins/minimal/xui/fr/panel_status_bar.xml17
-rw-r--r--indra/newview/skins/minimal/xui/it/notifications.xml2
-rw-r--r--indra/newview/skins/minimal/xui/it/panel_status_bar.xml17
-rw-r--r--indra/newview/skins/minimal/xui/ja/panel_status_bar.xml17
-rw-r--r--indra/newview/skins/minimal/xui/pt/notifications.xml2
-rw-r--r--indra/newview/skins/minimal/xui/pt/panel_status_bar.xml17
-rw-r--r--indra/newview/tests/gpus_results.txt845
-rw-r--r--indra/newview/tests/gpus_seen.txt829
-rwxr-xr-xscripts/gpu_table_tester140
223 files changed, 6070 insertions, 3046 deletions
diff --git a/.hgtags b/.hgtags
index d9c1bbbb81..ce40e797f8 100644
--- a/.hgtags
+++ b/.hgtags
@@ -195,3 +195,6 @@ b95ddac176ac944efdc85cbee94ac2e1eab44c79 3.0.3-start
0496d2f74043cf4e6058e76ac3db03d44cff42ce DRTVWR-84_3.0.3-release
0496d2f74043cf4e6058e76ac3db03d44cff42ce 3.0.3-release
92a3aa04775438226399b19deee12ac3b5a62838 3.0.5-start
+c7282e59f374ee904bd793c3c444455e3399b0c5 3.1.0-start
+2657fa785bbfac115852c41bd0adaff74c2ad5da DRTVWR-93_3.1.0-beta1
+2657fa785bbfac115852c41bd0adaff74c2ad5da 3.1.0-beta1
diff --git a/BuildParams b/BuildParams
index b62d7b7af1..caf3cc932a 100644
--- a/BuildParams
+++ b/BuildParams
@@ -43,11 +43,13 @@ snowstorm_viewer-development.login_channel = "Second Life Development"
snowstorm_viewer-development.build_viewer_update_version_manager = false
snowstorm_viewer-development.email = viewer-development-builds@lists.secondlife.com
snowstorm_viewer-development.build_enforce_coding_policy = true
+snowstorm_viewer-development.codeticket_add_context = true
Snowstorm_viewer-project-review.build_debug_release_separately = true
Snowstorm_viewer-project-review.codeticket_add_context = true
Snowstorm_viewer-project-review.viewer_channel = "Project Viewer - Snowstorm Team"
Snowstorm_viewer-project-review.login_channel = "Project Viewer - Snowstorm Team"
+Snowstorm_viewer-project-review.codeticket_add_context = true
# ========================================
# Viewer Beta
diff --git a/autobuild.xml b/autobuild.xml
index 347ef419ed..9a68a70470 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -1206,9 +1206,9 @@
<key>archive</key>
<map>
<key>hash</key>
- <string>9cd66e879908f047d9af665b92946ecc</string>
+ <string>1b92a69f5eba7cd8b017180659076db5</string>
<key>url</key>
- <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llqtwebkit/rev/239803/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20110830.tar.bz2</string>
+ <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/roxie_3p-llqtwebkit/rev/242182/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20111003.tar.bz2</string>
</map>
<key>name</key>
<string>darwin</string>
@@ -1230,9 +1230,9 @@
<key>archive</key>
<map>
<key>hash</key>
- <string>ab9393795515cbbe9526bde33b41bf2a</string>
+ <string>1e7f24b69b0fc751c7e86efe7c621882</string>
<key>url</key>
- <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llqtwebkit/rev/239670/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20110829.tar.bz2</string>
+ <string>http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/roxie_3p-llqtwebkit/rev/242182/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20111003.tar.bz2</string>
</map>
<key>name</key>
<string>windows</string>
diff --git a/doc/contributions.txt b/doc/contributions.txt
index bcdc5a63d2..693d4c37b8 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -66,6 +66,7 @@ Alejandro Rosenthal
VWR-1184
Aleric Inglewood
SNOW-84
+ OPEN-38
SNOW-240
SNOW-477
SNOW-522
@@ -622,6 +623,7 @@ Latif Khalifa
VWR-5370
leliel Mirihi
STORM-1100
+ STORM-1602
len Starship
Lisa Lowe
CT-218
@@ -1032,6 +1034,9 @@ Synystyr Texan
Takeda Terrawyng
TankMaster Finesmith
STORM-1100
+ STORM-1602
+ STORM-1258
+ VWR-26622
Talamasca
Tali Rosca
Tayra Dagostino
diff --git a/indra/cmake/FindGLH.cmake b/indra/cmake/FindGLH.cmake
new file mode 100644
index 0000000000..3d16adaf03
--- /dev/null
+++ b/indra/cmake/FindGLH.cmake
@@ -0,0 +1,30 @@
+# -*- cmake -*-
+
+# - Find GLH
+# Find the Graphic Library Helper includes.
+# This module defines
+# GLH_INCLUDE_DIR, where to find glh/glh_linear.h.
+# GLH_FOUND, If false, do not try to use GLH.
+
+find_path(GLH_INCLUDE_DIR glh/glh_linear.h
+ NO_SYSTEM_ENVIRONMENT_PATH
+ )
+
+if (GLH_INCLUDE_DIR)
+ set(GLH_FOUND "YES")
+else (GLH_INCLUDE_DIR)
+ set(GLH_FOUND "NO")
+endif (GLH_INCLUDE_DIR)
+
+if (GLH_FOUND)
+ if (NOT GLH_FIND_QUIETLY)
+ message(STATUS "Found GLH: ${GLH_INCLUDE_DIR}")
+ set(GLH_FIND_QUIETLY TRUE) # Only alert us the first time
+ endif (NOT GLH_FIND_QUIETLY)
+else (GLH_FOUND)
+ if (GLH_FIND_REQUIRED)
+ message(FATAL_ERROR "Could not find GLH")
+ endif (GLH_FIND_REQUIRED)
+endif (GLH_FOUND)
+
+mark_as_advanced(GLH_INCLUDE_DIR)
diff --git a/indra/cmake/GLH.cmake b/indra/cmake/GLH.cmake
new file mode 100644
index 0000000000..911dbe4017
--- /dev/null
+++ b/indra/cmake/GLH.cmake
@@ -0,0 +1,11 @@
+# -*- cmake -*-
+include(Prebuilt)
+
+set(GLH_FIND_REQUIRED TRUE)
+set(GLH_FIND_QUIETLY TRUE)
+
+if (STANDALONE)
+ include(FindGLH)
+else (STANDALONE)
+ use_prebuilt_binary(glh_linear)
+endif (STANDALONE)
diff --git a/indra/cmake/LLRender.cmake b/indra/cmake/LLRender.cmake
index c47e8878e9..8427928151 100644
--- a/indra/cmake/LLRender.cmake
+++ b/indra/cmake/LLRender.cmake
@@ -1,9 +1,11 @@
# -*- cmake -*-
include(FreeType)
+include(GLH)
set(LLRENDER_INCLUDE_DIRS
${LIBS_OPEN_DIR}/llrender
+ ${GLH_INCLUDE_DIR}
)
if (SERVER AND LINUX)
diff --git a/indra/cmake/LLSharedLibs.cmake b/indra/cmake/LLSharedLibs.cmake
index e29076c738..14dd67f32f 100644
--- a/indra/cmake/LLSharedLibs.cmake
+++ b/indra/cmake/LLSharedLibs.cmake
@@ -38,18 +38,17 @@ endmacro(ll_deploy_sharedlibs_command)
# ll_stage_sharedlib
# Performs config and adds a copy command for a sharedlib target.
macro(ll_stage_sharedlib DSO_TARGET)
- if(SHARED_LIB_STAGING_DIR)
- # target gets written to the DLL staging directory.
- # Also this directory is shared with RunBuildTest.cmake, y'know, for the tests.
- set_target_properties(${DSO_TARGET} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${SHARED_LIB_STAGING_DIR})
- if(NOT WINDOWS)
- get_target_property(DSO_PATH ${DSO_TARGET} LOCATION)
- get_filename_component(DSO_FILE ${DSO_PATH} NAME)
- if(DARWIN)
- set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}/Resources)
- else(DARWIN)
- set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR})
- endif(DARWIN)
+ # target gets written to the DLL staging directory.
+ # Also this directory is shared with RunBuildTest.cmake, y'know, for the tests.
+ set_target_properties(${DSO_TARGET} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${SHARED_LIB_STAGING_DIR})
+ if(NOT WINDOWS)
+ get_target_property(DSO_PATH ${DSO_TARGET} LOCATION)
+ get_filename_component(DSO_FILE ${DSO_PATH} NAME)
+ if(DARWIN)
+ set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR}/Resources)
+ else(DARWIN)
+ set(SHARED_LIB_STAGING_DIR_CONFIG ${SHARED_LIB_STAGING_DIR}/${CMAKE_CFG_INTDIR})
+ endif(DARWIN)
# *TODO - maybe make this a symbolic link? -brad
add_custom_command(
@@ -63,7 +62,6 @@ macro(ll_stage_sharedlib DSO_TARGET)
COMMENT "Copying llcommon to the staging folder."
)
endif(NOT WINDOWS)
- endif(SHARED_LIB_STAGING_DIR)
if (DARWIN)
set_target_properties(${DSO_TARGET} PROPERTIES
diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake
index 07db6ab257..c5f9e2c579 100644
--- a/indra/cmake/Linking.cmake
+++ b/indra/cmake/Linking.cmake
@@ -2,22 +2,19 @@
include(Variables)
-
-if (NOT STANDALONE)
- set(ARCH_PREBUILT_DIRS ${AUTOBUILD_INSTALL_DIR}/lib)
- set(ARCH_PREBUILT_DIRS_RELEASE ${AUTOBUILD_INSTALL_DIR}/lib/release)
- set(ARCH_PREBUILT_DIRS_DEBUG ${AUTOBUILD_INSTALL_DIR}/lib/debug)
- if (WINDOWS)
- set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
- set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
- elseif (LINUX)
- set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/lib)
- set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/bin)
- elseif (DARWIN)
- set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
- set(EXE_STAGING_DIR "${CMAKE_BINARY_DIR}/sharedlibs/\$(CONFIGURATION)")
- endif (WINDOWS)
-endif (NOT STANDALONE)
+set(ARCH_PREBUILT_DIRS ${AUTOBUILD_INSTALL_DIR}/lib)
+set(ARCH_PREBUILT_DIRS_RELEASE ${AUTOBUILD_INSTALL_DIR}/lib/release)
+set(ARCH_PREBUILT_DIRS_DEBUG ${AUTOBUILD_INSTALL_DIR}/lib/debug)
+if (WINDOWS)
+ set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
+ set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
+elseif (LINUX)
+ set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/lib)
+ set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/bin)
+elseif (DARWIN)
+ set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
+ set(EXE_STAGING_DIR "${CMAKE_BINARY_DIR}/sharedlibs/\$(CONFIGURATION)")
+endif (WINDOWS)
# Autobuild packages must provide 'release' versions of libraries, but may provide versions for
# specific build types. AUTOBUILD_LIBS_INSTALL_DIRS lists first the build type directory and then
diff --git a/indra/cmake/OpenSSL.cmake b/indra/cmake/OpenSSL.cmake
index 5982ee9a49..2704912eb5 100644
--- a/indra/cmake/OpenSSL.cmake
+++ b/indra/cmake/OpenSSL.cmake
@@ -11,7 +11,7 @@ else (STANDALONE)
if (WINDOWS)
set(OPENSSL_LIBRARIES ssleay32 libeay32)
else (WINDOWS)
- set(OPENSSL_LIBRARIES ssl)
+ set(OPENSSL_LIBRARIES ssl crypto)
endif (WINDOWS)
set(OPENSSL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include)
endif (STANDALONE)
diff --git a/indra/linux_crash_logger/CMakeLists.txt b/indra/linux_crash_logger/CMakeLists.txt
index ab62a0d0af..98ebdc7487 100644
--- a/indra/linux_crash_logger/CMakeLists.txt
+++ b/indra/linux_crash_logger/CMakeLists.txt
@@ -3,6 +3,7 @@
project(linux_crash_logger)
include(00-Common)
+include(GLH)
include(LLCommon)
include(LLCrashLogger)
include(LLMath)
diff --git a/indra/llcommon/lleventapi.cpp b/indra/llcommon/lleventapi.cpp
index 4270c8b511..ff5459c1eb 100644
--- a/indra/llcommon/lleventapi.cpp
+++ b/indra/llcommon/lleventapi.cpp
@@ -34,6 +34,7 @@
// std headers
// external library headers
// other Linden headers
+#include "llerror.h"
LLEventAPI::LLEventAPI(const std::string& name, const std::string& desc, const std::string& field):
lbase(name, field),
@@ -45,3 +46,32 @@ LLEventAPI::LLEventAPI(const std::string& name, const std::string& desc, const s
LLEventAPI::~LLEventAPI()
{
}
+
+LLEventAPI::Response::Response(const LLSD& seed, const LLSD& request, const LLSD::String& replyKey):
+ mResp(seed),
+ mReq(request),
+ mKey(replyKey)
+{}
+
+LLEventAPI::Response::~Response()
+{
+ // When you instantiate a stack Response object, if the original
+ // request requested a reply, send it when we leave this block, no
+ // matter how.
+ sendReply(mResp, mReq, mKey);
+}
+
+void LLEventAPI::Response::warn(const std::string& warning)
+{
+ LL_WARNS("LLEventAPI::Response") << warning << LL_ENDL;
+ mResp["warnings"].append(warning);
+}
+
+void LLEventAPI::Response::error(const std::string& error)
+{
+ // Use LL_WARNS rather than LL_ERROR: we don't want the viewer to shut
+ // down altogether.
+ LL_WARNS("LLEventAPI::Response") << error << LL_ENDL;
+
+ mResp["error"] = error;
+}
diff --git a/indra/llcommon/lleventapi.h b/indra/llcommon/lleventapi.h
index d75d521e8e..1a37d780b6 100644
--- a/indra/llcommon/lleventapi.h
+++ b/indra/llcommon/lleventapi.h
@@ -76,6 +76,89 @@ public:
LLEventDispatcher::add(name, desc, callable, required);
}
+ /**
+ * Instantiate a Response object in any LLEventAPI subclass method that
+ * wants to guarantee a reply (if requested) will be sent on exit from the
+ * method. The reply will be sent if request.has(@a replyKey), default
+ * "reply". If specified, the value of request[replyKey] is the name of
+ * the LLEventPump on which to send the reply. Conventionally you might
+ * code something like:
+ *
+ * @code
+ * void MyEventAPI::someMethod(const LLSD& request)
+ * {
+ * // Send a reply event as long as request.has("reply")
+ * Response response(LLSD(), request);
+ * // ...
+ * // will be sent in reply event
+ * response["somekey"] = some_data;
+ * }
+ * @endcode
+ */
+ class LL_COMMON_API Response
+ {
+ public:
+ /**
+ * Instantiating a Response object in an LLEventAPI subclass method
+ * ensures that, if desired, a reply event will be sent.
+ *
+ * @a seed is the initial reply LLSD that will be further decorated before
+ * being sent as the reply
+ *
+ * @a request is the incoming request LLSD; we particularly care about
+ * [replyKey] and ["reqid"]
+ *
+ * @a replyKey [default "reply"] is the string name of the LLEventPump
+ * on which the caller wants a reply. If <tt>(!
+ * request.has(replyKey))</tt>, no reply will be sent.
+ */
+ Response(const LLSD& seed, const LLSD& request, const LLSD::String& replyKey="reply");
+ ~Response();
+
+ /**
+ * @code
+ * if (some condition)
+ * {
+ * response.warn("warnings are logged and collected in [\"warnings\"]");
+ * }
+ * @endcode
+ */
+ void warn(const std::string& warning);
+ /**
+ * @code
+ * if (some condition isn't met)
+ * {
+ * // In a function returning void, you can validly 'return
+ * // expression' if the expression is itself of type void. But
+ * // returning is up to you; response.error() has no effect on
+ * // flow of control.
+ * return response.error("error message, logged and also sent as [\"error\"]");
+ * }
+ * @endcode
+ */
+ void error(const std::string& error);
+
+ /**
+ * set other keys...
+ *
+ * @code
+ * // set any attributes you want to be sent in the reply
+ * response["info"] = some_value;
+ * // ...
+ * response["ok"] = went_well;
+ * @endcode
+ */
+ LLSD& operator[](const LLSD::String& key) { return mResp[key]; }
+
+ /**
+ * set the response to the given data
+ */
+ void setResponse(LLSD const & response){ mResp = response; }
+
+ LLSD mResp, mReq;
+ LLSD::String mKey;
+ };
+
private:
std::string mDesc;
};
diff --git a/indra/llcommon/llevents.cpp b/indra/llcommon/llevents.cpp
index ff03506e84..db1ea4792b 100644
--- a/indra/llcommon/llevents.cpp
+++ b/indra/llcommon/llevents.cpp
@@ -591,6 +591,17 @@ void LLReqID::stamp(LLSD& response) const
bool sendReply(const LLSD& reply, const LLSD& request, const std::string& replyKey)
{
+ // If the original request has no value for replyKey, it's pointless to
+ // construct or send a reply event: on which LLEventPump should we send
+ // it? Allow that to be optional: if the caller wants to require replyKey,
+ // it can so specify when registering the operation method.
+ if (! request.has(replyKey))
+ {
+ return false;
+ }
+
+ // Here the request definitely contains replyKey; reasonable to proceed.
+
// Copy 'reply' to modify it.
LLSD newreply(reply);
// Get the ["reqid"] element from request
diff --git a/indra/llcommon/llmemory.cpp b/indra/llcommon/llmemory.cpp
index 8c02ad8290..3b27a1639a 100644
--- a/indra/llcommon/llmemory.cpp
+++ b/indra/llcommon/llmemory.cpp
@@ -165,33 +165,60 @@ void LLMemory::logMemoryInfo(BOOL update)
llinfos << "Current allocated page size (KB): " << sAllocatedPageSizeInKB << llendl ;
llinfos << "Current availabe physical memory(KB): " << sAvailPhysicalMemInKB << llendl ;
llinfos << "Current max usable memory(KB): " << sMaxPhysicalMemInKB << llendl ;
+
+ llinfos << "--- private pool information -- " << llendl ;
+ llinfos << "Total reserved (KB): " << LLPrivateMemoryPoolManager::getInstance()->mTotalReservedSize / 1024 << llendl ;
+ llinfos << "Total allocated (KB): " << LLPrivateMemoryPoolManager::getInstance()->mTotalAllocatedSize / 1024 << llendl ;
}
//return 0: everything is normal;
//return 1: the memory pool is low, but not in danger;
//return -1: the memory pool is in danger, is about to crash.
//static
-S32 LLMemory::isMemoryPoolLow()
+bool LLMemory::isMemoryPoolLow()
{
static const U32 LOW_MEMEOY_POOL_THRESHOLD_KB = 64 * 1024 ; //64 MB for emergency use
+ const static U32 MAX_SIZE_CHECKED_MEMORY_BLOCK = 64 * 1024 * 1024 ; //64 MB
+ static void* last_reserved_address = NULL ;
if(!sEnableMemoryFailurePrevention)
{
- return 0 ; //no memory failure prevention.
+ return false ; //no memory failure prevention.
}
if(sAvailPhysicalMemInKB < (LOW_MEMEOY_POOL_THRESHOLD_KB >> 2)) //out of physical memory
{
- return -1 ;
+ return true ;
}
if(sAllocatedPageSizeInKB + (LOW_MEMEOY_POOL_THRESHOLD_KB >> 2) > sMaxHeapSizeInKB) //out of virtual address space.
{
- return -1 ;
+ return true ;
}
- return (S32)(sAvailPhysicalMemInKB < LOW_MEMEOY_POOL_THRESHOLD_KB ||
+ bool is_low = (S32)(sAvailPhysicalMemInKB < LOW_MEMEOY_POOL_THRESHOLD_KB ||
sAllocatedPageSizeInKB + LOW_MEMEOY_POOL_THRESHOLD_KB > sMaxHeapSizeInKB) ;
+
+ //check the virtual address space fragmentation
+ if(!is_low)
+ {
+ if(!last_reserved_address)
+ {
+ last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
+ }
+ else
+ {
+ last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
+ if(!last_reserved_address) //failed, try once more
+ {
+ last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
+ }
+ }
+
+ is_low = !last_reserved_address ; //allocation failed
+ }
+
+ return is_low ;
}
//static
@@ -1289,15 +1316,13 @@ U16 LLPrivateMemoryPool::LLMemoryChunk::getPageLevel(U32 size)
//--------------------------------------------------------------------
const U32 CHUNK_SIZE = 4 << 20 ; //4 MB
const U32 LARGE_CHUNK_SIZE = 4 * CHUNK_SIZE ; //16 MB
-LLPrivateMemoryPool::LLPrivateMemoryPool(S32 type) :
+LLPrivateMemoryPool::LLPrivateMemoryPool(S32 type, U32 max_pool_size) :
mMutexp(NULL),
mReservedPoolSize(0),
mHashFactor(1),
- mType(type)
+ mType(type),
+ mMaxPoolSize(max_pool_size)
{
- const U32 MAX_POOL_SIZE = 256 * 1024 * 1024 ; //256 MB
-
- mMaxPoolSize = MAX_POOL_SIZE ;
if(type == STATIC_THREADED || type == VOLATILE_THREADED)
{
mMutexp = new LLMutex ;
@@ -1362,16 +1387,31 @@ char* LLPrivateMemoryPool::allocate(U32 size)
chunk = chunk->mNext ;
}
}
-
- chunk = addChunk(chunk_idx) ;
- if(chunk)
+ else
{
- p = chunk->allocate(size) ;
+ chunk = addChunk(chunk_idx) ;
+ if(chunk)
+ {
+ p = chunk->allocate(size) ;
+ }
}
}
unlock() ;
+ if(!p) //to get memory from the private pool failed, try the heap directly
+ {
+ static bool to_log = true ;
+
+ if(to_log)
+ {
+ llwarns << "The memory pool overflows, now using heap directly!" << llendl ;
+ to_log = false ;
+ }
+
+ return (char*)malloc(size) ;
+ }
+
return p ;
}
@@ -1472,7 +1512,7 @@ void LLPrivateMemoryPool::destroyPool()
unlock() ;
}
-void LLPrivateMemoryPool::checkSize(U32 asked_size)
+bool LLPrivateMemoryPool::checkSize(U32 asked_size)
{
if(mReservedPoolSize + asked_size > mMaxPoolSize)
{
@@ -1480,8 +1520,12 @@ void LLPrivateMemoryPool::checkSize(U32 asked_size)
llinfos << "Total reserved size: " << mReservedPoolSize + asked_size << llendl ;
llinfos << "Total_allocated Size: " << getTotalAllocatedSize() << llendl ;
- llerrs << "The pool is overflowing..." << llendl ;
+ //llerrs << "The pool is overflowing..." << llendl ;
+
+ return false ;
}
+
+ return true ;
}
LLPrivateMemoryPool::LLMemoryChunk* LLPrivateMemoryPool::addChunk(S32 chunk_index)
@@ -1501,7 +1545,11 @@ LLPrivateMemoryPool::LLMemoryChunk* LLPrivateMemoryPool::addChunk(S32 chunk_inde
MAX_SLOT_SIZES[chunk_index], MIN_BLOCK_SIZES[chunk_index], MAX_BLOCK_SIZES[chunk_index]) ;
}
- checkSize(preferred_size + overhead) ;
+ if(!checkSize(preferred_size + overhead))
+ {
+ return NULL ;
+ }
+
mReservedPoolSize += preferred_size + overhead ;
char* buffer = (char*)malloc(preferred_size + overhead) ;
@@ -1593,7 +1641,7 @@ LLPrivateMemoryPool::LLMemoryChunk* LLPrivateMemoryPool::findChunk(const char* a
void LLPrivateMemoryPool::addToHashTable(LLMemoryChunk* chunk)
{
- static const U16 HASH_FACTORS[] = {41, 83, 193, 317, 419, 523, 0xFFFF};
+ static const U16 HASH_FACTORS[] = {41, 83, 193, 317, 419, 523, 719, 997, 1523, 0xFFFF};
U16 i ;
if(mChunkHashList.empty())
@@ -1774,7 +1822,7 @@ void LLPrivateMemoryPool::LLChunkHashElement::remove(LLPrivateMemoryPool::LLMemo
//--------------------------------------------------------------------
LLPrivateMemoryPoolManager* LLPrivateMemoryPoolManager::sInstance = NULL ;
-LLPrivateMemoryPoolManager::LLPrivateMemoryPoolManager(BOOL enabled)
+LLPrivateMemoryPoolManager::LLPrivateMemoryPoolManager(BOOL enabled, U32 max_pool_size)
{
mPoolList.resize(LLPrivateMemoryPool::MAX_TYPES) ;
@@ -1784,6 +1832,9 @@ LLPrivateMemoryPoolManager::LLPrivateMemoryPoolManager(BOOL enabled)
}
mPrivatePoolEnabled = enabled ;
+
+ const U32 MAX_POOL_SIZE = 256 * 1024 * 1024 ; //256 MB
+ mMaxPrivatePoolSize = llmax(max_pool_size, MAX_POOL_SIZE) ;
}
LLPrivateMemoryPoolManager::~LLPrivateMemoryPoolManager()
@@ -1826,11 +1877,11 @@ LLPrivateMemoryPoolManager::~LLPrivateMemoryPoolManager()
}
//static
-void LLPrivateMemoryPoolManager::initClass(BOOL enabled)
+void LLPrivateMemoryPoolManager::initClass(BOOL enabled, U32 max_pool_size)
{
llassert_always(!sInstance) ;
- sInstance = new LLPrivateMemoryPoolManager(enabled) ;
+ sInstance = new LLPrivateMemoryPoolManager(enabled, max_pool_size) ;
}
//static
@@ -1862,7 +1913,7 @@ LLPrivateMemoryPool* LLPrivateMemoryPoolManager::newPool(S32 type)
if(!mPoolList[type])
{
- mPoolList[type] = new LLPrivateMemoryPool(type) ;
+ mPoolList[type] = new LLPrivateMemoryPool(type, mMaxPrivatePoolSize) ;
}
return mPoolList[type] ;
diff --git a/indra/llcommon/llmemory.h b/indra/llcommon/llmemory.h
index db753f0d8b..6967edd7e7 100644
--- a/indra/llcommon/llmemory.h
+++ b/indra/llcommon/llmemory.h
@@ -122,7 +122,7 @@ public:
static void initMaxHeapSizeGB(F32 max_heap_size_gb, BOOL prevent_heap_failure);
static void updateMemoryInfo() ;
static void logMemoryInfo(BOOL update = FALSE);
- static S32 isMemoryPoolLow();
+ static bool isMemoryPoolLow();
static U32 getAvailableMemKB() ;
static U32 getMaxMemKB() ;
@@ -303,7 +303,7 @@ public:
} ;
private:
- LLPrivateMemoryPool(S32 type) ;
+ LLPrivateMemoryPool(S32 type, U32 max_pool_size) ;
~LLPrivateMemoryPool() ;
char *allocate(U32 size) ;
@@ -320,7 +320,7 @@ private:
void unlock() ;
S32 getChunkIndex(U32 size) ;
LLMemoryChunk* addChunk(S32 chunk_index) ;
- void checkSize(U32 asked_size) ;
+ bool checkSize(U32 asked_size) ;
void removeChunk(LLMemoryChunk* chunk) ;
U16 findHashKey(const char* addr);
void addToHashTable(LLMemoryChunk* chunk) ;
@@ -383,12 +383,12 @@ private:
class LL_COMMON_API LLPrivateMemoryPoolManager
{
private:
- LLPrivateMemoryPoolManager(BOOL enabled) ;
+ LLPrivateMemoryPoolManager(BOOL enabled, U32 max_pool_size) ;
~LLPrivateMemoryPoolManager() ;
public:
static LLPrivateMemoryPoolManager* getInstance() ;
- static void initClass(BOOL enabled) ;
+ static void initClass(BOOL enabled, U32 pool_size) ;
static void destroyClass() ;
LLPrivateMemoryPool* newPool(S32 type) ;
@@ -398,6 +398,7 @@ private:
static LLPrivateMemoryPoolManager* sInstance ;
std::vector<LLPrivateMemoryPool*> mPoolList ;
BOOL mPrivatePoolEnabled;
+ U32 mMaxPrivatePoolSize;
public:
//debug and statistics info.
diff --git a/indra/llcommon/llqueuedthread.cpp b/indra/llcommon/llqueuedthread.cpp
index efd9c4b68f..5dee7a3541 100644
--- a/indra/llcommon/llqueuedthread.cpp
+++ b/indra/llcommon/llqueuedthread.cpp
@@ -32,7 +32,7 @@
//============================================================================
// MAIN THREAD
-LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded) :
+LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded, bool should_pause) :
LLThread(name),
mThreaded(threaded),
mIdleThread(TRUE),
@@ -41,6 +41,11 @@ LLQueuedThread::LLQueuedThread(const std::string& name, bool threaded) :
{
if (mThreaded)
{
+ if(should_pause)
+ {
+ pause() ; //call this before start the thread.
+ }
+
start();
}
}
diff --git a/indra/llcommon/llqueuedthread.h b/indra/llcommon/llqueuedthread.h
index a53b22f6fc..499d13a792 100644
--- a/indra/llcommon/llqueuedthread.h
+++ b/indra/llcommon/llqueuedthread.h
@@ -149,7 +149,7 @@ public:
static handle_t nullHandle() { return handle_t(0); }
public:
- LLQueuedThread(const std::string& name, bool threaded = true);
+ LLQueuedThread(const std::string& name, bool threaded = true, bool should_pause = false);
virtual ~LLQueuedThread();
virtual void shutdown();
diff --git a/indra/llcommon/llversionviewer.h b/indra/llcommon/llversionviewer.h
index a4b2e06908..e4ad7f4f54 100644
--- a/indra/llcommon/llversionviewer.h
+++ b/indra/llcommon/llversionviewer.h
@@ -28,8 +28,8 @@
#define LL_LLVERSIONVIEWER_H
const S32 LL_VERSION_MAJOR = 3;
-const S32 LL_VERSION_MINOR = 0;
-const S32 LL_VERSION_PATCH = 6;
+const S32 LL_VERSION_MINOR = 1;
+const S32 LL_VERSION_PATCH = 1;
const S32 LL_VERSION_BUILD = 0;
const char * const LL_CHANNEL = "Second Life Developer";
diff --git a/indra/llcommon/llworkerthread.cpp b/indra/llcommon/llworkerthread.cpp
index 6b308bb917..e186621503 100644
--- a/indra/llcommon/llworkerthread.cpp
+++ b/indra/llcommon/llworkerthread.cpp
@@ -34,8 +34,8 @@
//============================================================================
// Run on MAIN thread
-LLWorkerThread::LLWorkerThread(const std::string& name, bool threaded) :
- LLQueuedThread(name, threaded)
+LLWorkerThread::LLWorkerThread(const std::string& name, bool threaded, bool should_pause) :
+ LLQueuedThread(name, threaded, should_pause)
{
mDeleteMutex = new LLMutex;
}
diff --git a/indra/llcommon/llworkerthread.h b/indra/llcommon/llworkerthread.h
index bef5ef53fe..973b78ca01 100644
--- a/indra/llcommon/llworkerthread.h
+++ b/indra/llcommon/llworkerthread.h
@@ -83,7 +83,7 @@ private:
LLMutex* mDeleteMutex;
public:
- LLWorkerThread(const std::string& name, bool threaded = true);
+ LLWorkerThread(const std::string& name, bool threaded = true, bool should_pause = false);
~LLWorkerThread();
/*virtual*/ S32 update(U32 max_time_ms);
diff --git a/indra/llprimitive/llmaterialtable.cpp b/indra/llprimitive/llmaterialtable.cpp
index 99f32e4109..b4539ebee9 100644
--- a/indra/llprimitive/llmaterialtable.cpp
+++ b/indra/llprimitive/llmaterialtable.cpp
@@ -538,7 +538,7 @@ std::string LLMaterialTable::getName(U8 mcode)
}
}
- return NULL;
+ return std::string();
}
diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt
index b3b2f4ae56..0ab883cb70 100644
--- a/indra/llui/CMakeLists.txt
+++ b/indra/llui/CMakeLists.txt
@@ -112,6 +112,7 @@ set(llui_SOURCE_FILES
llurlmatch.cpp
llurlregistry.cpp
llviewborder.cpp
+ llviewinject.cpp
llviewmodel.cpp
llview.cpp
llviewquery.cpp
@@ -216,6 +217,7 @@ set(llui_HEADER_FILES
llurlmatch.h
llurlregistry.h
llviewborder.h
+ llviewinject.h
llviewmodel.h
llview.h
llviewquery.h
diff --git a/indra/llui/lllineeditor.cpp b/indra/llui/lllineeditor.cpp
index ebdd47ae80..06dfc90d83 100644
--- a/indra/llui/lllineeditor.cpp
+++ b/indra/llui/lllineeditor.cpp
@@ -198,6 +198,7 @@ LLLineEditor::~LLLineEditor()
void LLLineEditor::onFocusReceived()
{
+ gEditMenuHandler = this;
LLUICtrl::onFocusReceived();
updateAllowingLanguageInput();
}
diff --git a/indra/llui/llnotificationtemplate.h b/indra/llui/llnotificationtemplate.h
index eff572b553..ab777d37a5 100644
--- a/indra/llui/llnotificationtemplate.h
+++ b/indra/llui/llnotificationtemplate.h
@@ -88,10 +88,10 @@ struct LLNotificationTemplate
{
private:
// this idiom allows
- // <notification unique="true">
+ // <notification> <unique/> </notification>
// as well as
// <notification> <unique> <context></context> </unique>...
- Optional<bool> dummy_val;
+ Flag dummy_val;
public:
Multiple<UniquenessContext> contexts;
diff --git a/indra/llui/llscrollcontainer.cpp b/indra/llui/llscrollcontainer.cpp
index b44b4c36b6..fe3f688fc5 100644
--- a/indra/llui/llscrollcontainer.cpp
+++ b/indra/llui/llscrollcontainer.cpp
@@ -223,6 +223,15 @@ BOOL LLScrollContainer::handleKeyHere(KEY key, MASK mask)
return FALSE;
}
+BOOL LLScrollContainer::handleUnicodeCharHere(llwchar uni_char)
+{
+ if (mScrolledView && mScrolledView->handleUnicodeCharHere(uni_char))
+ {
+ return TRUE;
+ }
+ return FALSE;
+}
+
BOOL LLScrollContainer::handleScrollWheel( S32 x, S32 y, S32 clicks )
{
// Give event to my child views - they may have scroll bars
diff --git a/indra/llui/llscrollcontainer.h b/indra/llui/llscrollcontainer.h
index 46a71a7e30..3aa79cc255 100644
--- a/indra/llui/llscrollcontainer.h
+++ b/indra/llui/llscrollcontainer.h
@@ -103,6 +103,7 @@ public:
// LLView functionality
virtual void reshape(S32 width, S32 height, BOOL called_from_parent = TRUE);
virtual BOOL handleKeyHere(KEY key, MASK mask);
+ virtual BOOL handleUnicodeCharHere(llwchar uni_char);
virtual BOOL handleScrollWheel( S32 x, S32 y, S32 clicks );
virtual BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
EDragAndDropType cargo_type,
diff --git a/indra/llui/lluictrl.cpp b/indra/llui/lluictrl.cpp
index d58df5801b..9b9e2ddb55 100644
--- a/indra/llui/lluictrl.cpp
+++ b/indra/llui/lluictrl.cpp
@@ -1045,3 +1045,9 @@ boost::signals2::connection LLUICtrl::setDoubleClickCallback( const mouse_signal
if (!mDoubleClickSignal) mDoubleClickSignal = new mouse_signal_t();
return mDoubleClickSignal->connect(cb);
}
+
+void LLUICtrl::addInfo(LLSD & info)
+{
+ LLView::addInfo(info);
+ info["value"] = getValue();
+}
diff --git a/indra/llui/lluictrl.h b/indra/llui/lluictrl.h
index 09bed9b958..8a8b589e9c 100644
--- a/indra/llui/lluictrl.h
+++ b/indra/llui/lluictrl.h
@@ -301,7 +301,9 @@ protected:
static F32 sActiveControlTransparency;
static F32 sInactiveControlTransparency;
-
+
+ virtual void addInfo(LLSD & info);
+
private:
BOOL mIsChrome;
diff --git a/indra/llui/lluictrlfactory.h b/indra/llui/lluictrlfactory.h
index f0ba7fc7d7..d345ad4cd0 100644
--- a/indra/llui/lluictrlfactory.h
+++ b/indra/llui/lluictrlfactory.h
@@ -125,12 +125,12 @@ private:
// base case for recursion, there are NO base classes of LLInitParam::BaseBlock
template<int DUMMY>
- class ParamDefaults<LLInitParam::BaseBlock, DUMMY> : public LLSingleton<ParamDefaults<LLInitParam::BaseBlock, DUMMY> >
+ class ParamDefaults<LLInitParam::BaseBlockWithFlags, DUMMY> : public LLSingleton<ParamDefaults<LLInitParam::BaseBlockWithFlags, DUMMY> >
{
public:
- const LLInitParam::BaseBlock& get() { return mBaseBlock; }
+ const LLInitParam::BaseBlockWithFlags& get() { return mBaseBlock; }
private:
- LLInitParam::BaseBlock mBaseBlock;
+ LLInitParam::BaseBlockWithFlags mBaseBlock;
};
public:
diff --git a/indra/llui/llview.cpp b/indra/llui/llview.cpp
index 60452b9ae4..3ddfb090c8 100644
--- a/indra/llui/llview.cpp
+++ b/indra/llui/llview.cpp
@@ -31,7 +31,10 @@
#include "llview.h"
#include <cassert>
+#include <sstream>
#include <boost/tokenizer.hpp>
+#include <boost/foreach.hpp>
+#include <boost/bind.hpp>
#include "llrender.h"
#include "llevent.h"
@@ -44,6 +47,7 @@
#include "v3color.h"
#include "lluictrlfactory.h"
#include "lltooltip.h"
+#include "llsdutil.h"
// for ui edit hack
#include "llbutton.h"
@@ -66,6 +70,8 @@ S32 LLView::sLastLeftXML = S32_MIN;
S32 LLView::sLastBottomXML = S32_MIN;
std::vector<LLViewDrawContext*> LLViewDrawContext::sDrawContextStack;
+LLView::DrilldownFunc LLView::sDrilldown =
+ boost::bind(&LLView::pointInView, _1, _2, _3, HIT_TEST_USE_BOUNDING_RECT);
//#if LL_DEBUG
BOOL LLView::sIsDrawing = FALSE;
@@ -346,13 +352,11 @@ void LLView::removeChild(LLView* child)
LLView::ctrl_list_t LLView::getCtrlList() const
{
ctrl_list_t controls;
- for(child_list_const_iter_t iter = mChildList.begin();
- iter != mChildList.end();
- iter++)
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- if((*iter)->isCtrl())
+ if(viewp->isCtrl())
{
- controls.push_back(static_cast<LLUICtrl*>(*iter));
+ controls.push_back(static_cast<LLUICtrl*>(viewp));
}
}
return controls;
@@ -428,6 +432,36 @@ BOOL LLView::isInEnabledChain() const
return enabled;
}
+static void buildPathname(std::ostream& out, const LLView* view)
+{
+ if (! (view && view->getParent()))
+ {
+ return; // Don't include root in the path.
+ }
+
+ buildPathname(out, view->getParent());
+
+ // Build pathname into ostream on the way back from recursion.
+ out << '/' << view->getName();
+}
+
+std::string LLView::getPathname() const
+{
+ std::ostringstream out;
+ buildPathname(out, this);
+ return out.str();
+}
+
+//static
+std::string LLView::getPathname(const LLView* view)
+{
+ if (! view)
+ {
+ return "NULL";
+ }
+ return view->getPathname();
+}
+
// virtual
BOOL LLView::canFocusChildren() const
{
@@ -574,9 +608,8 @@ void LLView::deleteAllChildren()
void LLView::setAllChildrenEnabled(BOOL b)
{
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- LLView* viewp = *child_it;
viewp->setEnabled(b);
}
}
@@ -602,9 +635,8 @@ void LLView::setVisible(BOOL visible)
// virtual
void LLView::handleVisibilityChange ( BOOL new_visibility )
{
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- LLView* viewp = *child_it;
// only views that are themselves visible will have their overall visibility affected by their ancestors
if (viewp->getVisible())
{
@@ -646,56 +678,178 @@ void LLView::onMouseLeave(S32 x, S32 y, MASK mask)
//llinfos << "Mouse left " << getName() << llendl;
}
+bool LLView::visibleAndContains(S32 local_x, S32 local_y)
+{
+ return sDrilldown(this, local_x, local_y)
+ && getVisible();
+}
+
+bool LLView::visibleEnabledAndContains(S32 local_x, S32 local_y)
+{
+ return visibleAndContains(local_x, local_y)
+ && getEnabled();
+}
+
+void LLView::logMouseEvent()
+{
+ if (sDebugMouseHandling)
+ {
+ sMouseHandlerMessage = std::string("/") + mName + sMouseHandlerMessage;
+ }
+}
+
+template <typename METHOD, typename CHARTYPE>
+LLView* LLView::childrenHandleCharEvent(const std::string& desc, const METHOD& method,
+ CHARTYPE c, MASK mask)
+{
+ if ( getVisible() && getEnabled() )
+ {
+ BOOST_FOREACH(LLView* viewp, mChildList)
+ {
+ if ((viewp->*method)(c, mask, TRUE))
+ {
+ if (LLView::sDebugKeys)
+ {
+ llinfos << desc << " handled by " << viewp->getName() << llendl;
+ }
+ return viewp;
+ }
+ }
+ }
+ return NULL;
+}
+
+// XDATA might be MASK, or S32 clicks
+template <typename METHOD, typename XDATA>
+LLView* LLView::childrenHandleMouseEvent(const METHOD& method, S32 x, S32 y, XDATA extra)
+{
+ BOOST_FOREACH(LLView* viewp, mChildList)
+ {
+ S32 local_x = x - viewp->getRect().mLeft;
+ S32 local_y = y - viewp->getRect().mBottom;
+
+ if (!viewp->visibleEnabledAndContains(local_x, local_y))
+ {
+ continue;
+ }
+
+ if ((viewp->*method)( local_x, local_y, extra )
+ || viewp->blockMouseEvent( local_x, local_y ))
+ {
+ viewp->logMouseEvent();
+ return viewp;
+ }
+ }
+ return NULL;
+}
LLView* LLView::childrenHandleToolTip(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- LLView* viewp = *child_it;
S32 local_x = x - viewp->getRect().mLeft;
S32 local_y = y - viewp->getRect().mBottom;
- if(!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible())
+ // Differs from childrenHandleMouseEvent() in that we want to offer
+ // tooltips even for disabled widgets.
+ if(!viewp->visibleAndContains(local_x, local_y))
{
continue;
}
- if (viewp->handleToolTip(local_x, local_y, mask) )
+ if (viewp->handleToolTip(local_x, local_y, mask)
+ || viewp->blockMouseEvent(local_x, local_y))
{
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
+ viewp->logMouseEvent();
+ return viewp;
+ }
+ }
+ return NULL;
+}
- handled_view = viewp;
- break;
+LLView* LLView::childrenHandleDragAndDrop(S32 x, S32 y, MASK mask,
+ BOOL drop,
+ EDragAndDropType cargo_type,
+ void* cargo_data,
+ EAcceptance* accept,
+ std::string& tooltip_msg)
+{
+ // default to not accepting drag and drop, will be overridden by handler
+ *accept = ACCEPT_NO;
+
+ BOOST_FOREACH(LLView* viewp, mChildList)
+ {
+ S32 local_x = x - viewp->getRect().mLeft;
+ S32 local_y = y - viewp->getRect().mBottom;
+ if( !viewp->visibleEnabledAndContains(local_x, local_y))
+ {
+ continue;
}
- if (viewp->blockMouseEvent(local_x, local_y))
+ // Differs from childrenHandleMouseEvent() simply in that this virtual
+ // method call diverges pretty radically from the usual (x, y, int).
+ if (viewp->handleDragAndDrop(local_x, local_y, mask, drop,
+ cargo_type,
+ cargo_data,
+ accept,
+ tooltip_msg)
+ || viewp->blockMouseEvent(local_x, local_y))
{
- handled_view = viewp;
- break;
+ return viewp;
}
}
- return handled_view;
+ return NULL;
}
+LLView* LLView::childrenHandleHover(S32 x, S32 y, MASK mask)
+{
+ BOOST_FOREACH(LLView* viewp, mChildList)
+ {
+ S32 local_x = x - viewp->getRect().mLeft;
+ S32 local_y = y - viewp->getRect().mBottom;
+ if(!viewp->visibleEnabledAndContains(local_x, local_y))
+ {
+ continue;
+ }
+
+ // This call differentiates this method from childrenHandleMouseEvent().
+ LLUI::sWindow->setCursor(viewp->getHoverCursor());
-LLView* LLView::childFromPoint(S32 x, S32 y)
+ if (viewp->handleHover(local_x, local_y, mask)
+ || viewp->blockMouseEvent(local_x, local_y))
+ {
+ viewp->logMouseEvent();
+ return viewp;
+ }
+ }
+ return NULL;
+}
+
+LLView* LLView::childFromPoint(S32 x, S32 y, bool recur)
{
- if (!getVisible() )
+ if (!getVisible())
return false;
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- LLView* viewp = *child_it;
S32 local_x = x - viewp->getRect().mLeft;
S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible() )
+ if (!viewp->visibleAndContains(local_x, local_y))
{
continue;
}
+ // Here we've found the first (frontmost) visible child at this level
+ // containing the specified point. Is the caller asking us to drill
+ // down and return the innermost leaf child at this point, or just the
+ // top-level child?
+ if (recur)
+ {
+ LLView* leaf(viewp->childFromPoint(local_x, local_y, recur));
+ // Maybe viewp is already a leaf LLView, or maybe it has children
+ // but this particular (x, y) point falls between them. If the
+ // recursive call returns non-NULL, great, use that; else just use
+ // viewp.
+ return leaf? leaf : viewp;
+ }
return viewp;
}
@@ -815,45 +969,6 @@ BOOL LLView::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
return childrenHandleDragAndDrop( x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg) != NULL;
}
-LLView* LLView::childrenHandleDragAndDrop(S32 x, S32 y, MASK mask,
- BOOL drop,
- EDragAndDropType cargo_type,
- void* cargo_data,
- EAcceptance* accept,
- std::string& tooltip_msg)
-{
- LLView* handled_view = NULL;
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if( !viewp->pointInView(local_x, local_y) ||
- !viewp->getVisible() ||
- !viewp->getEnabled())
- {
- continue;
- }
- if (viewp->handleDragAndDrop(local_x, local_y, mask, drop,
- cargo_type,
- cargo_data,
- accept,
- tooltip_msg))
- {
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(x, y))
- {
- *accept = ACCEPT_NO;
- handled_view = viewp;
- break;
- }
- }
- return handled_view;
-}
-
void LLView::onMouseCaptureLost()
{
}
@@ -903,391 +1018,57 @@ BOOL LLView::handleMiddleMouseUp(S32 x, S32 y, MASK mask)
return childrenHandleMiddleMouseUp( x, y, mask ) != NULL;
}
-
LLView* LLView::childrenHandleScrollWheel(S32 x, S32 y, S32 clicks)
{
- LLView* handled_view = NULL;
- if (getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if (viewp->handleScrollWheel( local_x, local_y, clicks ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
-
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
-}
-
-LLView* LLView::childrenHandleHover(S32 x, S32 y, MASK mask)
-{
- LLView* handled_view = NULL;
- if (getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if(!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if (viewp->handleHover(local_x, local_y, mask) )
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
-
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- LLUI::sWindow->setCursor(viewp->getHoverCursor());
-
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleScrollWheel, x, y, clicks);
}
// Called during downward traversal
LLView* LLView::childrenHandleKey(KEY key, MASK mask)
{
- LLView* handled_view = NULL;
-
- if ( getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- if (viewp->handleKey(key, mask, TRUE))
- {
- if (LLView::sDebugKeys)
- {
- llinfos << "Key handled by " << viewp->getName() << llendl;
- }
- handled_view = viewp;
- break;
- }
- }
- }
-
- return handled_view;
+ return childrenHandleCharEvent("Key", &LLView::handleKey, key, mask);
}
// Called during downward traversal
LLView* LLView::childrenHandleUnicodeChar(llwchar uni_char)
{
- LLView* handled_view = NULL;
-
- if ( getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- if (viewp->handleUnicodeChar(uni_char, TRUE))
- {
- if (LLView::sDebugKeys)
- {
- llinfos << "Unicode character handled by " << viewp->getName() << llendl;
- }
- handled_view = viewp;
- break;
- }
- }
- }
-
- return handled_view;
+ return childrenHandleCharEvent("Unicode character", &LLView::handleUnicodeCharWithDummyMask,
+ uni_char, MASK_NONE);
}
LLView* LLView::childrenHandleMouseDown(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
-
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
-
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if(viewp->handleMouseDown( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if(viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleMouseDown, x, y, mask);
}
LLView* LLView::childrenHandleRightMouseDown(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
-
- if (getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
-
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if (viewp->handleRightMouseDown( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
-
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleRightMouseDown, x, y, mask);
}
LLView* LLView::childrenHandleMiddleMouseDown(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
-
- if (getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if(viewp->handleMiddleMouseDown( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleMiddleMouseDown, x, y, mask);
}
LLView* LLView::childrenHandleDoubleClick(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
-
- if (getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
-
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if (viewp->handleDoubleClick( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleDoubleClick, x, y, mask);
}
LLView* LLView::childrenHandleMouseUp(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
- if( getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if (viewp->handleMouseUp( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleMouseUp, x, y, mask);
}
LLView* LLView::childrenHandleRightMouseUp(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
- if( getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled() )
- {
- continue;
- }
-
- if(viewp->handleRightMouseUp( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if(viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleRightMouseUp, x, y, mask);
}
LLView* LLView::childrenHandleMiddleMouseUp(S32 x, S32 y, MASK mask)
{
- LLView* handled_view = NULL;
- if( getVisible() && getEnabled() )
- {
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
- {
- LLView* viewp = *child_it;
- S32 local_x = x - viewp->getRect().mLeft;
- S32 local_y = y - viewp->getRect().mBottom;
- if (!viewp->pointInView(local_x, local_y)
- || !viewp->getVisible()
- || !viewp->getEnabled())
- {
- continue;
- }
-
- if(viewp->handleMiddleMouseUp( local_x, local_y, mask ))
- {
- if (sDebugMouseHandling)
- {
- sMouseHandlerMessage = std::string("/") + viewp->mName + sMouseHandlerMessage;
- }
- handled_view = viewp;
- break;
- }
-
- if (viewp->blockMouseEvent(local_x, local_y))
- {
- handled_view = viewp;
- break;
- }
- }
- }
- return handled_view;
+ return childrenHandleMouseEvent(&LLView::handleMiddleMouseUp, x, y, mask);
}
void LLView::draw()
@@ -1460,9 +1241,8 @@ void LLView::reshape(S32 width, S32 height, BOOL called_from_parent)
mRect.mTop = getRect().mBottom + height;
// move child views according to reshape flags
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* viewp, mChildList)
{
- LLView* viewp = *child_it;
LLRect child_rect( viewp->mRect );
if (viewp->followsRight() && viewp->followsLeft())
@@ -1525,10 +1305,8 @@ LLRect LLView::calcBoundingRect()
{
LLRect local_bounding_rect = LLRect::null;
- child_list_const_iter_t child_it;
- for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* childp, mChildList)
{
- LLView* childp = *child_it;
// ignore invisible and "top" children when calculating bounding rect
// such as combobox popups
if (!childp->getVisible() || childp == gFocusMgr.getTopCtrl())
@@ -1693,11 +1471,9 @@ LLView* LLView::findChildView(const std::string& name, BOOL recurse) const
//richard: should we allow empty names?
//if(name.empty())
// return NULL;
- child_list_const_iter_t child_it;
// Look for direct children *first*
- for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* childp, mChildList)
{
- LLView* childp = *child_it;
llassert(childp);
if (childp->getName() == name)
{
@@ -1707,9 +1483,8 @@ LLView* LLView::findChildView(const std::string& name, BOOL recurse) const
if (recurse)
{
// Look inside each child as well.
- for ( child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* childp, mChildList)
{
- LLView* childp = *child_it;
llassert(childp);
LLView* viewp = childp->findChildView(name, recurse);
if ( viewp )
@@ -2850,9 +2625,9 @@ S32 LLView::notifyParent(const LLSD& info)
bool LLView::notifyChildren(const LLSD& info)
{
bool ret = false;
- for ( child_list_iter_t child_it = mChildList.begin(); child_it != mChildList.end(); ++child_it)
+ BOOST_FOREACH(LLView* childp, mChildList)
{
- ret |= (*child_it)->notifyChildren(info);
+ ret = ret || childp->notifyChildren(info);
}
return ret;
}
@@ -2872,3 +2647,24 @@ const LLViewDrawContext& LLViewDrawContext::getCurrentContext()
return *sDrawContextStack.back();
}
+
+LLSD LLView::getInfo(void)
+{
+ LLSD info;
+ addInfo(info);
+ return info;
+}
+
+void LLView::addInfo(LLSD & info)
+{
+ info["path"] = getPathname();
+ info["class"] = typeid(*this).name();
+ info["visible"] = getVisible();
+ info["visible_chain"] = isInVisibleChain();
+ info["enabled"] = getEnabled();
+ info["enabled_chain"] = isInEnabledChain();
+ info["available"] = isAvailable();
+ LLRect rect(calcScreenRect());
+ info["rect"] = LLSDMap("left", rect.mLeft)("top", rect.mTop)
+ ("right", rect.mRight)("bottom", rect.mBottom);
+}
diff --git a/indra/llui/llview.h b/indra/llui/llview.h
index 594a5eec6b..fe15307a5d 100644
--- a/indra/llui/llview.h
+++ b/indra/llui/llview.h
@@ -50,6 +50,8 @@
#include "llfocusmgr.h"
#include <list>
+#include <boost/function.hpp>
+#include <boost/noncopyable.hpp>
class LLSD;
@@ -437,12 +439,15 @@ public:
/*virtual*/ void screenPointToLocal(S32 screen_x, S32 screen_y, S32* local_x, S32* local_y) const;
/*virtual*/ void localPointToScreen(S32 local_x, S32 local_y, S32* screen_x, S32* screen_y) const;
- virtual LLView* childFromPoint(S32 x, S32 y);
+ virtual LLView* childFromPoint(S32 x, S32 y, bool recur=false);
// view-specific handlers
virtual void onMouseEnter(S32 x, S32 y, MASK mask);
virtual void onMouseLeave(S32 x, S32 y, MASK mask);
+ std::string getPathname() const;
+ // static method handles NULL pointer too
+ static std::string getPathname(const LLView*);
template <class T> T* findChild(const std::string& name, BOOL recurse = TRUE) const
{
@@ -511,11 +516,17 @@ public:
virtual S32 notify(const LLSD& info) { return 0;};
static const LLViewDrawContext& getDrawContext();
+
+ // Returns useful information about this ui widget.
+ LLSD getInfo(void);
protected:
void drawDebugRect();
void drawChild(LLView* childp, S32 x_offset = 0, S32 y_offset = 0, BOOL force_draw = FALSE);
void drawChildren();
+ bool visibleAndContains(S32 local_x, S32 local_Y);
+ bool visibleEnabledAndContains(S32 local_x, S32 local_y);
+ void logMouseEvent();
LLView* childrenHandleKey(KEY key, MASK mask);
LLView* childrenHandleUnicodeChar(llwchar uni_char);
@@ -538,9 +549,24 @@ protected:
LLView* childrenHandleToolTip(S32 x, S32 y, MASK mask);
ECursorType mHoverCursor;
-
+
+ virtual void addInfo(LLSD & info);
private:
+ template <typename METHOD, typename XDATA>
+ LLView* childrenHandleMouseEvent(const METHOD& method, S32 x, S32 y, XDATA extra);
+
+ template <typename METHOD, typename CHARTYPE>
+ LLView* childrenHandleCharEvent(const std::string& desc, const METHOD& method,
+ CHARTYPE c, MASK mask);
+
+ // adapter to blur distinction between handleKey() and handleUnicodeChar()
+ // for childrenHandleCharEvent()
+ BOOL handleUnicodeCharWithDummyMask(llwchar uni_char, MASK /* dummy */, BOOL from_parent)
+ {
+ return handleUnicodeChar(uni_char, from_parent);
+ }
+
LLView* mParentView;
child_list_t mChildList;
@@ -582,7 +608,35 @@ private:
LLView& getDefaultWidgetContainer() const;
+ // This allows special mouse-event targeting logic for testing.
+ typedef boost::function<bool(const LLView*, S32 x, S32 y)> DrilldownFunc;
+ static DrilldownFunc sDrilldown;
+
public:
+ // This is the only public accessor to alter sDrilldown. This is not
+ // an accident. The intended usage pattern is like:
+ // {
+ // LLView::TemporaryDrilldownFunc scoped_func(myfunctor);
+ // // ... test with myfunctor ...
+ // } // exiting block restores original LLView::sDrilldown
+ class TemporaryDrilldownFunc: public boost::noncopyable
+ {
+ public:
+ TemporaryDrilldownFunc(const DrilldownFunc& func):
+ mOldDrilldown(sDrilldown)
+ {
+ sDrilldown = func;
+ }
+
+ ~TemporaryDrilldownFunc()
+ {
+ sDrilldown = mOldDrilldown;
+ }
+
+ private:
+ DrilldownFunc mOldDrilldown;
+ };
+
// Depth in view hierarchy during rendering
static S32 sDepth;
diff --git a/indra/llui/llviewinject.cpp b/indra/llui/llviewinject.cpp
new file mode 100644
index 0000000000..46c5839f8e
--- /dev/null
+++ b/indra/llui/llviewinject.cpp
@@ -0,0 +1,49 @@
+/**
+ * @file llviewinject.cpp
+ * @author Nat Goodspeed
+ * @date 2011-08-16
+ * @brief Implementation for llviewinject.
+ *
+ * $LicenseInfo:firstyear=2011&license=viewerlgpl$
+ * Copyright (c) 2011, Linden Research, Inc.
+ * $/LicenseInfo$
+ */
+
+// Precompiled header
+#include "linden_common.h"
+// associated header
+#include "llviewinject.h"
+// STL headers
+// std headers
+// external library headers
+// other Linden headers
+
+llview::TargetEvent::TargetEvent(LLView* view)
+{
+ // Walk up the view tree from target LLView to the root (NULL). If
+ // passed NULL, iterate 0 times.
+ for (; view; view = view->getParent())
+ {
+ // At each level, operator() is going to ask: for a particular parent
+ // LLView*, which of its children should I select? So for this view's
+ // parent, select this view.
+ mChildMap[view->getParent()] = view;
+ }
+}
+
+bool llview::TargetEvent::operator()(const LLView* view, S32 /*x*/, S32 /*y*/) const
+{
+ // We are being called to decide whether to direct an incoming mouse event
+ // to this child view. (Normal LLView processing is to check whether the
+ // incoming (x, y) is within the view.) Look up the parent to decide
+ // whether, for that parent, this is the previously-selected child.
+ ChildMap::const_iterator found(mChildMap.find(view->getParent()));
+ // If we're looking at a child whose parent isn't even in the map, never
+ // mind.
+ if (found == mChildMap.end())
+ {
+ return false;
+ }
+ // So, is this the predestined child for this parent?
+ return (view == found->second);
+}
diff --git a/indra/llui/llviewinject.h b/indra/llui/llviewinject.h
new file mode 100644
index 0000000000..0de3d155c4
--- /dev/null
+++ b/indra/llui/llviewinject.h
@@ -0,0 +1,56 @@
+/**
+ * @file llviewinject.h
+ * @author Nat Goodspeed
+ * @date 2011-08-16
+ * @brief Supplemental LLView functionality used for simulating UI events.
+ *
+ * $LicenseInfo:firstyear=2011&license=viewerlgpl$
+ * Copyright (c) 2011, Linden Research, Inc.
+ * $/LicenseInfo$
+ */
+
+#if ! defined(LL_LLVIEWINJECT_H)
+#define LL_LLVIEWINJECT_H
+
+#include "llview.h"
+#include <map>
+
+namespace llview
+{
+
+ /**
+ * TargetEvent is a callable with state, specifically intended for use as
+ * an LLView::TemporaryDrilldownFunc. Instantiate it with the desired
+ * target LLView*; pass it to a TemporaryDrilldownFunc instance;
+ * TargetEvent::operator() will then attempt to direct subsequent mouse
+ * events to the desired target LLView*. (This is an "attempt" because
+ * LLView will still balk unless the target LLView and every parent are
+ * visible and enabled.)
+ */
+ class TargetEvent
+ {
+ public:
+ /**
+ * Construct TargetEvent with the desired target LLView*. (See
+ * LLUI::resolvePath() to obtain an LLView* given a string pathname.)
+ * This sets up for operator().
+ */
+ TargetEvent(LLView* view);
+
+ /**
+ * This signature must match LLView::DrilldownFunc. When you install
+ * this TargetEvent instance using LLView::TemporaryDrilldownFunc,
+ * LLView will call this method to decide whether to propagate an
+ * incoming mouse event to the passed child LLView*.
+ */
+ bool operator()(const LLView*, S32 x, S32 y) const;
+
+ private:
+ // For a given parent LLView, identify which child to select.
+ typedef std::map<LLView*, LLView*> ChildMap;
+ ChildMap mChildMap;
+ };
+
+} // llview namespace
+
+#endif /* ! defined(LL_LLVIEWINJECT_H) */
diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt
index 3d89867bc1..341bddfffd 100644
--- a/indra/llwindow/CMakeLists.txt
+++ b/indra/llwindow/CMakeLists.txt
@@ -38,7 +38,6 @@ set(llwindow_SOURCE_FILES
llkeyboardheadless.cpp
llwindowheadless.cpp
llwindowcallbacks.cpp
- llwindowlistener.cpp
)
set(llwindow_HEADER_FILES
@@ -48,7 +47,6 @@ set(llwindow_HEADER_FILES
llkeyboardheadless.h
llwindowheadless.h
llwindowcallbacks.h
- llwindowlistener.h
)
set(viewer_SOURCE_FILES
diff --git a/indra/llwindow/llwindow.cpp b/indra/llwindow/llwindow.cpp
index 71a5df910d..dc3a1099b1 100644
--- a/indra/llwindow/llwindow.cpp
+++ b/indra/llwindow/llwindow.cpp
@@ -41,8 +41,6 @@
#include "llkeyboard.h"
#include "linked_lists.h"
#include "llwindowcallbacks.h"
-#include "llwindowlistener.h"
-#include <boost/lambda/core.hpp>
//
@@ -118,17 +116,10 @@ LLWindow::LLWindow(LLWindowCallbacks* callbacks, BOOL fullscreen, U32 flags)
mFlags(flags),
mHighSurrogate(0)
{
- // gKeyboard is still NULL, so it doesn't do LLWindowListener any good to
- // pass its value right now. Instead, pass it a nullary function that
- // will, when we later need it, return the value of gKeyboard.
- // boost::lambda::var() constructs such a functor on the fly.
- mListener = new LLWindowListener(callbacks, boost::lambda::var(gKeyboard));
}
LLWindow::~LLWindow()
{
- delete mListener;
- mListener = NULL;
}
//virtual
diff --git a/indra/llwindow/llwindow.h b/indra/llwindow/llwindow.h
index 6bdc01ae88..e8a86a1880 100644
--- a/indra/llwindow/llwindow.h
+++ b/indra/llwindow/llwindow.h
@@ -36,7 +36,6 @@
class LLSplashScreen;
class LLPreeditor;
class LLWindowCallbacks;
-class LLWindowListener;
// Refer to llwindow_test in test/common/llwindow for usage example
@@ -189,7 +188,6 @@ protected:
BOOL mHideCursorPermanent;
U32 mFlags;
U16 mHighSurrogate;
- LLWindowListener* mListener;
// Handle a UTF-16 encoding unit received from keyboard.
// Converting the series of UTF-16 encoding units to UTF-32 data,
diff --git a/indra/llwindow/llwindowlistener.cpp b/indra/llwindow/llwindowlistener.cpp
deleted file mode 100644
index 91b99d83c6..0000000000
--- a/indra/llwindow/llwindowlistener.cpp
+++ /dev/null
@@ -1,307 +0,0 @@
-/**
- * @file llwindowlistener.cpp
- * @brief EventAPI interface for injecting input into LLWindow
- *
- * $LicenseInfo:firstyear=2001&license=viewerlgpl$
- * Second Life Viewer Source Code
- * Copyright (C) 2010, Linden Research, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
- * version 2.1 of the License only.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
- * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
- * $/LicenseInfo$
- */
-
-#include "linden_common.h"
-
-#include "llwindowlistener.h"
-
-#include "llcoord.h"
-#include "llkeyboard.h"
-#include "llwindowcallbacks.h"
-#include <map>
-
-LLWindowListener::LLWindowListener(LLWindowCallbacks *window, const KeyboardGetter& kbgetter)
- : LLEventAPI("LLWindow", "Inject input events into the LLWindow instance"),
- mWindow(window),
- mKbGetter(kbgetter)
-{
- std::string keySomething =
- "Given [\"keysym\"], [\"keycode\"] or [\"char\"], inject the specified ";
- std::string keyExplain =
- "(integer keycode values, or keysym \"XXXX\" from any KEY_XXXX, in\n"
- "http://hg.secondlife.com/viewer-development/src/tip/indra/llcommon/indra_constants.h )";
- std::string mask =
- "Specify optional [\"mask\"] as an array containing any of \"CONTROL\", \"ALT\",\n"
- "\"SHIFT\" or \"MAC_CONTROL\"; the corresponding modifier bits will be combined\n"
- "to form the mask used with the event.";
-
- std::string mouseSomething =
- "Given [\"button\"], [\"x\"] and [\"y\"], inject the given mouse ";
- std::string mouseExplain =
- "(button values \"LEFT\", \"MIDDLE\", \"RIGHT\")";
-
- add("keyDown",
- keySomething + "keypress event.\n" + keyExplain + '\n' + mask,
- &LLWindowListener::keyDown);
- add("keyUp",
- keySomething + "key release event.\n" + keyExplain + '\n' + mask,
- &LLWindowListener::keyUp);
- add("mouseDown",
- mouseSomething + "click event.\n" + mouseExplain + '\n' + mask,
- &LLWindowListener::mouseDown);
- add("mouseUp",
- mouseSomething + "release event.\n" + mouseExplain + '\n' + mask,
- &LLWindowListener::mouseUp);
- add("mouseMove",
- std::string("Given [\"x\"] and [\"y\"], inject the given mouse movement event.\n") +
- mask,
- &LLWindowListener::mouseMove);
- add("mouseScroll",
- "Given an integer number of [\"clicks\"], inject the given mouse scroll event.\n"
- "(positive clicks moves downward through typical content)",
- &LLWindowListener::mouseScroll);
-}
-
-template <typename MAPPED>
-class StringLookup
-{
-private:
- std::string mDesc;
- typedef std::map<std::string, MAPPED> Map;
- Map mMap;
-
-public:
- StringLookup(const std::string& desc): mDesc(desc) {}
-
- MAPPED lookup(const typename Map::key_type& key) const
- {
- typename Map::const_iterator found = mMap.find(key);
- if (found == mMap.end())
- {
- LL_WARNS("LLWindowListener") << "Unknown " << mDesc << " '" << key << "'" << LL_ENDL;
- return MAPPED();
- }
- return found->second;
- }
-
-protected:
- void add(const typename Map::key_type& key, const typename Map::mapped_type& value)
- {
- mMap.insert(typename Map::value_type(key, value));
- }
-};
-
-// for WhichKeysym. KeyProxy is like the typedef KEY, except that KeyProxy()
-// (default-constructed) is guaranteed to have the value KEY_NONE.
-class KeyProxy
-{
-public:
- KeyProxy(KEY k): mKey(k) {}
- KeyProxy(): mKey(KEY_NONE) {}
- operator KEY() const { return mKey; }
-
-private:
- KEY mKey;
-};
-
-struct WhichKeysym: public StringLookup<KeyProxy>
-{
- WhichKeysym(): StringLookup<KeyProxy>("keysym")
- {
- add("RETURN", KEY_RETURN);
- add("LEFT", KEY_LEFT);
- add("RIGHT", KEY_RIGHT);
- add("UP", KEY_UP);
- add("DOWN", KEY_DOWN);
- add("ESCAPE", KEY_ESCAPE);
- add("BACKSPACE", KEY_BACKSPACE);
- add("DELETE", KEY_DELETE);
- add("SHIFT", KEY_SHIFT);
- add("CONTROL", KEY_CONTROL);
- add("ALT", KEY_ALT);
- add("HOME", KEY_HOME);
- add("END", KEY_END);
- add("PAGE_UP", KEY_PAGE_UP);
- add("PAGE_DOWN", KEY_PAGE_DOWN);
- add("HYPHEN", KEY_HYPHEN);
- add("EQUALS", KEY_EQUALS);
- add("INSERT", KEY_INSERT);
- add("CAPSLOCK", KEY_CAPSLOCK);
- add("TAB", KEY_TAB);
- add("ADD", KEY_ADD);
- add("SUBTRACT", KEY_SUBTRACT);
- add("MULTIPLY", KEY_MULTIPLY);
- add("DIVIDE", KEY_DIVIDE);
- add("F1", KEY_F1);
- add("F2", KEY_F2);
- add("F3", KEY_F3);
- add("F4", KEY_F4);
- add("F5", KEY_F5);
- add("F6", KEY_F6);
- add("F7", KEY_F7);
- add("F8", KEY_F8);
- add("F9", KEY_F9);
- add("F10", KEY_F10);
- add("F11", KEY_F11);
- add("F12", KEY_F12);
-
- add("PAD_UP", KEY_PAD_UP);
- add("PAD_DOWN", KEY_PAD_DOWN);
- add("PAD_LEFT", KEY_PAD_LEFT);
- add("PAD_RIGHT", KEY_PAD_RIGHT);
- add("PAD_HOME", KEY_PAD_HOME);
- add("PAD_END", KEY_PAD_END);
- add("PAD_PGUP", KEY_PAD_PGUP);
- add("PAD_PGDN", KEY_PAD_PGDN);
- add("PAD_CENTER", KEY_PAD_CENTER); // the 5 in the middle
- add("PAD_INS", KEY_PAD_INS);
- add("PAD_DEL", KEY_PAD_DEL);
- add("PAD_RETURN", KEY_PAD_RETURN);
- add("PAD_ADD", KEY_PAD_ADD); // not used
- add("PAD_SUBTRACT", KEY_PAD_SUBTRACT); // not used
- add("PAD_MULTIPLY", KEY_PAD_MULTIPLY); // not used
- add("PAD_DIVIDE", KEY_PAD_DIVIDE); // not used
-
- add("BUTTON0", KEY_BUTTON0);
- add("BUTTON1", KEY_BUTTON1);
- add("BUTTON2", KEY_BUTTON2);
- add("BUTTON3", KEY_BUTTON3);
- add("BUTTON4", KEY_BUTTON4);
- add("BUTTON5", KEY_BUTTON5);
- add("BUTTON6", KEY_BUTTON6);
- add("BUTTON7", KEY_BUTTON7);
- add("BUTTON8", KEY_BUTTON8);
- add("BUTTON9", KEY_BUTTON9);
- add("BUTTON10", KEY_BUTTON10);
- add("BUTTON11", KEY_BUTTON11);
- add("BUTTON12", KEY_BUTTON12);
- add("BUTTON13", KEY_BUTTON13);
- add("BUTTON14", KEY_BUTTON14);
- add("BUTTON15", KEY_BUTTON15);
- }
-};
-static WhichKeysym keysyms;
-
-struct WhichMask: public StringLookup<MASK>
-{
- WhichMask(): StringLookup<MASK>("shift mask")
- {
- add("NONE", MASK_NONE);
- add("CONTROL", MASK_CONTROL); // Mapped to cmd on Macs
- add("ALT", MASK_ALT);
- add("SHIFT", MASK_SHIFT);
- add("MAC_CONTROL", MASK_MAC_CONTROL); // Un-mapped Ctrl key on Macs, not used on Windows
- }
-};
-static WhichMask masks;
-
-static MASK getMask(const LLSD& event)
-{
- MASK mask(MASK_NONE);
- LLSD masknames(event["mask"]);
- for (LLSD::array_const_iterator ai(masknames.beginArray()), aend(masknames.endArray());
- ai != aend; ++ai)
- {
- mask |= masks.lookup(*ai);
- }
- return mask;
-}
-
-static KEY getKEY(const LLSD& event)
-{
- if (event.has("keysym"))
- {
- return keysyms.lookup(event["keysym"]);
- }
- else if (event.has("keycode"))
- {
- return KEY(event["keycode"].asInteger());
- }
- else
- {
- return KEY(event["char"].asString()[0]);
- }
-}
-
-void LLWindowListener::keyDown(LLSD const & evt)
-{
- mKbGetter()->handleTranslatedKeyDown(getKEY(evt), getMask(evt));
-}
-
-void LLWindowListener::keyUp(LLSD const & evt)
-{
- mKbGetter()->handleTranslatedKeyUp(getKEY(evt), getMask(evt));
-}
-
-// for WhichButton
-typedef BOOL (LLWindowCallbacks::*MouseFunc)(LLWindow *, LLCoordGL, MASK);
-struct Actions
-{
- Actions(const MouseFunc& d, const MouseFunc& u): down(d), up(u), valid(true) {}
- Actions(): valid(false) {}
- MouseFunc down, up;
- bool valid;
-};
-
-struct WhichButton: public StringLookup<Actions>
-{
- WhichButton(): StringLookup<Actions>("mouse button")
- {
- add("LEFT", Actions(&LLWindowCallbacks::handleMouseDown,
- &LLWindowCallbacks::handleMouseUp));
- add("RIGHT", Actions(&LLWindowCallbacks::handleRightMouseDown,
- &LLWindowCallbacks::handleRightMouseUp));
- add("MIDDLE", Actions(&LLWindowCallbacks::handleMiddleMouseDown,
- &LLWindowCallbacks::handleMiddleMouseUp));
- }
-};
-static WhichButton buttons;
-
-static LLCoordGL getPos(const LLSD& event)
-{
- return LLCoordGL(event["x"].asInteger(), event["y"].asInteger());
-}
-
-void LLWindowListener::mouseDown(LLSD const & evt)
-{
- Actions actions(buttons.lookup(evt["button"]));
- if (actions.valid)
- {
- (mWindow->*(actions.down))(NULL, getPos(evt), getMask(evt));
- }
-}
-
-void LLWindowListener::mouseUp(LLSD const & evt)
-{
- Actions actions(buttons.lookup(evt["button"]));
- if (actions.valid)
- {
- (mWindow->*(actions.up))(NULL, getPos(evt), getMask(evt));
- }
-}
-
-void LLWindowListener::mouseMove(LLSD const & evt)
-{
- mWindow->handleMouseMove(NULL, getPos(evt), getMask(evt));
-}
-
-void LLWindowListener::mouseScroll(LLSD const & evt)
-{
- S32 clicks = evt["clicks"].asInteger();
-
- mWindow->handleScrollWheel(NULL, clicks);
-}
-
diff --git a/indra/llxml/llcontrol.h b/indra/llxml/llcontrol.h
index 050d4b729f..bf38a8b062 100644
--- a/indra/llxml/llcontrol.h
+++ b/indra/llxml/llcontrol.h
@@ -185,9 +185,10 @@ protected:
ctrl_name_table_t mNameTable;
std::string mTypeString[TYPE_COUNT];
+public:
eControlType typeStringToEnum(const std::string& typestr);
std::string typeEnumToString(eControlType typeenum);
-public:
+
LLControlGroup(const std::string& name);
~LLControlGroup();
void cleanup();
diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h
index 9d0fe781ce..69dcd474f7 100644
--- a/indra/llxuixml/llinitparam.h
+++ b/indra/llxuixml/llinitparam.h
@@ -289,15 +289,15 @@ namespace LLInitParam
protected:
bool anyProvided() const { return mIsProvided; }
- Param(class BaseBlock* enclosing_block);
+ Param(BaseBlock* enclosing_block);
// store pointer to enclosing block as offset to reduce space and allow for quick copying
- class BaseBlock& enclosingBlock() const
+ BaseBlock& enclosingBlock() const
{
const U8* my_addr = reinterpret_cast<const U8*>(this);
// get address of enclosing BLOCK class using stored offset to enclosing BaseBlock class
- return *const_cast<class BaseBlock*>
- (reinterpret_cast<const class BaseBlock*>
+ return *const_cast<BaseBlock*>
+ (reinterpret_cast<const BaseBlock*>
(my_addr - (ptrdiff_t)(S32)mEnclosingBlockOffset));
}
@@ -367,18 +367,16 @@ namespace LLInitParam
typedef boost::unordered_map<const std::string, ParamDescriptorPtr> param_map_t;
typedef std::vector<ParamDescriptorPtr> param_list_t;
- typedef std::list<ParamDescriptorPtr> all_params_list_t;
+ typedef std::list<ParamDescriptorPtr> all_params_list_t;
typedef std::vector<std::pair<param_handle_t, ParamDescriptor::validation_func_t> > param_validation_list_t;
param_map_t mNamedParams; // parameters with associated names
param_list_t mUnnamedParams; // parameters with_out_ associated names
param_validation_list_t mValidationList; // parameters that must be validated
all_params_list_t mAllParams; // all parameters, owns descriptors
-
- size_t mMaxParamOffset;
-
- EInitializationState mInitializationState; // whether or not static block data has been initialized
- class BaseBlock* mCurrentBlockPtr; // pointer to block currently being constructed
+ size_t mMaxParamOffset;
+ EInitializationState mInitializationState; // whether or not static block data has been initialized
+ BaseBlock* mCurrentBlockPtr; // pointer to block currently being constructed
};
class BaseBlock
@@ -499,6 +497,92 @@ namespace LLInitParam
const std::string& getParamName(const BlockDescriptor& block_data, const Param* paramp) const;
};
+ class BaseBlockWithFlags : public BaseBlock
+ {
+ public:
+ class FlagBase : public Param
+ {
+ public:
+ typedef FlagBase self_t;
+
+ FlagBase(const char* name, BaseBlock* enclosing_block) : Param(enclosing_block)
+ {
+ if (LL_UNLIKELY(enclosing_block->mostDerivedBlockDescriptor().mInitializationState == BlockDescriptor::INITIALIZING))
+ {
+ ParamDescriptorPtr param_descriptor = ParamDescriptorPtr(new ParamDescriptor(
+ enclosing_block->getHandleFromParam(this),
+ &mergeWith,
+ &deserializeParam,
+ &serializeParam,
+ NULL,
+ &inspectParam,
+ 0, 1));
+ BaseBlock::addParam(enclosing_block->mostDerivedBlockDescriptor(), param_descriptor, name);
+ }
+ }
+
+ bool isProvided() const { return anyProvided(); }
+
+ private:
+ static bool mergeWith(Param& dst, const Param& src, bool overwrite)
+ {
+ const self_t& src_typed_param = static_cast<const self_t&>(src);
+ self_t& dst_typed_param = static_cast<self_t&>(dst);
+
+ if (src_typed_param.isProvided()
+ && (overwrite || !dst_typed_param.isProvided()))
+ {
+ dst.setProvided(true);
+ return true;
+ }
+ return false;
+ }
+
+ static bool deserializeParam(Param& param, Parser& parser, const Parser::name_stack_range_t& name_stack, S32 generation)
+ {
+ self_t& typed_param = static_cast<self_t&>(param);
+
+ // no further names in stack, parse value now
+ if (name_stack.first == name_stack.second)
+ {
+ typed_param.setProvided(true);
+ typed_param.enclosingBlock().paramChanged(param, true);
+ return true;
+ }
+
+ return false;
+ }
+
+ static void serializeParam(const Param& param, Parser& parser, Parser::name_stack_t& name_stack, const Param* diff_param)
+ {
+ const self_t& typed_param = static_cast<const self_t&>(param);
+ const self_t* typed_diff_param = static_cast<const self_t*>(diff_param);
+
+ if (!typed_param.isProvided()) return;
+
+ if (!name_stack.empty())
+ {
+ name_stack.back().second = parser.newParseGeneration();
+ }
+
+ // then try to serialize value directly
+ if (!typed_diff_param || !typed_diff_param->isProvided())
+ {
+ if (!parser.writeValue(NoParamValue(), name_stack))
+ {
+ return;
+ }
+ }
+ }
+
+ static void inspectParam(const Param& param, Parser& parser, Parser::name_stack_t& name_stack, S32 min_count, S32 max_count)
+ {
+ // tell parser about our actual type
+ parser.inspectValue<NoParamValue>(name_stack, min_count, max_count, NULL);
+ }
+ };
+ };
+
// these templates allow us to distinguish between template parameters
// that derive from BaseBlock and those that don't
template<typename T, typename Void = void>
@@ -1424,7 +1508,7 @@ namespace LLInitParam
}
};
- template <typename DERIVED_BLOCK, typename BASE_BLOCK = BaseBlock>
+ template <typename DERIVED_BLOCK, typename BASE_BLOCK = BaseBlockWithFlags>
class Block
: public BASE_BLOCK
{
@@ -1520,6 +1604,13 @@ namespace LLInitParam
};
+ class Flag : public BaseBlockWithFlags::FlagBase
+ {
+ public:
+ Flag(const char* name) : FlagBase(name, DERIVED_BLOCK::selfBlockDescriptor().mCurrentBlockPtr)
+ {}
+ };
+
template <typename T, typename RANGE = BaseBlock::AnyAmount, typename NAME_VALUE_LOOKUP = TypeValues<T> >
class Multiple : public TypedParam<T, NAME_VALUE_LOOKUP, true>
{
diff --git a/indra/llxuixml/llxuiparser.cpp b/indra/llxuixml/llxuiparser.cpp
index 72a7bb7af5..4af077b22c 100644
--- a/indra/llxuixml/llxuiparser.cpp
+++ b/indra/llxuixml/llxuiparser.cpp
@@ -440,12 +440,11 @@ bool LLXUIParser::readXUIImpl(LLXMLNodePtr nodep, LLInitParam::BaseBlock& block)
&& nodep->mAttributes.empty()
&& nodep->getSanitizedValue().empty())
{
- // empty node, just parse as NoValue
+ // empty node, just parse as flag
mCurReadNode = DUMMY_NODE;
return block.submitValue(mNameStack, *this, silent);
}
-
// submit attributes for current node
values_parsed |= readAttributes(nodep, block);
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index fe80a47ca4..cb0f630aa0 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -603,6 +603,7 @@ set(viewer_SOURCE_FILES
llweb.cpp
llwebsharing.cpp
llwind.cpp
+ llwindowlistener.cpp
llwlanimator.cpp
llwldaycycle.cpp
llwlhandlers.cpp
@@ -1161,6 +1162,7 @@ set(viewer_HEADER_FILES
llweb.h
llwebsharing.h
llwind.h
+ llwindowlistener.h
llwlanimator.h
llwldaycycle.h
llwlhandlers.h
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 8804c40aff..15f1bbd1b1 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -5657,6 +5657,17 @@
<key>Value</key>
<integer>1</integer>
</map>
+ <key>MemoryPrivatePoolSize</key>
+ <map>
+ <key>Comment</key>
+ <string>Size of the private memory pool in MB (min. value is 256)</string>
+ <key>Persist</key>
+ <integer>1</integer>
+ <key>Type</key>
+ <string>U32</string>
+ <key>Value</key>
+ <integer>512</integer>
+ </map>
<key>MemProfiling</key>
<map>
<key>Comment</key>
@@ -13564,7 +13575,7 @@
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
- <integer>0</integer>
+ <integer>1</integer>
</map>
<key>ShowOfferedInventory</key>
<map>
diff --git a/indra/newview/gpu_table.txt b/indra/newview/gpu_table.txt
index 6ed4e3b7f7..b7d951e018 100644
--- a/indra/newview/gpu_table.txt
+++ b/indra/newview/gpu_table.txt
@@ -5,6 +5,10 @@
// against driver strings, a class number, and whether we claim
// to support them or not.
//
+// Case is not significant in either the regular expressions or the
+// driver strings; the recognizer code lowercases both before using
+// them.
+//
// If you modify this table, use the (perl) gpu_table_tester
// to compare the results of recognizing known cards (it is easy
// to mess this up by putting things in the wrong order):
@@ -12,13 +16,13 @@
// perl ../../scripts/gpu_table_tester -g gpu_table.txt tests/gpus_seen.txt | diff - tests/gpus_results.txt
//
// Format:
-// Fields are separated by one or more tab (not space) characters
-// <recognizer name> <regular expression> <class> <supported>
+// Fields are separated by one or more tab (not space) characters
+// <recognizer name> <regular expression> <class> <supported>
//
// Class Numbers:
-// 0 - Defaults to low graphics settings. No shaders on by default
-// 1 - Defaults to mid graphics settings. Basic shaders on by default
-// 2 - Defaults to high graphics settings. Atmospherics on by default.
+// 0 - Defaults to low graphics settings. No shaders on by default
+// 1 - Defaults to mid graphics settings. Basic shaders on by default
+// 2 - Defaults to high graphics settings. Atmospherics on by default.
// 3 - Same as class 2 for now.
//
// Supported Number:
@@ -39,7 +43,8 @@ ATI All-in-Wonder X800 .*ATI.*All-in-Wonder X8.* 2 1
ATI All-in-Wonder X1800 .*ATI.*All-in-Wonder X18.* 3 1
ATI All-in-Wonder X1900 .*ATI.*All-in-Wonder X19.* 3 1
ATI All-in-Wonder PCI-E .*ATI.*All-in-Wonder.*PCI-E.* 1 1
-ATI All-in-Wonder Radeon .*ATI.*All-in-Wonder Radeon.* 0 1
+ATI All-in-Wonder Radeon .*ATI.*All-in-Wonder Radeon.* 0 1
+ATI ASUS ARES .*ATI.*ASUS.*ARES.* 3 1
ATI ASUS A9xxx .*ATI.*ASUS.*A9.* 1 1
ATI ASUS AH24xx .*ATI.*ASUS.*AH24.* 1 1
ATI ASUS AH26xx .*ATI.*ASUS.*AH26.* 3 1
@@ -51,6 +56,7 @@ ATI ASUS AX5xx .*ATI.*ASUS.*AX5.* 1 1
ATI ASUS AX8xx .*ATI.*ASUS.*AX8.* 2 1
ATI ASUS EAH24xx .*ATI.*ASUS.*EAH24.* 2 1
ATI ASUS EAH26xx .*ATI.*ASUS.*EAH26.* 3 1
+ATI ASUS EAH29xx .*ATI.*ASUS.*EAH29.* 3 1
ATI ASUS EAH34xx .*ATI.*ASUS.*EAH34.* 1 1
ATI ASUS EAH36xx .*ATI.*ASUS.*EAH36.* 3 1
ATI ASUS EAH38xx .*ATI.*ASUS.*EAH38.* 3 1
@@ -59,12 +65,17 @@ ATI ASUS EAH45xx .*ATI.*ASUS.*EAH45.* 1 1
ATI ASUS EAH48xx .*ATI.*ASUS.*EAH48.* 3 1
ATI ASUS EAH57xx .*ATI.*ASUS.*EAH57.* 3 1
ATI ASUS EAH58xx .*ATI.*ASUS.*EAH58.* 3 1
+ATI ASUS EAH6xxx .*ATI.*ASUS.*EAH6.* 3 1
ATI ASUS Radeon X1xxx .*ATI.*ASUS.*X1.* 3 1
ATI Radeon X7xx .*ATI.*ASUS.*X7.* 1 1
-ATI Radeon X1xxx .*ATI.*X1.* 0 1
-ATI Radeon X13xx .*ATI.*Diamond X13.* 1 1
-ATI Radeon X16xx .*ATI.*Diamond X16.* 1 1
-ATI Radeon X19xx .*ATI.*Diamond X19.* 1 1
+ATI Radeon X19xx .*ATI.*(Radeon|Diamond) X19.* ?.* 3 1
+ATI Radeon X18xx .*ATI.*(Radeon|Diamond) X18.* ?.* 3 1
+ATI Radeon X17xx .*ATI.*(Radeon|Diamond) X17.* ?.* 2 1
+ATI Radeon X16xx .*ATI.*(Radeon|Diamond) X16.* ?.* 2 1
+ATI Radeon X15xx .*ATI.*(Radeon|Diamond) X15.* ?.* 2 1
+ATI Radeon X13xx .*ATI.*(Radeon|Diamond) X13.* ?.* 1 1
+ATI Radeon X1xxx .*ATI.*(Radeon|Diamond) X1.. ?.* 1 1
+ATI Radeon X2xxx .*ATI.*(Radeon|Diamond) X2.. ?.* 1 1
ATI Display Adapter .*ATI.*display adapter.* 0 1
ATI FireGL 5200 .*ATI.*FireGL V52.* 0 1
ATI FireGL 5xxx .*ATI.*FireGL V5.* 1 1
@@ -74,8 +85,9 @@ ATI FirePro M5800 .*ATI.*FirePro.*M58.* 3 1
ATI FirePro M7740 .*ATI.*FirePro.*M77.* 3 1
ATI FirePro M7820 .*ATI.*FirePro.*M78.* 3 1
ATI FireMV .*ATI.*FireMV.* 0 1
-ATI Geforce 9500 GT .*ATI.*Geforce 9500 *GT 2 1
-ATI Geforce 9800 GT .*ATI.*Geforce 9800 *GT 2 1
+ATI Geforce 9500 GT .*ATI.*Geforce 9500 *GT.* 2 1
+ATI Geforce 9600 GT .*ATI.*Geforce 9600 *GT.* 2 1
+ATI Geforce 9800 GT .*ATI.*Geforce 9800 *GT.* 2 1
ATI Generic .*ATI.*Generic.* 0 0
ATI Hercules 9800 .*ATI.*Hercules.*9800.* 1 1
ATI IGP 340M .*ATI.*IGP.*340M.* 0 0
@@ -85,168 +97,156 @@ ATI M56 .*ATI.*M56.* 1 1
ATI M71 .*ATI.*M71.* 1 1
ATI M72 .*ATI.*M72.* 1 1
ATI M76 .*ATI.*M76.* 3 1
-ATI Mobility Radeon 4100 .*ATI.*(Mobility|MOBILITY).*41.* 0 1
-ATI Mobility Radeon 7xxx .*ATI.*(Mobility|MOBILITY).*Radeon 7.* 0 1
-ATI Mobility Radeon 8xxx .*ATI.*(Mobility|MOBILITY).*Radeon 8.* 0 1
-ATI Mobility Radeon 9800 .*ATI.*(Mobility|MOBILITY).*98.* 1 1
-ATI Mobility Radeon 9700 .*ATI.*(Mobility|MOBILITY).*97.* 1 1
-ATI Mobility Radeon 9600 .*ATI.*(Mobility|MOBILITY).*96.* 0 1
-ATI Mobility Radeon HD 530v .*ATI.*(Mobility|MOBILITY).*HD *530v.* 1 1
-ATI Mobility Radeon HD 540v .*ATI.*(Mobility|MOBILITY).*HD *540v.* 2 1
-ATI Mobility Radeon HD 545v .*ATI.*(Mobility|MOBILITY).*HD *545v.* 2 1
-ATI Mobility Radeon HD 550v .*ATI.*(Mobility|MOBILITY).*HD *550v.* 2 1
-ATI Mobility Radeon HD 560v .*ATI.*(Mobility|MOBILITY).*HD *560v.* 2 1
-ATI Mobility Radeon HD 565v .*ATI.*(Mobility|MOBILITY).*HD *565v.* 2 1
-ATI Mobility Radeon HD 2300 .*ATI.*(Mobility|MOBILITY).*HD *23.* 1 1
-ATI Mobility Radeon HD 2400 .*ATI.*(Mobility|MOBILITY).*HD *24.* 1 1
-ATI Mobility Radeon HD 2600 .*ATI.*(Mobility|MOBILITY).*HD *26.* 3 1
-ATI Mobility Radeon HD 2700 .*ATI.*(Mobility|MOBILITY).*HD *27.* 3 1
-ATI Mobility Radeon HD 3100 .*ATI.*(Mobility|MOBILITY).*HD *31.* 0 1
-ATI Mobility Radeon HD 3200 .*ATI.*(Mobility|MOBILITY).*HD *32.* 0 1
-ATI Mobility Radeon HD 3400 .*ATI.*(Mobility|MOBILITY).*HD *34.* 2 1
-ATI Mobility Radeon HD 3600 .*ATI.*(Mobility|MOBILITY).*HD *36.* 3 1
-ATI Mobility Radeon HD 3800 .*ATI.*(Mobility|MOBILITY).*HD *38.* 3 1
-ATI Mobility Radeon HD 4200 .*ATI.*(Mobility|MOBILITY).*HD *42.* 2 1
-ATI Mobility Radeon HD 4300 .*ATI.*(Mobility|MOBILITY).*HD *43.* 2 1
-ATI Mobility Radeon HD 4500 .*ATI.*(Mobility|MOBILITY).*HD *45.* 3 1
-ATI Mobility Radeon HD 4600 .*ATI.*(Mobility|MOBILITY).*HD *46.* 3 1
-ATI Mobility Radeon HD 4800 .*ATI.*(Mobility|MOBILITY).*HD *48.* 3 1
-ATI Mobility Radeon HD 5100 .*ATI.*(Mobility|MOBILITY).*HD *51.* 2 1
-ATI Mobility Radeon HD 5300 .*ATI.*(Mobility|MOBILITY).*HD *53.* 2 1
-ATI Mobility Radeon HD 5400 .*ATI.*(Mobility|MOBILITY).*HD *54.* 2 1
-ATI Mobility Radeon HD 5500 .*ATI.*(Mobility|MOBILITY).*HD *55.* 2 1
-ATI Mobility Radeon HD 5600 .*ATI.*(Mobility|MOBILITY).*HD *56.* 2 1
-ATI Mobility Radeon HD 5700 .*ATI.*(Mobility|MOBILITY).*HD *57.* 3 1
-ATI Mobility Radeon HD 6200 .*ATI.*(Mobility|MOBILITY).*HD *62.* 2 1
-ATI Mobility Radeon HD 6300 .*ATI.*(Mobility|MOBILITY).*HD *63.* 2 1
-ATI Mobility Radeon HD 6400M .*ATI.*(Mobility|MOBILITY).*HD *64.* 3 1
-ATI Mobility Radeon HD 6500M .*ATI.*(Mobility|MOBILITY).*HD *65.* 3 1
-ATI Mobility Radeon HD 6600M .*ATI.*(Mobility|MOBILITY).*HD *66.* 3 1
-ATI Mobility Radeon HD 6700M .*ATI.*(Mobility|MOBILITY).*HD *67.* 3 1
-ATI Mobility Radeon HD 6800M .*ATI.*(Mobility|MOBILITY).*HD *68.* 3 1
-ATI Mobility Radeon HD 6900M .*ATI.*(Mobility|MOBILITY).*HD *69.* 3 1
-ATI Mobility Radeon X1xxx .*ATI.*(Mobility|MOBILITY).*X1.* 0 1
-ATI Mobility Radeon X2xxx .*ATI.*(Mobility|MOBILITY).*X2.* 0 1
-ATI Mobility Radeon X3xx .*ATI.*(Mobility|MOBILITY).*X3.* 1 1
-ATI Mobility Radeon X6xx .*ATI.*(Mobility|MOBILITY).*X6.* 1 1
-ATI Mobility Radeon X7xx .*ATI.*(Mobility|MOBILITY).*X7.* 1 1
-ATI Mobility Radeon Xxxx .*ATI.*(Mobility|MOBILITY).*X.* 0 1
-ATI Mobility Radeon .*ATI.*(Mobility|MOBILITY).* 0 1
-ATI Radeon HD 2300 .*ATI.*(Radeon|RADEON) HD *23.* 0 1
-ATI Radeon HD 2400 .*ATI.*(Radeon|RADEON) HD *24.* 1 1
-ATI Radeon HD 2600 .*ATI.*(Radeon|RADEON) HD *26.* 2 1
-ATI Radeon HD 2900 .*ATI.*(Radeon|RADEON) HD *29.* 3 1
-ATI Radeon HD 3000 .*ATI.*(Radeon|RADEON) HD *30.* 0 1
-ATI Radeon HD 3100 .*ATI.*(Radeon|RADEON) HD *31.* 1 1
-ATI Radeon HD 3200 .*ATI.*(Radeon|RADEON) HD *32.* 0 1
-ATI Radeon HD 3300 .*ATI.*(Radeon|RADEON) HD *33.* 1 1
-ATI Radeon HD 3400 .*ATI.*(Radeon|RADEON) HD *34.* 1 1
-ATI Radeon HD 3500 .*ATI.*(Radeon|RADEON) HD *35.* 1 1
-ATI Radeon HD 3600 .*ATI.*(Radeon|RADEON) HD *36.* 3 1
-ATI Radeon HD 3700 .*ATI.*(Radeon|RADEON) HD *37.* 3 1
-ATI Radeon HD 3800 .*ATI.*(Radeon|RADEON) HD *38.* 3 1
-ATI Radeon HD 4200 .*ATI.*(Radeon|RADEON) HD *42.* 1 1
-ATI Radeon HD 4300 .*ATI.*(Radeon|RADEON) HD *43.* 1 1
-ATI Radeon HD 4400 .*ATI.*(Radeon|RADEON) HD *44.* 1 1
-ATI Radeon HD 4500 .*ATI.*(Radeon|RADEON) HD *45.* 3 1
-ATI Radeon HD 4600 .*ATI.*(Radeon|RADEON) HD *46.* 3 1
-ATI Radeon HD 4700 .*ATI.*(Radeon|RADEON) HD *47.* 3 1
-ATI Radeon HD 4800 .*ATI.*(Radeon|RADEON) HD *48.* 3 1
-ATI Radeon HD 5400 .*ATI.*(Radeon|RADEON) HD *54.* 3 1
-ATI Radeon HD 5500 .*ATI.*(Radeon|RADEON) HD *55.* 3 1
-ATI Radeon HD 5600 .*ATI.*(Radeon|RADEON) HD *56.* 3 1
-ATI Radeon HD 5700 .*ATI.*(Radeon|RADEON) HD *57.* 3 1
-ATI Radeon HD 5800 .*ATI.*(Radeon|RADEON) HD *58.* 3 1
-ATI Radeon HD 5900 .*ATI.*(Radeon|RADEON) HD *59.* 3 1
-ATI Radeon HD 6200 .*ATI.*(Radeon|RADEON) HD *62.* 2 1
-ATI Radeon HD 6300 .*ATI.*(Radeon|RADEON) HD *63.* 2 1
-ATI Radeon HD 6400 .*ATI.*(Radeon|RADEON) HD *64.* 3 1
-ATI Radeon HD 6500 .*ATI.*(Radeon|RADEON) HD *65.* 3 1
-ATI Radeon HD 66xx .*ATI.*(Radeon|RADEON) HD *66.* 3 1
-ATI Radeon HD 6700 .*ATI.*(Radeon|RADEON) HD *67.* 3 1
-ATI Radeon HD 6800 .*ATI.*(Radeon|RADEON) HD *68.* 3 1
-ATI Radeon HD 6900 .*ATI.*(Radeon|RADEON) HD *69.* 3 1
-ATI Radeon OpenGL .*ATI.*(Radeon|RADEON) OpenGL.* 0 0
-ATI Radeon 2100 .*ATI.*(Radeon|RADEON) 21.* 0 1
-ATI Radeon 3000 .*ATI.*(Radeon|RADEON) 30.* 0 1
-ATI Radeon 3100 .*ATI.*(Radeon|RADEON) 31.* 1 1
-ATI Radeon 5xxx .*ATI.*(Radeon|RADEON) 5.* 3 1
-ATI Radeon 7xxx .*ATI.*(Radeon|RADEON) 7.* 0 1
-ATI Radeon 8xxx .*ATI.*(Radeon|RADEON) 8.* 0 1
-ATI Radeon 9000 .*ATI.*(Radeon|RADEON) 90.* 0 1
-ATI Radeon 9100 .*ATI.*(Radeon|RADEON) 91.* 0 1
-ATI Radeon 9200 .*ATI.*(Radeon|RADEON) 92.* 0 1
-ATI Radeon 9500 .*ATI.*(Radeon|RADEON) 95.* 0 1
-ATI Radeon 9600 .*ATI.*(Radeon|RADEON) 96.* 0 1
-ATI Radeon 9700 .*ATI.*(Radeon|RADEON) 97.* 1 1
-ATI Radeon 9800 .*ATI.*(Radeon|RADEON) 98.* 1 1
+ATI Radeon HD 64xx .*ATI.*AMD Radeon.* HD [67]4..[MG] 3 1
+ATI Radeon HD 65xx .*ATI.*AMD Radeon.* HD [67]5..[MG] 3 1
+ATI Radeon HD 66xx .*ATI.*AMD Radeon.* HD [67]6..[MG] 3 1
+ATI Mobility Radeon 4100 .*ATI.*Mobility.*41.. 1 1
+ATI Mobility Radeon 7xxx .*ATI.*Mobility.*Radeon 7.* 0 1
+ATI Mobility Radeon 8xxx .*ATI.*Mobility.*Radeon 8.* 0 1
+ATI Mobility Radeon 9800 .*ATI.*Mobility.*98.* 1 1
+ATI Mobility Radeon 9700 .*ATI.*Mobility.*97.* 1 1
+ATI Mobility Radeon 9600 .*ATI.*Mobility.*96.* 0 1
+ATI Mobility Radeon HD 530v .*ATI.*Mobility.*HD *530v.* 1 1
+ATI Mobility Radeon HD 540v .*ATI.*Mobility.*HD *540v.* 2 1
+ATI Mobility Radeon HD 545v .*ATI.*Mobility.*HD *545v.* 2 1
+ATI Mobility Radeon HD 550v .*ATI.*Mobility.*HD *550v.* 2 1
+ATI Mobility Radeon HD 560v .*ATI.*Mobility.*HD *560v.* 2 1
+ATI Mobility Radeon HD 565v .*ATI.*Mobility.*HD *565v.* 2 1
+ATI Mobility Radeon HD 2300 .*ATI.*Mobility.*HD *23.* 1 1
+ATI Mobility Radeon HD 2400 .*ATI.*Mobility.*HD *24.* 1 1
+ATI Mobility Radeon HD 2600 .*ATI.*Mobility.*HD *26.* 3 1
+ATI Mobility Radeon HD 2700 .*ATI.*Mobility.*HD *27.* 3 1
+ATI Mobility Radeon HD 3100 .*ATI.*Mobility.*HD *31.* 0 1
+ATI Mobility Radeon HD 3200 .*ATI.*Mobility.*HD *32.* 0 1
+ATI Mobility Radeon HD 3400 .*ATI.*Mobility.*HD *34.* 2 1
+ATI Mobility Radeon HD 3600 .*ATI.*Mobility.*HD *36.* 3 1
+ATI Mobility Radeon HD 3800 .*ATI.*Mobility.*HD *38.* 3 1
+ATI Mobility Radeon HD 4200 .*ATI.*Mobility.*HD *42.* 2 1
+ATI Mobility Radeon HD 4300 .*ATI.*Mobility.*HD *43.* 2 1
+ATI Mobility Radeon HD 4500 .*ATI.*Mobility.*HD *45.* 3 1
+ATI Mobility Radeon HD 4600 .*ATI.*Mobility.*HD *46.* 3 1
+ATI Mobility Radeon HD 4800 .*ATI.*Mobility.*HD *48.* 3 1
+ATI Mobility Radeon HD 5100 .*ATI.*Mobility.*HD *51.* 3 1
+ATI Mobility Radeon HD 5300 .*ATI.*Mobility.*HD *53.* 3 1
+ATI Mobility Radeon HD 5400 .*ATI.*Mobility.*HD *54.* 3 1
+ATI Mobility Radeon HD 5500 .*ATI.*Mobility.*HD *55.* 3 1
+ATI Mobility Radeon HD 5600 .*ATI.*Mobility.*HD *56.* 3 1
+ATI Mobility Radeon HD 5700 .*ATI.*Mobility.*HD *57.* 3 1
+ATI Mobility Radeon HD 6200 .*ATI.*Mobility.*HD *62.* 3 1
+ATI Mobility Radeon HD 6300 .*ATI.*Mobility.*HD *63.* 3 1
+ATI Mobility Radeon HD 6400M .*ATI.*Mobility.*HD *64.* 3 1
+ATI Mobility Radeon HD 6500M .*ATI.*Mobility.*HD *65.* 3 1
+ATI Mobility Radeon HD 6600M .*ATI.*Mobility.*HD *66.* 3 1
+ATI Mobility Radeon HD 6700M .*ATI.*Mobility.*HD *67.* 3 1
+ATI Mobility Radeon HD 6800M .*ATI.*Mobility.*HD *68.* 3 1
+ATI Mobility Radeon HD 6900M .*ATI.*Mobility.*HD *69.* 3 1
+ATI Radeon HD 2300 .*ATI.*Radeon HD *23.. 0 1
+ATI Radeon HD 2400 .*ATI.*Radeon HD *24.. 1 1
+ATI Radeon HD 2600 .*ATI.*Radeon HD *26.. 2 1
+ATI Radeon HD 2900 .*ATI.*Radeon HD *29.. 3 1
+ATI Radeon HD 3000 .*ATI.*Radeon HD *30.. 0 1
+ATI Radeon HD 3100 .*ATI.*Radeon HD *31.. 1 1
+ATI Radeon HD 3200 .*ATI.*Radeon HD *32.. 1 1
+ATI Radeon HD 3300 .*ATI.*Radeon HD *33.. 1 1
+ATI Radeon HD 3400 .*ATI.*Radeon HD *34.. 1 1
+ATI Radeon HD 3500 .*ATI.*Radeon HD *35.. 1 1
+ATI Radeon HD 3600 .*ATI.*Radeon HD *36.. 3 1
+ATI Radeon HD 3700 .*ATI.*Radeon HD *37.. 3 1
+ATI Radeon HD 3800 .*ATI.*Radeon HD *38.. 3 1
+ATI Radeon HD 4100 .*ATI.*Radeon HD *41.. 1 1
+ATI Radeon HD 4200 .*ATI.*Radeon HD *42.. 1 1
+ATI Radeon HD 4300 .*ATI.*Radeon HD *43.. 1 1
+ATI Radeon HD 4400 .*ATI.*Radeon HD *44.. 1 1
+ATI Radeon HD 4500 .*ATI.*Radeon HD *45.. 3 1
+ATI Radeon HD 4600 .*ATI.*Radeon HD *46.. 3 1
+ATI Radeon HD 4700 .*ATI.*Radeon HD *47.. 3 1
+ATI Radeon HD 4800 .*ATI.*Radeon HD *48.. 3 1
+ATI Radeon HD 5400 .*ATI.*Radeon HD *54.. 3 1
+ATI Radeon HD 5500 .*ATI.*Radeon HD *55.. 3 1
+ATI Radeon HD 5600 .*ATI.*Radeon HD *56.. 3 1
+ATI Radeon HD 5700 .*ATI.*Radeon HD *57.. 3 1
+ATI Radeon HD 5800 .*ATI.*Radeon HD *58.. 3 1
+ATI Radeon HD 5900 .*ATI.*Radeon HD *59.. 3 1
+ATI Radeon HD 6200 .*ATI.*Radeon HD *62.. 3 1
+ATI Radeon HD 6300 .*ATI.*Radeon HD *63.. 3 1
+ATI Radeon HD 6400 .*ATI.*Radeon HD *64.. 3 1
+ATI Radeon HD 6500 .*ATI.*Radeon HD *65.. 3 1
+ATI Radeon HD 6600 .*ATI.*Radeon HD *66.. 3 1
+ATI Radeon HD 6700 .*ATI.*Radeon HD *67.. 3 1
+ATI Radeon HD 6800 .*ATI.*Radeon HD *68.. 3 1
+ATI Radeon HD 6900 .*ATI.*Radeon HD *69.. 3 1
+ATI Radeon OpenGL .*ATI.*Radeon OpenGL.* 0 0
+ATI Radeon 2100 .*ATI.*Radeon 21.. 0 1
+ATI Radeon 3000 .*ATI.*Radeon 30.. 0 1
+ATI Radeon 3100 .*ATI.*Radeon 31.. 1 1
+ATI Radeon 5xxx .*ATI.*Radeon 5... 3 1
+ATI Radeon 7xxx .*ATI.*Radeon 7... 0 1
+ATI Radeon 8xxx .*ATI.*Radeon 8... 0 1
+ATI Radeon 9000 .*ATI.*Radeon 90.. 0 1
+ATI Radeon 9100 .*ATI.*Radeon 91.. 0 1
+ATI Radeon 9200 .*ATI.*Radeon 92.. 0 1
+ATI Radeon 9500 .*ATI.*Radeon 95.. 0 1
+ATI Radeon 9600 .*ATI.*Radeon 96.. 0 1
+ATI Radeon 9700 .*ATI.*Radeon 97.. 1 1
+ATI Radeon 9800 .*ATI.*Radeon 98.. 1 1
ATI Radeon RV250 .*ATI.*RV250.* 0 1
ATI Radeon RV600 .*ATI.*RV6.* 1 1
ATI Radeon RX700 .*ATI.*RX70.* 1 1
-ATI Radeon RX800 .*ATI.*(Radeon|RADEON) *RX80.* 2 1
+ATI Radeon RX800 .*ATI.*Radeon *RX80.* 2 1
ATI RS880M .*ATI.*RS880M 1 1
ATI Radeon RX9550 .*ATI.*RX9550.* 1 1
-ATI Radeon VE .*ATI.*(Radeon|RADEON).*VE.* 0 0
-ATI Radeon X1000 .*ATI.*(Radeon|RADEON) *X10.* 0 1
-ATI Radeon X1200 .*ATI.*(Radeon|RADEON) *X12.* 0 1
-ATI Radeon X1300 .*ATI.*(Radeon|RADEON) *X13.* 1 1
-ATI Radeon X1400 .*ATI.*(Radeon|RADEON) *X14.* 1 1
-ATI Radeon X1500 .*ATI.*(Radeon|RADEON) *X15.* 1 1
-ATI Radeon X1600 .*ATI.*(Radeon|RADEON) *X16.* 1 1
-ATI Radeon X1700 .*ATI.*(Radeon|RADEON) *X17.* 1 1
-ATI Radeon X1800 .*ATI.*(Radeon|RADEON) *X18.* 3 1
-ATI Radeon X1900 .*ATI.*(Radeon|RADEON) *X19.* 3 1
-ATI Radeon X300 .*ATI.*(Radeon|RADEON) *X3.* 0 1
-ATI Radeon X400 .*ATI.*(Radeon|RADEON) X4.* 0 1
-ATI Radeon X500 .*ATI.*(Radeon|RADEON) X5.* 0 1
-ATI Radeon X600 .*ATI.*(Radeon|RADEON) X6.* 1 1
-ATI Radeon X700 .*ATI.*(Radeon|RADEON) X7.* 1 1
-ATI Radeon X800 .*ATI.*(Radeon|RADEON) X8.* 2 1
-ATI Radeon X900 .*ATI.*(Radeon|RADEON) X9.* 2 1
-ATI Radeon Xpress .*ATI.*(Radeon|RADEON) (Xpress|XPRESS).* 0 1
+ATI Radeon VE .*ATI.*Radeon.*VE.* 0 0
+ATI Radeon X300 .*ATI.*Radeon *X3.* 0 1
+ATI Radeon X400 .*ATI.*Radeon ?X4.* 0 1
+ATI Radeon X500 .*ATI.*Radeon ?X5.* 0 1
+ATI Radeon X600 .*ATI.*Radeon ?X6.* 1 1
+ATI Radeon X700 .*ATI.*Radeon ?X7.* 1 1
+ATI Radeon X800 .*ATI.*Radeon ?X8.* 2 1
+ATI Radeon X900 .*ATI.*Radeon ?X9.* 2 1
+ATI Radeon Xpress .*ATI.*Radeon Xpress.* 0 1
ATI Rage 128 .*ATI.*Rage 128.* 0 1
-ATI R350 (9800) .*(ATI)?.*R350.* 1 1
-ATI R580 (X1900) .*(ATI)?.*R580.* 3 1
-ATI RC410 (Xpress 200) .*(ATI)?.*RC410.* 0 0
-ATI RS48x (Xpress 200x) .*(ATI)?.*RS48.* 0 0
-ATI RS600 (Xpress 3200) .*(ATI)?.*RS600.* 0 0
-ATI RV350 (9600) .*(ATI)?.*RV350.* 0 1
-ATI RV370 (X300) .*(ATI)?.*RV370.* 0 1
-ATI RV410 (X700) .*(ATI)?.*RV410.* 1 1
-ATI RV515 .*(ATI)?.*RV515.* 1 1
-ATI RV570 (X1900 GT/PRO) .*(ATI)?.*RV570.* 3 1
-ATI RV380 .*(ATI)?.*RV380.* 0 1
-ATI RV530 .*(ATI)?.*RV530.* 1 1
-ATI RX480 (Xpress 200P) .*(ATI)?.*RX480.* 0 1
-ATI RX700 .*(ATI)?.*RX700.* 1 1
-AMD ANTILLES (HD 6990) .*(AMD|ATI).*(Antilles|ANTILLES).* 3 1
-AMD BARTS (HD 6800) .*(AMD|ATI).*(Barts|BARTS).* 3 1
-AMD CAICOS (HD 6400) .*(AMD|ATI).*(Caicos|CAICOS).* 3 1
+ATI R350 (9800) .*R350.* 1 1
+ATI R580 (X1900) .*R580.* 3 1
+ATI RC410 (Xpress 200) .*RC410.* 0 0
+ATI RS48x (Xpress 200x) .*RS48.* 0 0
+ATI RS600 (Xpress 3200) .*RS600.* 0 0
+ATI RV350 (9600) .*RV350.* 0 1
+ATI RV370 (X300) .*RV370.* 0 1
+ATI RV410 (X700) .*RV410.* 1 1
+ATI RV515 .*RV515.* 1 1
+ATI RV570 (X1900 GT/PRO) .*RV570.* 3 1
+ATI RV380 .*RV380.* 0 1
+ATI RV530 .*RV530.* 1 1
+ATI RX480 (Xpress 200P) .*RX480.* 0 1
+ATI RX700 .*RX700.* 1 1
+AMD ANTILLES (HD 6990) .*(AMD|ATI).*Antilles.* 3 1
+AMD BARTS (HD 6800) .*(AMD|ATI).*Barts.* 3 1
+AMD CAICOS (HD 6400) .*(AMD|ATI).*Caicos.* 3 1
AMD CAYMAN (HD 6900) .*(AMD|ATI).*(Cayman|CAYMAM).* 3 1
-AMD CEDAR (HD 5450) .*(AMD|ATI).*(Cedar|CEDAR).* 2 1
-AMD CYPRESS (HD 5800) .*(AMD|ATI).*(Cypress|CYPRESS).* 3 1
-AMD HEMLOCK (HD 5970) .*(AMD|ATI).*(Hemlock|HEMLOCK).* 3 1
-AMD JUNIPER (HD 5700) .*(AMD|ATI).*(Juniper|JUNIPER).* 3 1
-AMD PARK .*(AMD|ATI).*(Park|PARK).* 3 1
-AMD REDWOOD (HD 5500/5600) .*(AMD|ATI).*(Redwood|REDWOOD).* 3 1
-AMD TURKS (HD 6500/6600) .*(AMD|ATI).*(Turks|TURKS).* 3 1
-AMD RS780 (HD 3200) .*(AMD|ATI)?.*RS780.* 0 1
-AMD RS880 (HD 4200) .*(AMD|ATI)?.*RS880.* 1 1
-AMD RV610 (HD 2400) .*(AMD|ATI)?.*RV610.* 1 1
-AMD RV620 (HD 3400) .*(AMD|ATI)?.*RV620.* 1 1
-AMD RV630 (HD 2600) .*(AMD|ATI)?.*RV630.* 2 1
-AMD RV635 (HD 3600) .*(AMD|ATI)?.*RV635.* 3 1
-AMD RV670 (HD 3800) .*(AMD|ATI)?.*RV670.* 3 1
-AMD R680 (HD 3870 X2) .*(AMD|ATI)?.*R680.* 3 1
-AMD R700 (HD 4800 X2) .*(AMD|ATI)?.*R700.* 3 1
-AMD RV710 (HD 4300) .*(AMD|ATI)?.*RV710.* 1 1
-AMD RV730 (HD 4600) .*(AMD|ATI)?.*RV730.* 3 1
-AMD RV740 (HD 4700) .*(AMD|ATI)?.*RV740.* 3 1
-AMD RV770 (HD 4800) .*(AMD|ATI)?.*RV770.* 3 1
-AMD RV790 (HD 4800) .*(AMD|ATI)?.*RV790.* 3 1
+AMD CEDAR (HD 5450) .*(AMD|ATI).*Cedar.* 2 1
+AMD CYPRESS (HD 5800) .*(AMD|ATI).*Cypress.* 3 1
+AMD HEMLOCK (HD 5970) .*(AMD|ATI).*Hemlock.* 3 1
+AMD JUNIPER (HD 5700) .*(AMD|ATI).*Juniper.* 3 1
+AMD PARK .*(AMD|ATI).*Park.* 3 1
+AMD REDWOOD (HD 5500/5600) .*(AMD|ATI).*Redwood.* 3 1
+AMD TURKS (HD 6500/6600) .*(AMD|ATI).*Turks.* 3 1
+AMD RS780 (HD 3200) .*RS780.* 0 1
+AMD RS880 (HD 4200) .*RS880.* 1 1
+AMD RV610 (HD 2400) .*RV610.* 1 1
+AMD RV620 (HD 3400) .*RV620.* 1 1
+AMD RV630 (HD 2600) .*RV630.* 2 1
+AMD RV635 (HD 3600) .*RV635.* 3 1
+AMD RV670 (HD 3800) .*RV670.* 3 1
+AMD R680 (HD 3870 X2) .*R680.* 3 1
+AMD R700 (HD 4800 X2) .*R700.* 3 1
+AMD RV710 (HD 4300) .*RV710.* 1 1
+AMD RV730 (HD 4600) .*RV730.* 3 1
+AMD RV740 (HD 4700) .*RV740.* 3 1
+AMD RV770 (HD 4800) .*RV770.* 3 1
+AMD RV790 (HD 4800) .*RV790.* 3 1
ATI 760G/Radeon 3000 .*ATI.*AMD 760G.* 1 1
ATI 780L/Radeon 3000 .*ATI.*AMD 780L.* 1 1
-ATI Radeon DDR .*ATI.*(Radeon|RADEON) ?DDR.* 0 1
+ATI Radeon DDR .*ATI.*Radeon ?DDR.* 0 1
ATI FirePro 2000 .*ATI.*FirePro 2.* 1 1
ATI FirePro 3000 .*ATI.*FirePro V3.* 1 1
ATI FirePro 4000 .*ATI.*FirePro V4.* 2 1
@@ -255,8 +255,8 @@ ATI FirePro 7000 .*ATI.*FirePro V7.* 3 1
ATI FirePro M .*ATI.*FirePro M.* 3 1
ATI Technologies .*ATI *Technologies.* 0 1
// This entry is last to work around the "R300" driver problem.
-ATI R300 (9700) .*(ATI)?.*R300.* 1 1
-ATI Radeon .*ATI.*Radeon.* 0 1
+ATI R300 (9700) .*R300.* 1 1
+ATI Radeon .*ATI.*(Diamond|Radeon).* 0 1
Intel X3100 .*Intel.*X3100.* 0 1
Intel 830M .*Intel.*830M 0 0
Intel 845G .*Intel.*845G 0 0
@@ -273,13 +273,13 @@ Intel G33 .*Intel.*G33.* 0 0
Intel G41 .*Intel.*G41.* 0 1
Intel G45 .*Intel.*G45.* 0 1
Intel Bear Lake .*Intel.*Bear Lake.* 0 0
-Intel Broadwater .*Intel.*Broadwater.* 0 0
+Intel Broadwater .*Intel.*Broadwater.* 0 0
Intel Brookdale .*Intel.*Brookdale.* 0 0
Intel Cantiga .*Intel.*Cantiga.* 0 0
Intel Eaglelake .*Intel.*Eaglelake.* 0 1
Intel Graphics Media HD .*Intel.*Graphics Media.*HD.* 0 1
Intel HD Graphics .*Intel.*HD Graphics.* 2 1
-Intel Mobile 4 Series .*Intel.*Mobile *4 Series.* 0 1
+Intel Mobile 4 Series .*Intel.*Mobile.* 4 Series.* 0 1
Intel Media Graphics HD .*Intel.*Media Graphics HD.* 0 1
Intel Montara .*Intel.*Montara.* 0 0
Intel Pineview .*Intel.*Pineview.* 0 1
@@ -288,204 +288,219 @@ Intel HD Graphics 2000 .*Intel.*HD2000.* 1 1
Intel HD Graphics 3000 .*Intel.*HD3000.* 2 1
Matrox .*Matrox.* 0 0
Mesa .*Mesa.* 0 0
-NVIDIA 205 .*NVIDIA.*GeForce 205.* 2 1
-NVIDIA 210 .*NVIDIA.*GeForce 210.* 2 1
-NVIDIA 310M .*NVIDIA.*GeForce 310M.* 1 1
-NVIDIA 310 .*NVIDIA.*GeForce 310.* 3 1
-NVIDIA 315M .*NVIDIA.*GeForce 315M.* 2 1
-NVIDIA 315 .*NVIDIA.*GeForce 315.* 3 1
-NVIDIA 320M .*NVIDIA.*GeForce 320M.* 2 1
-NVIDIA G100M .*NVIDIA *(GeForce)? *(G)? ?100M.* 0 1
-NVIDIA G100 .*NVIDIA *(GeForce)? *(G)? ?100.* 0 1
-NVIDIA G102M .*NVIDIA *(GeForce)? *(G)? ?102M.* 0 1
-NVIDIA G103M .*NVIDIA *(GeForce)? *(G)? ?103M.* 0 1
-NVIDIA G105M .*NVIDIA *(GeForce)? *(G)? ?105M.* 0 1
-NVIDIA G 110M .*NVIDIA *(GeForce)? *(G)? ?110M.* 0 1
-NVIDIA G 120M .*NVIDIA *(GeForce)? *(G)? ?120M.* 1 1
-NVIDIA G 200 .*NVIDIA *(GeForce)? *(G)? ?200(M)?.* 0 1
-NVIDIA G 205M .*NVIDIA *(GeForce)? *(G)? ?205(M)?.* 0 1
-NVIDIA G 210 .*NVIDIA *(GeForce)? *(G)? ?210(M)?.* 1 1
-NVIDIA 305M .*NVIDIA *(GeForce)? *(G)? ?305(M)?.* 1 1
-NVIDIA G 310M .*NVIDIA *(GeForce)? *(G)? ?310(M)?.* 2 1
-NVIDIA G 315 .*NVIDIA *(GeForce)? *(G)? ?315(M)?.* 2 1
-NVIDIA G 320M .*NVIDIA *(GeForce)? *(G)? ?320(M)?.* 2 1
-NVIDIA G 405 .*NVIDIA *(GeForce)? *(G)? ?405(M)?.* 1 1
-NVIDIA G 410M .*NVIDIA *(GeForce)? *(G)? ?410(M)?.* 1 1
-NVIDIA GT 120M .*NVIDIA.*(GeForce)? *GT *120(M)?.* 2 1
-NVIDIA GT 120 .*NVIDIA.*GT.*120 2 1
-NVIDIA GT 130M .*NVIDIA.*(GeForce)? *GT *130(M)?.* 2 1
-NVIDIA GT 140M .*NVIDIA.*(GeForce)? *GT *140(M)?.* 2 1
-NVIDIA GT 150M .*NVIDIA.*(GeForce)? *GT(S)? *150(M)?.* 2 1
-NVIDIA GT 160M .*NVIDIA.*(GeForce)? *GT *160(M)?.* 2 1
-NVIDIA GT 220M .*NVIDIA.*(GeForce)? *GT *220(M)?.* 2 1
-NVIDIA GT 230M .*NVIDIA.*(GeForce)? *GT *230(M)?.* 2 1
-NVIDIA GT 240M .*NVIDIA.*(GeForce)? *GT *240(M)?.* 2 1
-NVIDIA GT 250M .*NVIDIA.*(GeForce)? *GT *250(M)?.* 2 1
-NVIDIA GT 260M .*NVIDIA.*(GeForce)? *GT *260(M)?.* 2 1
-NVIDIA GT 320M .*NVIDIA.*(GeForce)? *GT *320(M)?.* 2 1
-NVIDIA GT 325M .*NVIDIA.*(GeForce)? *GT *325(M)?.* 0 1
-NVIDIA GT 330M .*NVIDIA.*(GeForce)? *GT *330(M)?.* 3 1
-NVIDIA GT 335M .*NVIDIA.*(GeForce)? *GT *335(M)?.* 1 1
-NVIDIA GT 340M .*NVIDIA.*(GeForce)? *GT *340(M)?.* 2 1
-NVIDIA GT 415M .*NVIDIA.*(GeForce)? *GT *415(M)?.* 2 1
-NVIDIA GT 420M .*NVIDIA.*(GeForce)? *GT *420(M)?.* 2 1
-NVIDIA GT 425M .*NVIDIA.*(GeForce)? *GT *425(M)?.* 3 1
-NVIDIA GT 430M .*NVIDIA.*(GeForce)? *GT *430(M)?.* 3 1
-NVIDIA GT 435M .*NVIDIA.*(GeForce)? *GT *435(M)?.* 3 1
-NVIDIA GT 440M .*NVIDIA.*(GeForce)? *GT *440(M)?.* 3 1
-NVIDIA GT 445M .*NVIDIA.*(GeForce)? *GT *445(M)?.* 3 1
-NVIDIA GT 450M .*NVIDIA.*(GeForce)? *GT *450(M)?.* 3 1
-NVIDIA GT 520M .*NVIDIA.*(GeForce)? *GT *520(M)?.* 3 1
-NVIDIA GT 525M .*NVIDIA.*(GeForce)? *GT *525(M)?.* 3 1
-NVIDIA GT 540M .*NVIDIA.*(GeForce)? *GT *540(M)?.* 3 1
-NVIDIA GT 550M .*NVIDIA.*(GeForce)? *GT *550(M)?.* 3 1
-NVIDIA GT 555M .*NVIDIA.*(GeForce)? *GT *555(M)?.* 3 1
-NVIDIA GTS 160M .*NVIDIA.*(GeForce)? *GT(S)? *160(M)?.* 2 1
-NVIDIA GTS 240 .*NVIDIA.*(GeForce)? *GTS *24.* 3 1
-NVIDIA GTS 250 .*NVIDIA.*(GeForce)? *GTS *25.* 3 1
-NVIDIA GTS 350M .*NVIDIA.*(GeForce)? *GTS *350M.* 3 1
-NVIDIA GTS 360M .*NVIDIA.*(GeForce)? *GTS *360M.* 3 1
-NVIDIA GTS 360 .*NVIDIA.*(GeForce)? *GTS *360.* 3 1
-NVIDIA GTS 450 .*NVIDIA.*(GeForce)? *GTS *45.* 3 1
-NVIDIA GTX 260 .*NVIDIA.*(GeForce)? *GTX *26.* 3 1
-NVIDIA GTX 275 .*NVIDIA.*(GeForce)? *GTX *275.* 3 1
-NVIDIA GTX 270 .*NVIDIA.*(GeForce)? *GTX *27.* 3 1
-NVIDIA GTX 285 .*NVIDIA.*(GeForce)? *GTX *285.* 3 1
-NVIDIA GTX 280 .*NVIDIA.*(GeForce)? *GTX *280.* 3 1
-NVIDIA GTX 290 .*NVIDIA.*(GeForce)? *GTX *290.* 3 1
-NVIDIA GTX 295 .*NVIDIA.*(GeForce)? *GTX *295.* 3 1
-NVIDIA GTX 460M .*NVIDIA.*(GeForce)? *GTX *460M.* 3 1
-NVIDIA GTX 465 .*NVIDIA.*(GeForce)? *GTX *465.* 3 1
-NVIDIA GTX 460 .*NVIDIA.*(GeForce)? *GTX *46.* 3 1
-NVIDIA GTX 470M .*NVIDIA.*(GeForce)? *GTX *470M.* 3 1
-NVIDIA GTX 470 .*NVIDIA.*(GeForce)? *GTX *47.* 3 1
-NVIDIA GTX 480M .*NVIDIA.*(GeForce)? *GTX *480M.* 3 1
-NVIDIA GTX 485M .*NVIDIA.*(GeForce)? *GTX *485M.* 3 1
-NVIDIA GTX 480 .*NVIDIA.*(GeForce)? *GTX *48.* 3 1
-NVIDIA GTX 530 .*NVIDIA.*(GeForce)? *GTX *53.* 3 1
-NVIDIA GTX 550 .*NVIDIA.*(GeForce)? *GTX *55.* 3 1
-NVIDIA GTX 560 .*NVIDIA.*(GeForce)? *GTX *56.* 3 1
-NVIDIA GTX 570 .*NVIDIA.*(GeForce)? *GTX *57.* 3 1
-NVIDIA GTX 580M .*NVIDIA.*(GeForce)? *GTX *580M.* 3 1
-NVIDIA GTX 580 .*NVIDIA.*(GeForce)? *GTX *58.* 3 1
-NVIDIA GTX 590 .*NVIDIA.*(GeForce)? *GTX *59.* 3 1
-NVIDIA C51 .*NVIDIA.*(GeForce)? *C51.* 0 1
-NVIDIA G72 .*NVIDIA.*(GeForce)? *G72.* 1 1
-NVIDIA G73 .*NVIDIA.*(GeForce)? *G73.* 1 1
-NVIDIA G84 .*NVIDIA.*(GeForce)? *G84.* 2 1
-NVIDIA G86 .*NVIDIA.*(GeForce)? *G86.* 3 1
-NVIDIA G92 .*NVIDIA.*(GeForce)? *G92.* 3 1
+NVIDIA 205 .*NVIDIA .*GeForce 205.* 2 1
+NVIDIA 210 .*NVIDIA .*GeForce 210.* 2 1
+NVIDIA 310M .*NVIDIA .*GeForce 310M.* 1 1
+NVIDIA 310 .*NVIDIA .*GeForce 310.* 3 1
+NVIDIA 315M .*NVIDIA .*GeForce 315M.* 2 1
+NVIDIA 315 .*NVIDIA .*GeForce 315.* 3 1
+NVIDIA 320M .*NVIDIA .*GeForce 320M.* 2 1
+NVIDIA G100M .*NVIDIA .*100M.* 0 1
+NVIDIA G100 .*NVIDIA .*100.* 0 1
+NVIDIA G102M .*NVIDIA .*102M.* 0 1
+NVIDIA G103M .*NVIDIA .*103M.* 0 1
+NVIDIA G105M .*NVIDIA .*105M.* 0 1
+NVIDIA G 110M .*NVIDIA .*110M.* 0 1
+NVIDIA G 120M .*NVIDIA .*120M.* 1 1
+NVIDIA G 200 .*NVIDIA .*200(M)?.* 0 1
+NVIDIA G 205M .*NVIDIA .*205(M)?.* 0 1
+NVIDIA G 210 .*NVIDIA .*210(M)?.* 1 1
+NVIDIA 305M .*NVIDIA .*305(M)?.* 1 1
+NVIDIA G 310M .*NVIDIA .*310(M)?.* 2 1
+NVIDIA G 315 .*NVIDIA .*315(M)?.* 2 1
+NVIDIA G 320M .*NVIDIA .*320(M)?.* 2 1
+NVIDIA G 405 .*NVIDIA .*405(M)?.* 1 1
+NVIDIA G 410M .*NVIDIA .*410(M)?.* 1 1
+NVIDIA GT 120M .*NVIDIA .*GT *120(M)?.* 2 1
+NVIDIA GT 120 .*NVIDIA .*GT.*120 2 1
+NVIDIA GT 130M .*NVIDIA .*GT *130(M)?.* 2 1
+NVIDIA GT 140M .*NVIDIA .*GT *140(M)?.* 2 1
+NVIDIA GT 150M .*NVIDIA .*GT(S)? *150(M)?.* 2 1
+NVIDIA GT 160M .*NVIDIA .*GT *160(M)?.* 2 1
+NVIDIA GT 220M .*NVIDIA .*GT *220(M)?.* 2 1
+NVIDIA GT 230M .*NVIDIA .*GT *230(M)?.* 2 1
+NVIDIA GT 240M .*NVIDIA .*GT *240(M)?.* 2 1
+NVIDIA GT 250M .*NVIDIA .*GT *250(M)?.* 2 1
+NVIDIA GT 260M .*NVIDIA .*GT *260(M)?.* 2 1
+NVIDIA GT 320M .*NVIDIA .*GT *320(M)?.* 2 1
+NVIDIA GT 325M .*NVIDIA .*GT *325(M)?.* 0 1
+NVIDIA GT 330M .*NVIDIA .*GT *330(M)?.* 3 1
+NVIDIA GT 335M .*NVIDIA .*GT *335(M)?.* 1 1
+NVIDIA GT 340M .*NVIDIA .*GT *340(M)?.* 2 1
+NVIDIA GT 415M .*NVIDIA .*GT *415(M)?.* 2 1
+NVIDIA GT 420M .*NVIDIA .*GT *420(M)?.* 2 1
+NVIDIA GT 425M .*NVIDIA .*GT *425(M)?.* 3 1
+NVIDIA GT 430M .*NVIDIA .*GT *430(M)?.* 3 1
+NVIDIA GT 435M .*NVIDIA .*GT *435(M)?.* 3 1
+NVIDIA GT 440M .*NVIDIA .*GT *440(M)?.* 3 1
+NVIDIA GT 445M .*NVIDIA .*GT *445(M)?.* 3 1
+NVIDIA GT 450M .*NVIDIA .*GT *450(M)?.* 3 1
+NVIDIA GT 520M .*NVIDIA .*GT *52.(M)?.* 3 1
+NVIDIA GT 530M .*NVIDIA .*GT *530(M)?.* 3 1
+NVIDIA GT 540M .*NVIDIA .*GT *54.(M)?.* 3 1
+NVIDIA GT 550M .*NVIDIA .*GT *550(M)?.* 3 1
+NVIDIA GT 555M .*NVIDIA .*GT *555(M)?.* 3 1
+NVIDIA GTS 160M .*NVIDIA .*GT(S)? *160(M)?.* 2 1
+NVIDIA GTS 240 .*NVIDIA .*GTS *24.* 3 1
+NVIDIA GTS 250 .*NVIDIA .*GTS *25.* 3 1
+NVIDIA GTS 350M .*NVIDIA .*GTS *350M.* 3 1
+NVIDIA GTS 360M .*NVIDIA .*GTS *360M.* 3 1
+NVIDIA GTS 360 .*NVIDIA .*GTS *360.* 3 1
+NVIDIA GTS 450 .*NVIDIA .*GTS *45.* 3 1
+NVIDIA GTX 260 .*NVIDIA .*GTX *26.* 3 1
+NVIDIA GTX 275 .*NVIDIA .*GTX *275.* 3 1
+NVIDIA GTX 270 .*NVIDIA .*GTX *27.* 3 1
+NVIDIA GTX 285 .*NVIDIA .*GTX *285.* 3 1
+NVIDIA GTX 280 .*NVIDIA .*GTX *280.* 3 1
+NVIDIA GTX 290 .*NVIDIA .*GTX *290.* 3 1
+NVIDIA GTX 295 .*NVIDIA .*GTX *295.* 3 1
+NVIDIA GTX 460M .*NVIDIA .*GTX *460M.* 3 1
+NVIDIA GTX 465 .*NVIDIA .*GTX *465.* 3 1
+NVIDIA GTX 460 .*NVIDIA .*GTX *46.* 3 1
+NVIDIA GTX 470M .*NVIDIA .*GTX *470M.* 3 1
+NVIDIA GTX 470 .*NVIDIA .*GTX *47.* 3 1
+NVIDIA GTX 480M .*NVIDIA .*GTX *480M.* 3 1
+NVIDIA GTX 485M .*NVIDIA .*GTX *485M.* 3 1
+NVIDIA GTX 480 .*NVIDIA .*GTX *48.* 3 1
+NVIDIA GTX 530 .*NVIDIA .*GTX *53.* 3 1
+NVIDIA GTX 550 .*NVIDIA .*GTX *55.* 3 1
+NVIDIA GTX 560 .*NVIDIA .*GTX *56.* 3 1
+NVIDIA GTX 570 .*NVIDIA .*GTX *57.* 3 1
+NVIDIA GTX 580M .*NVIDIA .*GTX *580M.* 3 1
+NVIDIA GTX 580 .*NVIDIA .*GTX *58.* 3 1
+NVIDIA GTX 590 .*NVIDIA .*GTX *59.* 3 1
+NVIDIA C51 .*NVIDIA .*C51.* 0 1
+NVIDIA G72 .*NVIDIA .*G72.* 1 1
+NVIDIA G73 .*NVIDIA .*G73.* 1 1
+NVIDIA G84 .*NVIDIA .*G84.* 2 1
+NVIDIA G86 .*NVIDIA .*G86.* 3 1
+NVIDIA G92 .*NVIDIA .*G92.* 3 1
NVIDIA GeForce .*GeForce 256.* 0 0
NVIDIA GeForce 2 .*GeForce ?2 ?.* 0 1
NVIDIA GeForce 3 .*GeForce ?3 ?.* 0 1
NVIDIA GeForce 3 Ti .*GeForce ?3 Ti.* 0 1
-NVIDIA GeForce 4 .*NVIDIA.*GeForce ?4.* 0 1
-NVIDIA GeForce 4 Go .*NVIDIA.*GeForce ?4.*Go.* 0 1
-NVIDIA GeForce 4 MX .*NVIDIA.*GeForce ?4 MX.* 0 1
-NVIDIA GeForce 4 PCX .*NVIDIA.*GeForce ?4 PCX.* 0 1
-NVIDIA GeForce 4 Ti .*NVIDIA.*GeForce ?4 Ti.* 0 1
-NVIDIA GeForce 6100 .*NVIDIA.*GeForce 61.* 0 1
-NVIDIA GeForce 6200 .*NVIDIA.*GeForce 62.* 0 1
-NVIDIA GeForce 6500 .*NVIDIA.*GeForce 65.* 0 1
-NVIDIA GeForce 6600 .*NVIDIA.*GeForce 66.* 1 1
-NVIDIA GeForce 6700 .*NVIDIA.*GeForce 67.* 2 1
-NVIDIA GeForce 6800 .*NVIDIA.*GeForce 68.* 2 1
-NVIDIA GeForce 7000 .*NVIDIA.*GeForce 70.* 0 1
-NVIDIA GeForce 7100 .*NVIDIA.*GeForce 71.* 0 1
-NVIDIA GeForce 7200 .*NVIDIA.*GeForce 72.* 1 1
-NVIDIA GeForce 7300 .*NVIDIA.*GeForce 73.* 1 1
-NVIDIA GeForce 7500 .*NVIDIA.*GeForce 75.* 1 1
-NVIDIA GeForce 7600 .*NVIDIA.*GeForce 76.* 2 1
-NVIDIA GeForce 7800 .*NVIDIA.*GeForce 78.* 2 1
-NVIDIA GeForce 7900 .*NVIDIA.*GeForce 79.* 2 1
-NVIDIA GeForce 8100 .*NVIDIA.*GeForce 81.* 1 1
-NVIDIA GeForce 8200M .*NVIDIA.*GeForce 8200M.* 1 1
-NVIDIA GeForce 8200 .*NVIDIA.*GeForce 82.* 1 1
-NVIDIA GeForce 8300 .*NVIDIA.*GeForce 83.* 1 1
-NVIDIA GeForce 8400M .*NVIDIA.*GeForce 8400M.* 1 1
-NVIDIA GeForce 8400 .*NVIDIA.*GeForce 84.* 1 1
-NVIDIA GeForce 8500 .*NVIDIA.*GeForce 85.* 3 1
-NVIDIA GeForce 8600M .*NVIDIA.*GeForce 8600M.* 1 1
-NVIDIA GeForce 8600 .*NVIDIA.*GeForce 86.* 3 1
-NVIDIA GeForce 8700M .*NVIDIA.*GeForce 8700M.* 3 1
-NVIDIA GeForce 8700 .*NVIDIA.*GeForce 87.* 3 1
-NVIDIA GeForce 8800M .*NVIDIA.*GeForce 8800M.* 3 1
-NVIDIA GeForce 8800 .*NVIDIA.*GeForce 88.* 3 1
-NVIDIA GeForce 9100M .*NVIDIA.*GeForce 9100M.* 0 1
-NVIDIA GeForce 9100 .*NVIDIA.*GeForce 91.* 0 1
-NVIDIA GeForce 9200M .*NVIDIA.*GeForce 9200M.* 1 1
-NVIDIA GeForce 9200 .*NVIDIA.*GeForce 92.* 1 1
-NVIDIA GeForce 9300M .*NVIDIA.*GeForce 9300M.* 1 1
-NVIDIA GeForce 9300 .*NVIDIA.*GeForce 93.* 1 1
-NVIDIA GeForce 9400M .*NVIDIA.*GeForce 9400M.* 1 1
-NVIDIA GeForce 9400 .*NVIDIA.*GeForce 94.* 1 1
-NVIDIA GeForce 9500M .*NVIDIA.*GeForce 9500M.* 2 1
-NVIDIA GeForce 9500 .*NVIDIA.*GeForce 95.* 2 1
-NVIDIA GeForce 9600M .*NVIDIA.*GeForce 9600M.* 3 1
-NVIDIA GeForce 9600 .*NVIDIA.*GeForce 96.* 2 1
-NVIDIA GeForce 9700M .*NVIDIA.*GeForce 9700M.* 2 1
-NVIDIA GeForce 9800M .*NVIDIA.*GeForce 9800M.* 3 1
-NVIDIA GeForce 9800 .*NVIDIA.*GeForce 98.* 3 1
-NVIDIA GeForce FX 5100 .*NVIDIA.*GeForce FX 51.* 0 1
-NVIDIA GeForce FX 5200 .*NVIDIA.*GeForce FX 52.* 0 1
-NVIDIA GeForce FX 5300 .*NVIDIA.*GeForce FX 53.* 0 1
-NVIDIA GeForce FX 5500 .*NVIDIA.*GeForce FX 55.* 0 1
-NVIDIA GeForce FX 5600 .*NVIDIA.*GeForce FX 56.* 0 1
-NVIDIA GeForce FX 5700 .*NVIDIA.*GeForce FX 57.* 1 1
-NVIDIA GeForce FX 5800 .*NVIDIA.*GeForce FX 58.* 1 1
-NVIDIA GeForce FX 5900 .*NVIDIA.*GeForce FX 59.* 1 1
-NVIDIA GeForce FX Go5100 .*NVIDIA.*GeForce FX Go51.* 0 1
-NVIDIA GeForce FX Go5200 .*NVIDIA.*GeForce FX Go52.* 0 1
-NVIDIA GeForce FX Go5300 .*NVIDIA.*GeForce FX Go53.* 0 1
-NVIDIA GeForce FX Go5500 .*NVIDIA.*GeForce FX Go55.* 0 1
-NVIDIA GeForce FX Go5600 .*NVIDIA.*GeForce FX Go56.* 0 1
-NVIDIA GeForce FX Go5700 .*NVIDIA.*GeForce FX Go57.* 1 1
-NVIDIA GeForce FX Go5800 .*NVIDIA.*GeForce FX Go58.* 1 1
-NVIDIA GeForce FX Go5900 .*NVIDIA.*GeForce FX Go59.* 1 1
-NVIDIA GeForce FX Go5xxx .*NVIDIA.*GeForce FX Go.* 0 1
-NVIDIA GeForce Go 6100 .*NVIDIA.*GeForce Go 61.* 0 1
-NVIDIA GeForce Go 6200 .*NVIDIA.*GeForce Go 62.* 0 1
-NVIDIA GeForce Go 6400 .*NVIDIA.*GeForce Go 64.* 1 1
-NVIDIA GeForce Go 6500 .*NVIDIA.*GeForce Go 65.* 1 1
-NVIDIA GeForce Go 6600 .*NVIDIA.*GeForce Go 66.* 1 1
-NVIDIA GeForce Go 6700 .*NVIDIA.*GeForce Go 67.* 1 1
-NVIDIA GeForce Go 6800 .*NVIDIA.*GeForce Go 68.* 1 1
-NVIDIA GeForce Go 7200 .*NVIDIA.*GeForce Go 72.* 1 1
-NVIDIA GeForce Go 7300 LE .*NVIDIA.*GeForce Go 73.*LE.* 0 1
-NVIDIA GeForce Go 7300 .*NVIDIA.*GeForce Go 73.* 1 1
-NVIDIA GeForce Go 7400 .*NVIDIA.*GeForce Go 74.* 1 1
-NVIDIA GeForce Go 7600 .*NVIDIA.*GeForce Go 76.* 2 1
-NVIDIA GeForce Go 7700 .*NVIDIA.*GeForce Go 77.* 2 1
-NVIDIA GeForce Go 7800 .*NVIDIA.*GeForce Go 78.* 2 1
-NVIDIA GeForce Go 7900 .*NVIDIA.*GeForce Go 79.* 2 1
-NVIDIA D9M .*NVIDIA.*D9M.* 1 1
-NVIDIA G94 .*NVIDIA.*G94.* 3 1
+NVIDIA GeForce 4 .*NVIDIA .*GeForce ?4.* 0 1
+NVIDIA GeForce 4 Go .*NVIDIA .*GeForce ?4.*Go.* 0 1
+NVIDIA GeForce 4 MX .*NVIDIA .*GeForce ?4 MX.* 0 1
+NVIDIA GeForce 4 PCX .*NVIDIA .*GeForce ?4 PCX.* 0 1
+NVIDIA GeForce 4 Ti .*NVIDIA .*GeForce ?4 Ti.* 0 1
+NVIDIA GeForce 6100 .*NVIDIA .*GeForce 61.* 0 1
+NVIDIA GeForce 6200 .*NVIDIA .*GeForce 62.* 0 1
+NVIDIA GeForce 6500 .*NVIDIA .*GeForce 65.* 0 1
+NVIDIA GeForce 6600 .*NVIDIA .*GeForce 66.* 1 1
+NVIDIA GeForce 6700 .*NVIDIA .*GeForce 67.* 2 1
+NVIDIA GeForce 6800 .*NVIDIA .*GeForce 68.* 2 1
+NVIDIA GeForce 7000 .*NVIDIA .*GeForce 70.* 0 1
+NVIDIA GeForce 7100 .*NVIDIA .*GeForce 71.* 0 1
+NVIDIA GeForce 7200 .*NVIDIA .*GeForce 72.* 1 1
+NVIDIA GeForce 7300 .*NVIDIA .*GeForce 73.* 1 1
+NVIDIA GeForce 7500 .*NVIDIA .*GeForce 75.* 1 1
+NVIDIA GeForce 7600 .*NVIDIA .*GeForce 76.* 2 1
+NVIDIA GeForce 7800 .*NVIDIA .*GeForce 78.* 2 1
+NVIDIA GeForce 7900 .*NVIDIA .*GeForce 79.* 2 1
+NVIDIA GeForce 8100 .*NVIDIA .*GeForce 81.* 1 1
+NVIDIA GeForce 8200M .*NVIDIA .*GeForce 8200M.* 1 1
+NVIDIA GeForce 8200 .*NVIDIA .*GeForce 82.* 1 1
+NVIDIA GeForce 8300 .*NVIDIA .*GeForce 83.* 1 1
+NVIDIA GeForce 8400M .*NVIDIA .*GeForce 8400M.* 1 1
+NVIDIA GeForce 8400 .*NVIDIA .*GeForce 84.* 1 1
+NVIDIA GeForce 8500 .*NVIDIA .*GeForce 85.* 3 1
+NVIDIA GeForce 8600M .*NVIDIA .*GeForce 8600M.* 1 1
+NVIDIA GeForce 8600 .*NVIDIA .*GeForce 86.* 3 1
+NVIDIA GeForce 8700M .*NVIDIA .*GeForce 8700M.* 3 1
+NVIDIA GeForce 8700 .*NVIDIA .*GeForce 87.* 3 1
+NVIDIA GeForce 8800M .*NVIDIA .*GeForce 8800M.* 3 1
+NVIDIA GeForce 8800 .*NVIDIA .*GeForce 88.* 3 1
+NVIDIA GeForce 9100M .*NVIDIA .*GeForce 9100M.* 0 1
+NVIDIA GeForce 9100 .*NVIDIA .*GeForce 91.* 0 1
+NVIDIA GeForce 9200M .*NVIDIA .*GeForce 9200M.* 1 1
+NVIDIA GeForce 9200 .*NVIDIA .*GeForce 92.* 1 1
+NVIDIA GeForce 9300M .*NVIDIA .*GeForce 9300M.* 1 1
+NVIDIA GeForce 9300 .*NVIDIA .*GeForce 93.* 1 1
+NVIDIA GeForce 9400M .*NVIDIA .*GeForce 9400M.* 1 1
+NVIDIA GeForce 9400 .*NVIDIA .*GeForce 94.* 1 1
+NVIDIA GeForce 9500M .*NVIDIA .*GeForce 9500M.* 2 1
+NVIDIA GeForce 9500 .*NVIDIA .*GeForce 95.* 2 1
+NVIDIA GeForce 9600M .*NVIDIA .*GeForce 9600M.* 3 1
+NVIDIA GeForce 9600 .*NVIDIA .*GeForce 96.* 2 1
+NVIDIA GeForce 9700M .*NVIDIA .*GeForce 9700M.* 2 1
+NVIDIA GeForce 9800M .*NVIDIA .*GeForce 9800M.* 3 1
+NVIDIA GeForce 9800 .*NVIDIA .*GeForce 98.* 3 1
+NVIDIA GeForce FX 5100 .*NVIDIA .*GeForce FX 51.* 0 1
+NVIDIA GeForce FX 5200 .*NVIDIA .*GeForce FX 52.* 0 1
+NVIDIA GeForce FX 5300 .*NVIDIA .*GeForce FX 53.* 0 1
+NVIDIA GeForce FX 5500 .*NVIDIA .*GeForce FX 55.* 0 1
+NVIDIA GeForce FX 5600 .*NVIDIA .*GeForce FX 56.* 0 1
+NVIDIA GeForce FX 5700 .*NVIDIA .*GeForce FX 57.* 1 1
+NVIDIA GeForce FX 5800 .*NVIDIA .*GeForce FX 58.* 1 1
+NVIDIA GeForce FX 5900 .*NVIDIA .*GeForce FX 59.* 1 1
+NVIDIA GeForce FX Go5100 .*NVIDIA .*GeForce FX Go51.* 0 1
+NVIDIA GeForce FX Go5200 .*NVIDIA .*GeForce FX Go52.* 0 1
+NVIDIA GeForce FX Go5300 .*NVIDIA .*GeForce FX Go53.* 0 1
+NVIDIA GeForce FX Go5500 .*NVIDIA .*GeForce FX Go55.* 0 1
+NVIDIA GeForce FX Go5600 .*NVIDIA .*GeForce FX Go56.* 0 1
+NVIDIA GeForce FX Go5700 .*NVIDIA .*GeForce FX Go57.* 1 1
+NVIDIA GeForce FX Go5800 .*NVIDIA .*GeForce FX Go58.* 1 1
+NVIDIA GeForce FX Go5900 .*NVIDIA .*GeForce FX Go59.* 1 1
+NVIDIA GeForce FX Go5xxx .*NVIDIA .*GeForce FX Go.* 0 1
+NVIDIA GeForce Go 6100 .*NVIDIA .*GeForce Go 61.* 0 1
+NVIDIA GeForce Go 6200 .*NVIDIA .*GeForce Go 62.* 0 1
+NVIDIA GeForce Go 6400 .*NVIDIA .*GeForce Go 64.* 1 1
+NVIDIA GeForce Go 6500 .*NVIDIA .*GeForce Go 65.* 1 1
+NVIDIA GeForce Go 6600 .*NVIDIA .*GeForce Go 66.* 1 1
+NVIDIA GeForce Go 6700 .*NVIDIA .*GeForce Go 67.* 1 1
+NVIDIA GeForce Go 6800 .*NVIDIA .*GeForce Go 68.* 1 1
+NVIDIA GeForce Go 7200 .*NVIDIA .*GeForce Go 72.* 1 1
+NVIDIA GeForce Go 7300 LE .*NVIDIA .*GeForce Go 73.*LE.* 0 1
+NVIDIA GeForce Go 7300 .*NVIDIA .*GeForce Go 73.* 1 1
+NVIDIA GeForce Go 7400 .*NVIDIA .*GeForce Go 74.* 1 1
+NVIDIA GeForce Go 7600 .*NVIDIA .*GeForce Go 76.* 2 1
+NVIDIA GeForce Go 7700 .*NVIDIA .*GeForce Go 77.* 2 1
+NVIDIA GeForce Go 7800 .*NVIDIA .*GeForce Go 78.* 2 1
+NVIDIA GeForce Go 7900 .*NVIDIA .*GeForce Go 79.* 2 1
+NVIDIA D9M .*NVIDIA .*D9M.* 1 1
+NVIDIA G94 .*NVIDIA .*G94.* 3 1
NVIDIA GeForce Go 6 .*GeForce Go 6.* 1 1
-NVIDIA ION 2 .*NVIDIA ION 2.* 2 1
-NVIDIA ION .*NVIDIA ION.* 2 1
-NVIDIA NB9M .*GeForce NB9M.* 1 1
-NVIDIA NB9P .*GeForce NB9P.* 1 1
+NVIDIA ION 2 .*NVIDIA .*ION 2.* 2 1
+NVIDIA ION .*NVIDIA .*ION.* 2 1
+NVIDIA NB8M .*NVIDIA .*NB8M.* 1 1
+NVIDIA NB8P .*NVIDIA .*NB8P.* 2 1
+NVIDIA NB9E .*NVIDIA .*NB9E.* 3 1
+NVIDIA NB9M .*NVIDIA .*NB9M.* 1 1
+NVIDIA NB9P .*NVIDIA .*NB9P.* 2 1
+NVIDIA N10 .*NVIDIA .*N10.* 1 1
NVIDIA GeForce PCX .*GeForce PCX.* 0 1
-NVIDIA Generic .*NVIDIA.*Unknown.* 0 0
-NVIDIA NV17 .*GeForce NV17.* 0 1
-NVIDIA NV34 .*NVIDIA.*NV34.* 0 1
-NVIDIA NV35 .*NVIDIA.*NV35.* 0 1
-NVIDIA NV36 .*GeForce NV36.* 1 1
-NVIDIA NV43 .*NVIDIA *NV43.* 1 1
-NVIDIA NV44 .*NVIDIA *NV44.* 1 1
-NVIDIA nForce .*NVIDIA *nForce.* 0 0
-NVIDIA MCP78 .*NVIDIA *MCP78.* 1 1
+NVIDIA Generic .*NVIDIA .*Unknown.* 0 0
+NVIDIA NV17 .*NVIDIA .*NV17.* 0 1
+NVIDIA NV34 .*NVIDIA .*NV34.* 0 1
+NVIDIA NV35 .*NVIDIA .*NV35.* 0 1
+NVIDIA NV36 .*NVIDIA .*NV36.* 1 1
+NVIDIA NV41 .*NVIDIA .*NV41.* 1 1
+NVIDIA NV43 .*NVIDIA .*NV43.* 1 1
+NVIDIA NV44 .*NVIDIA .*NV44.* 1 1
+NVIDIA nForce .*NVIDIA .*nForce.* 0 0
+NVIDIA MCP51 .*NVIDIA .*MCP51.* 1 1
+NVIDIA MCP61 .*NVIDIA .*MCP61.* 1 1
+NVIDIA MCP67 .*NVIDIA .*MCP67.* 1 1
+NVIDIA MCP68 .*NVIDIA .*MCP68.* 1 1
+NVIDIA MCP73 .*NVIDIA .*MCP73.* 1 1
+NVIDIA MCP77 .*NVIDIA .*MCP77.* 1 1
+NVIDIA MCP78 .*NVIDIA .*MCP78.* 1 1
+NVIDIA MCP79 .*NVIDIA .*MCP79.* 1 1
+NVIDIA MCP7A .*NVIDIA .*MCP7A.* 1 1
NVIDIA Quadro2 .*Quadro2.* 0 1
NVIDIA Quadro 1000M .*Quadro.*1000M.* 2 1
-NVIDIA Quadro 2000 M/D .*Quadro.*2000(M|D)?.* 3 1
+NVIDIA Quadro 2000 M/D .*Quadro.*2000.* 3 1
+NVIDIA Quadro 3000M .*Quadro.*3000M.* 3 1
NVIDIA Quadro 4000M .*Quadro.*4000M.* 3 1
NVIDIA Quadro 4000 .*Quadro *4000.* 3 1
-NVIDIA Quadro 50x0 M .*Quadro.*50.0(M)?.* 3 1
+NVIDIA Quadro 50x0 M .*Quadro.*50.0.* 3 1
NVIDIA Quadro 6000 .*Quadro.*6000.* 3 1
NVIDIA Quadro 400 .*Quadro.*400.* 2 1
NVIDIA Quadro 600 .*Quadro.*600.* 2 1
NVIDIA Quadro4 .*Quadro4.* 0 1
NVIDIA Quadro DCC .*Quadro DCC.* 0 1
+NVIDIA Quadro CX .*Quadro.*CX.* 3 1
NVIDIA Quadro FX 770M .*Quadro.*FX *770M.* 2 1
NVIDIA Quadro FX 1500M .*Quadro.*FX *1500M.* 1 1
NVIDIA Quadro FX 1600M .*Quadro.*FX *1600M.* 2 1
@@ -498,16 +513,16 @@ NVIDIA Quadro FX 3700 .*Quadro.*FX *3700.* 3 1
NVIDIA Quadro FX 3800 .*Quadro.*FX *3800.* 3 1
NVIDIA Quadro FX 4500 .*Quadro.*FX *45.* 3 1
NVIDIA Quadro FX 880M .*Quadro.*FX *880M.* 3 1
-NVIDIA Quadro FX 4800 .*NVIDIA.*Quadro *FX *4800.* 3 1
+NVIDIA Quadro FX 4800 .*NVIDIA .*Quadro *FX *4800.* 3 1
NVIDIA Quadro FX .*Quadro FX.* 1 1
NVIDIA Quadro NVS 1xxM .*Quadro NVS *1.[05]M.* 0 1
-NVIDIA Quadro NVS 300M .*NVIDIA.*NVS *300M.* 2 1
-NVIDIA Quadro NVS 320M .*NVIDIA.*NVS *320M.* 2 1
-NVIDIA Quadro NVS 2100M .*NVIDIA.*NVS *2100M.* 2 1
-NVIDIA Quadro NVS 3100M .*NVIDIA.*NVS *3100M.* 2 1
-NVIDIA Quadro NVS 4200M .*NVIDIA.*NVS *4200M.* 2 1
-NVIDIA Quadro NVS 5100M .*NVIDIA.*NVS *5100M.* 2 1
-NVIDIA Quadro NVS .*NVIDIA.*NVS 0 1
+NVIDIA Quadro NVS 300M .*NVIDIA .*NVS *300M.* 2 1
+NVIDIA Quadro NVS 320M .*NVIDIA .*NVS *320M.* 2 1
+NVIDIA Quadro NVS 2100M .*NVIDIA .*NVS *2100M.* 2 1
+NVIDIA Quadro NVS 3100M .*NVIDIA .*NVS *3100M.* 2 1
+NVIDIA Quadro NVS 4200M .*NVIDIA .*NVS *4200M.* 2 1
+NVIDIA Quadro NVS 5100M .*NVIDIA .*NVS *5100M.* 2 1
+NVIDIA Quadro NVS .*NVIDIA .*NVS 0 1
NVIDIA RIVA TNT .*RIVA TNT.* 0 0
S3 .*S3 Graphics.* 0 0
SiS SiS.* 0 0
@@ -517,3 +532,4 @@ XGI XGI.* 0 0
VIA VIA.* 0 0
Apple Generic Apple.*Generic.* 0 0
Apple Software Renderer Apple.*Software Renderer.* 0 0
+Humper Humper.* 0 1
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 12795a1ec6..a4640f5504 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -724,7 +724,7 @@ bool LLAppViewer::init()
//set the max heap size.
initMaxHeapSize() ;
- LLPrivateMemoryPoolManager::initClass((BOOL)gSavedSettings.getBOOL("MemoryPrivatePoolEnabled")) ;
+ LLPrivateMemoryPoolManager::initClass((BOOL)gSavedSettings.getBOOL("MemoryPrivatePoolEnabled"), (U32)gSavedSettings.getU32("MemoryPrivatePoolSize")) ;
// write Google Breakpad minidump files to our log directory
std::string logdir = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, "");
@@ -1124,63 +1124,25 @@ void LLAppViewer::checkMemory()
{
const static F32 MEMORY_CHECK_INTERVAL = 1.0f ; //second
//const static F32 MAX_QUIT_WAIT_TIME = 30.0f ; //seconds
- const static U32 MAX_SIZE_CHECKED_MEMORY_BLOCK = 64 * 1024 * 1024 ; //64 MB
- //static F32 force_quit_timer = MAX_QUIT_WAIT_TIME + MEMORY_CHECK_INTERVAL ;
- static void* last_reserved_address = NULL ;
+ //static F32 force_quit_timer = MAX_QUIT_WAIT_TIME + MEMORY_CHECK_INTERVAL ;
- if(MEMORY_CHECK_INTERVAL > mMemCheckTimer.getElapsedTimeF32())
+ if(!gGLManager.mDebugGPU)
{
return ;
}
- mMemCheckTimer.reset() ;
-
- if(gGLManager.mDebugGPU)
- {
- //update the availability of memory
- LLMemory::updateMemoryInfo() ;
- }
- //check the virtual address space fragmentation
- if(!last_reserved_address)
- {
- last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
- }
- else
+ if(MEMORY_CHECK_INTERVAL > mMemCheckTimer.getElapsedTimeF32())
{
- last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
- if(!last_reserved_address) //failed, try once more
- {
- last_reserved_address = LLMemory::tryToAlloc(last_reserved_address, MAX_SIZE_CHECKED_MEMORY_BLOCK) ;
- }
+ return ;
}
+ mMemCheckTimer.reset() ;
- S32 is_low = !last_reserved_address || LLMemory::isMemoryPoolLow() ;
-
- //if(is_low < 0) //to force quit
- //{
- // if(force_quit_timer > MAX_QUIT_WAIT_TIME) //just hit the limit for the first time
- // {
- // //send out the notification to tell the viewer is about to quit in 30 seconds.
- // LLNotification::Params params("ForceQuitDueToLowMemory");
- // LLNotifications::instance().add(params);
+ //update the availability of memory
+ LLMemory::updateMemoryInfo() ;
- // force_quit_timer = MAX_QUIT_WAIT_TIME - MEMORY_CHECK_INTERVAL ;
- // }
- // else
- // {
- // force_quit_timer -= MEMORY_CHECK_INTERVAL ;
- // if(force_quit_timer < 0.f)
- // {
- // forceQuit() ; //quit
- // }
- // }
- //}
- //else
- //{
- // force_quit_timer = MAX_QUIT_WAIT_TIME + MEMORY_CHECK_INTERVAL ;
- //}
+ bool is_low = LLMemory::isMemoryPoolLow() ;
- LLPipeline::throttleNewMemoryAllocation(!is_low ? FALSE : TRUE) ;
+ LLPipeline::throttleNewMemoryAllocation(is_low) ;
if(is_low)
{
@@ -2326,7 +2288,7 @@ bool LLAppViewer::initConfiguration()
if (gSavedSettings.getBOOL("FirstRunThisInstall"))
{
- gSavedSettings.setString("SessionSettingsFile", "settings.xml");
+ // Note that the "FirstRunThisInstall" settings is currently unused.
gSavedSettings.setBOOL("FirstRunThisInstall", FALSE);
}
diff --git a/indra/newview/llfloaterabout.cpp b/indra/newview/llfloaterabout.cpp
index 849826bb6b..22f500ba15 100644
--- a/indra/newview/llfloaterabout.cpp
+++ b/indra/newview/llfloaterabout.cpp
@@ -70,6 +70,22 @@ extern U32 gPacketsIn;
static std::string get_viewer_release_notes_url();
+///----------------------------------------------------------------------------
+/// Class LLServerReleaseNotesURLFetcher
+///----------------------------------------------------------------------------
+class LLServerReleaseNotesURLFetcher : public LLHTTPClient::Responder
+{
+ LOG_CLASS(LLServerReleaseNotesURLFetcher);
+public:
+
+ static void startFetch();
+ /*virtual*/ void completedHeader(U32 status, const std::string& reason, const LLSD& content);
+ /*virtual*/ void completedRaw(
+ U32 status,
+ const std::string& reason,
+ const LLChannelDescriptors& channels,
+ const LLIOPipe::buffer_ptr_t& buffer);
+};
///----------------------------------------------------------------------------
/// Class LLFloaterAbout
@@ -89,6 +105,11 @@ public:
/// separated so that we can programmatically access the same info.
static LLSD getInfo();
void onClickCopyToClipboard();
+
+ void updateServerReleaseNotesURL(const std::string& url);
+
+private:
+ void setSupportText(const std::string& server_release_notes_url);
};
@@ -122,76 +143,17 @@ BOOL LLFloaterAbout::postBuild()
getChild<LLUICtrl>("copy_btn")->setCommitCallback(
boost::bind(&LLFloaterAbout::onClickCopyToClipboard, this));
-#if LL_WINDOWS
- getWindow()->incBusyCount();
- getWindow()->setCursor(UI_CURSOR_ARROW);
-#endif
- LLSD info(getInfo());
-#if LL_WINDOWS
- getWindow()->decBusyCount();
- getWindow()->setCursor(UI_CURSOR_ARROW);
-#endif
-
- std::ostringstream support;
-
- // Render the LLSD from getInfo() as a format_map_t
- LLStringUtil::format_map_t args;
-
- // allow the "Release Notes" URL label to be localized
- args["ReleaseNotes"] = LLTrans::getString("ReleaseNotes");
-
- for (LLSD::map_const_iterator ii(info.beginMap()), iend(info.endMap());
- ii != iend; ++ii)
- {
- if (! ii->second.isArray())
- {
- // Scalar value
- if (ii->second.isUndefined())
- {
- args[ii->first] = getString("none");
- }
- else
- {
- // don't forget to render value asString()
- args[ii->first] = ii->second.asString();
- }
- }
- else
- {
- // array value: build KEY_0, KEY_1 etc. entries
- for (LLSD::Integer n(0), size(ii->second.size()); n < size; ++n)
- {
- args[STRINGIZE(ii->first << '_' << n)] = ii->second[n].asString();
- }
- }
- }
-
- // Now build the various pieces
- support << getString("AboutHeader", args);
- if (info.has("REGION"))
- {
- support << "\n\n" << getString("AboutPosition", args);
- }
- support << "\n\n" << getString("AboutSystem", args);
- support << "\n";
- if (info.has("GRAPHICS_DRIVER_VERSION"))
- {
- support << "\n" << getString("AboutDriver", args);
- }
- support << "\n" << getString("AboutLibs", args);
- if (info.has("COMPILER"))
+ if (gAgent.getRegion())
{
- support << "\n" << getString("AboutCompiler", args);
+ // start fetching server release notes URL
+ setSupportText(LLTrans::getString("RetrievingData"));
+ LLServerReleaseNotesURLFetcher::startFetch();
}
- if (info.has("PACKETS_IN"))
+ else // not logged in
{
- support << '\n' << getString("AboutTraffic", args);
+ setSupportText(LLStringUtil::null);
}
- support_widget->appendText(support.str(),
- FALSE,
- LLStyle::Params()
- .color(LLUIColorTable::instance().getColor("TextFgReadOnlyColor")));
support_widget->blockUndo();
// Fix views
@@ -294,7 +256,6 @@ LLSD LLFloaterAbout::getInfo()
info["HOSTNAME"] = gAgent.getRegion()->getHost().getHostName();
info["HOSTIP"] = gAgent.getRegion()->getHost().getString();
info["SERVER_VERSION"] = gLastVersionChannel;
- info["SERVER_RELEASE_NOTES_URL"] = LLWeb::escapeURL(region->getCapability("ServerReleaseNotes"));
}
// CPU
@@ -389,6 +350,95 @@ void LLFloaterAbout::onClickCopyToClipboard()
support_widget->deselect();
}
+void LLFloaterAbout::updateServerReleaseNotesURL(const std::string& url)
+{
+ setSupportText(url);
+}
+
+void LLFloaterAbout::setSupportText(const std::string& server_release_notes_url)
+{
+#if LL_WINDOWS
+ getWindow()->incBusyCount();
+ getWindow()->setCursor(UI_CURSOR_ARROW);
+#endif
+ LLSD info(getInfo());
+#if LL_WINDOWS
+ getWindow()->decBusyCount();
+ getWindow()->setCursor(UI_CURSOR_ARROW);
+#endif
+
+ if (LLStringUtil::startsWith(server_release_notes_url, "http")) // it's an URL
+ {
+ info["SERVER_RELEASE_NOTES_URL"] = "[" + LLWeb::escapeURL(server_release_notes_url) + " " + LLTrans::getString("ReleaseNotes") + "]";
+ }
+ else
+ {
+ info["SERVER_RELEASE_NOTES_URL"] = server_release_notes_url;
+ }
+
+ LLViewerTextEditor *support_widget =
+ getChild<LLViewerTextEditor>("support_editor", true);
+
+ std::ostringstream support;
+
+ // Render the LLSD from getInfo() as a format_map_t
+ LLStringUtil::format_map_t args;
+
+ for (LLSD::map_const_iterator ii(info.beginMap()), iend(info.endMap());
+ ii != iend; ++ii)
+ {
+ if (! ii->second.isArray())
+ {
+ // Scalar value
+ if (ii->second.isUndefined())
+ {
+ args[ii->first] = getString("none");
+ }
+ else
+ {
+ // don't forget to render value asString()
+ args[ii->first] = ii->second.asString();
+ }
+ }
+ else
+ {
+ // array value: build KEY_0, KEY_1 etc. entries
+ for (LLSD::Integer n(0), size(ii->second.size()); n < size; ++n)
+ {
+ args[STRINGIZE(ii->first << '_' << n)] = ii->second[n].asString();
+ }
+ }
+ }
+
+ // Now build the various pieces
+ support << getString("AboutHeader", args);
+ if (info.has("REGION"))
+ {
+ support << "\n\n" << getString("AboutPosition", args);
+ }
+ support << "\n\n" << getString("AboutSystem", args);
+ support << "\n";
+ if (info.has("GRAPHICS_DRIVER_VERSION"))
+ {
+ support << "\n" << getString("AboutDriver", args);
+ }
+ support << "\n" << getString("AboutLibs", args);
+ if (info.has("COMPILER"))
+ {
+ support << "\n" << getString("AboutCompiler", args);
+ }
+ if (info.has("PACKETS_IN"))
+ {
+ support << '\n' << getString("AboutTraffic", args);
+ }
+
+ support_widget->clear();
+ support_widget->appendText(support.str(),
+ FALSE,
+ LLStyle::Params()
+ .color(LLUIColorTable::instance().getColor("TextFgReadOnlyColor")));
+}
+
///----------------------------------------------------------------------------
/// LLFloaterAboutUtil
///----------------------------------------------------------------------------
@@ -398,3 +448,52 @@ void LLFloaterAboutUtil::registerFloater()
&LLFloaterReg::build<LLFloaterAbout>);
}
+
+///----------------------------------------------------------------------------
+/// Class LLServerReleaseNotesURLFetcher implementation
+///----------------------------------------------------------------------------
+// static
+void LLServerReleaseNotesURLFetcher::startFetch()
+{
+ LLViewerRegion* region = gAgent.getRegion();
+ if (!region) return;
+
+ // We cannot display the URL returned by the ServerReleaseNotes capability
+ // because opening it in an external browser will trigger a warning about untrusted
+ // SSL certificate.
+ // So we query the URL ourselves, expecting to find
+ // an URL suitable for external browsers in the "Location:" HTTP header.
+ std::string cap_url = region->getCapability("ServerReleaseNotes");
+ LLHTTPClient::get(cap_url, new LLServerReleaseNotesURLFetcher);
+}
+
+// virtual
+void LLServerReleaseNotesURLFetcher::completedHeader(U32 status, const std::string& reason, const LLSD& content)
+{
+ lldebugs << "Status: " << status << llendl;
+ lldebugs << "Reason: " << reason << llendl;
+ lldebugs << "Headers: " << content << llendl;
+
+ LLFloaterAbout* floater_about = LLFloaterReg::getTypedInstance<LLFloaterAbout>("sl_about");
+ if (floater_about)
+ {
+ std::string location = content["location"].asString();
+ if (location.empty())
+ {
+ location = floater_about->getString("ErrorFetchingServerReleaseNotesURL");
+ }
+ floater_about->updateServerReleaseNotesURL(location);
+ }
+}
+
+// virtual
+void LLServerReleaseNotesURLFetcher::completedRaw(
+ U32 status,
+ const std::string& reason,
+ const LLChannelDescriptors& channels,
+ const LLIOPipe::buffer_ptr_t& buffer)
+{
+ // Do nothing.
+ // We're overriding just because the base implementation tries to
+ // deserialize LLSD which triggers warnings.
+}
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index d65928e385..9630d7b29f 100755
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -304,7 +304,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
mOriginalIMViaEmail(false),
mLanguageChanged(false),
mAvatarDataInitialized(false),
- mDoubleClickActionDirty(false)
+ mClickActionDirty(false)
{
//Build Floater is now Called from LLFloaterReg::add("preferences", "floater_preferences.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterPreference>);
@@ -348,8 +348,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
sSkin = gSavedSettings.getString("SkinCurrent");
- mCommitCallbackRegistrar.add("Pref.CommitDoubleClickChekbox", boost::bind(&LLFloaterPreference::onDoubleClickCheckBox, this, _1));
- mCommitCallbackRegistrar.add("Pref.CommitRadioDoubleClick", boost::bind(&LLFloaterPreference::onDoubleClickRadio, this));
+ mCommitCallbackRegistrar.add("Pref.ClickActionChange", boost::bind(&LLFloaterPreference::onClickActionChange, this));
gSavedSettings.getControl("NameTagShowUsernames")->getCommitSignal()->connect(boost::bind(&handleNameTagOptionChanged, _2));
gSavedSettings.getControl("NameTagShowFriends")->getCommitSignal()->connect(boost::bind(&handleNameTagOptionChanged, _2));
@@ -439,8 +438,6 @@ BOOL LLFloaterPreference::postBuild()
if (!tabcontainer->selectTab(gSavedSettings.getS32("LastPrefTab")))
tabcontainer->selectFirstTab();
- updateDoubleClickControls();
-
getChild<LLUICtrl>("cache_location")->setEnabled(FALSE); // make it read-only but selectable (STORM-227)
std::string cache_location = gDirUtilp->getExpandedFilename(LL_PATH_CACHE, "");
setCacheLocation(cache_location);
@@ -581,10 +578,10 @@ void LLFloaterPreference::apply()
saveAvatarProperties();
- if (mDoubleClickActionDirty)
+ if (mClickActionDirty)
{
- updateDoubleClickSettings();
- mDoubleClickActionDirty = false;
+ updateClickActionSettings();
+ mClickActionDirty = false;
}
}
@@ -613,11 +610,12 @@ void LLFloaterPreference::cancel()
// reverts any changes to current skin
gSavedSettings.setString("SkinCurrent", sSkin);
- if (mDoubleClickActionDirty)
+ if (mClickActionDirty)
{
- updateDoubleClickControls();
- mDoubleClickActionDirty = false;
+ updateClickActionControls();
+ mClickActionDirty = false;
}
+
LLFloaterPreferenceProxy * advanced_proxy_settings = LLFloaterReg::findTypedInstance<LLFloaterPreferenceProxy>("prefs_proxy");
if (advanced_proxy_settings)
{
@@ -681,6 +679,9 @@ void LLFloaterPreference::onOpen(const LLSD& key)
// Display selected maturity icons.
onChangeMaturity();
+
+ // Load (double-)click to walk/teleport settings.
+ updateClickActionControls();
// Enabled/disabled popups, might have been changed by user actions
// while preferences floater was closed.
@@ -1503,72 +1504,34 @@ void LLFloaterPreference::onClickBlockList()
}
}
-void LLFloaterPreference::onDoubleClickCheckBox(LLUICtrl* ctrl)
+void LLFloaterPreference::onClickProxySettings()
{
- if (!ctrl) return;
- mDoubleClickActionDirty = true;
- LLRadioGroup* radio_double_click_action = getChild<LLRadioGroup>("double_click_action");
- if (!radio_double_click_action) return;
- // select default value("teleport") in radio-group.
- radio_double_click_action->setSelectedIndex(0);
- // set radio-group enabled depending on state of checkbox
- radio_double_click_action->setEnabled(ctrl->getValue());
+ LLFloaterReg::showInstance("prefs_proxy");
}
-void LLFloaterPreference::onDoubleClickRadio()
+void LLFloaterPreference::onClickActionChange()
{
- mDoubleClickActionDirty = true;
+ mClickActionDirty = true;
}
-void LLFloaterPreference::updateDoubleClickSettings()
+void LLFloaterPreference::updateClickActionSettings()
{
- LLCheckBoxCtrl* double_click_action_cb = getChild<LLCheckBoxCtrl>("double_click_chkbox");
- if (!double_click_action_cb) return;
- bool enable = double_click_action_cb->getValue().asBoolean();
+ const int single_clk_action = getChild<LLComboBox>("single_click_action_combo")->getValue().asInteger();
+ const int double_clk_action = getChild<LLComboBox>("double_click_action_combo")->getValue().asInteger();
- LLRadioGroup* radio_double_click_action = getChild<LLRadioGroup>("double_click_action");
- if (!radio_double_click_action) return;
-
- // enable double click radio-group depending on state of checkbox
- radio_double_click_action->setEnabled(enable);
-
- if (!enable)
- {
- // set double click action settings values to false if checkbox was unchecked
- gSavedSettings.setBOOL("DoubleClickAutoPilot", false);
- gSavedSettings.setBOOL("DoubleClickTeleport", false);
- }
- else
- {
- std::string selected = radio_double_click_action->getValue().asString();
- bool teleport_selected = selected == "radio_teleport";
- // set double click action settings values depending on chosen radio-button
- gSavedSettings.setBOOL( "DoubleClickTeleport", teleport_selected );
- gSavedSettings.setBOOL( "DoubleClickAutoPilot", !teleport_selected );
- }
+ gSavedSettings.setBOOL("ClickToWalk", single_clk_action == 1);
+ gSavedSettings.setBOOL("DoubleClickAutoPilot", double_clk_action == 1);
+ gSavedSettings.setBOOL("DoubleClickTeleport", double_clk_action == 2);
}
-void LLFloaterPreference::onClickProxySettings()
+void LLFloaterPreference::updateClickActionControls()
{
- LLFloaterReg::showInstance("prefs_proxy");
-}
+ const bool click_to_walk = gSavedSettings.getBOOL("ClickToWalk");
+ const bool dbl_click_to_walk = gSavedSettings.getBOOL("DoubleClickAutoPilot");
+ const bool dbl_click_to_teleport = gSavedSettings.getBOOL("DoubleClickTeleport");
-void LLFloaterPreference::updateDoubleClickControls()
-{
- // check is one of double-click actions settings enabled
- bool double_click_action_enabled = gSavedSettings.getBOOL("DoubleClickAutoPilot") || gSavedSettings.getBOOL("DoubleClickTeleport");
- LLCheckBoxCtrl* double_click_action_cb = getChild<LLCheckBoxCtrl>("double_click_chkbox");
- if (double_click_action_cb)
- {
- // check checkbox if one of double-click actions settings enabled, uncheck otherwise
- double_click_action_cb->setValue(double_click_action_enabled);
- }
- LLRadioGroup* double_click_action_radio = getChild<LLRadioGroup>("double_click_action");
- if (!double_click_action_radio) return;
- // set radio-group enabled if one of double-click actions settings enabled
- double_click_action_radio->setEnabled(double_click_action_enabled);
- // select button in radio-group depending on setting
- double_click_action_radio->setSelectedIndex(gSavedSettings.getBOOL("DoubleClickAutoPilot"));
+ getChild<LLComboBox>("single_click_action_combo")->setValue((int)click_to_walk);
+ getChild<LLComboBox>("double_click_action_combo")->setValue(dbl_click_to_teleport ? 2 : (int)dbl_click_to_walk);
}
void LLFloaterPreference::applyUIColor(LLUICtrl* ctrl, const LLSD& param)
diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h
index ef9bc2dd53..5c74e9f60c 100644
--- a/indra/newview/llfloaterpreference.h
+++ b/indra/newview/llfloaterpreference.h
@@ -104,14 +104,13 @@ protected:
void setHardwareDefaults();
// callback for when client turns on shaders
void onVertexShaderEnable();
- // callback for changing double click action checkbox
- void onDoubleClickCheckBox(LLUICtrl* ctrl);
- // callback for selecting double click action radio-button
- void onDoubleClickRadio();
- // updates double-click action settings depending on controls from preferences
- void updateDoubleClickSettings();
- // updates double-click action controls depending on values from settings.xml
- void updateDoubleClickControls();
+
+ // callback for commit in the "Single click on land" and "Double click on land" comboboxes.
+ void onClickActionChange();
+ // updates click/double-click action settings depending on controls values
+ void updateClickActionSettings();
+ // updates click/double-click action controls depending on values from settings.xml
+ void updateClickActionControls();
// This function squirrels away the current values of the controls so that
// cancel() can restore them.
@@ -164,9 +163,7 @@ public:
static void refreshSkin(void* data);
private:
static std::string sSkin;
- // set true if state of double-click action checkbox or radio-group was changed by user
- // (reset back to false on apply or cancel)
- bool mDoubleClickActionDirty;
+ bool mClickActionDirty; ///< Set to true when the click/double-click options get changed by user.
bool mGotPersonalInfo;
bool mOriginalIMViaEmail;
bool mLanguageChanged;
diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp
index 8b72d83830..9ba5f827e2 100644
--- a/indra/newview/llfolderview.cpp
+++ b/indra/newview/llfolderview.cpp
@@ -1723,7 +1723,7 @@ BOOL LLFolderView::handleUnicodeCharHere(llwchar uni_char)
}
BOOL handled = FALSE;
- if (gFocusMgr.childHasKeyboardFocus(getRoot()))
+ if (mParentPanel->hasFocus())
{
// SL-51858: Key presses are not being passed to the Popup menu.
// A proper fix is non-trivial so instead just close the menu.
diff --git a/indra/newview/llpanelmarketplaceinboxinventory.cpp b/indra/newview/llpanelmarketplaceinboxinventory.cpp
index faba6dc0cf..2e4bf55d51 100644
--- a/indra/newview/llpanelmarketplaceinboxinventory.cpp
+++ b/indra/newview/llpanelmarketplaceinboxinventory.cpp
@@ -196,15 +196,12 @@ void LLInboxFolderViewFolder::computeFreshness()
if (last_expansion_utc > 0)
{
- const U32 time_offset_for_pdt = 7 * 60 * 60;
- const U32 last_expansion = last_expansion_utc - time_offset_for_pdt;
-
- mFresh = (mCreationDate > last_expansion);
+ mFresh = (mCreationDate > last_expansion_utc);
#if DEBUGGING_FRESHNESS
if (mFresh)
{
- llinfos << "Item is fresh! -- creation " << mCreationDate << ", saved_freshness_date " << last_expansion << llendl;
+ llinfos << "Item is fresh! -- creation " << mCreationDate << ", saved_freshness_date " << last_expansion_utc << llendl;
}
#endif
}
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp
index e9be45ffd0..a6e0d4530a 100644
--- a/indra/newview/lltexturefetch.cpp
+++ b/indra/newview/lltexturefetch.cpp
@@ -1810,7 +1810,7 @@ bool LLTextureFetchWorker::writeToCacheComplete()
// public
LLTextureFetch::LLTextureFetch(LLTextureCache* cache, LLImageDecodeThread* imagedecodethread, bool threaded, bool qa_mode)
- : LLWorkerThread("TextureFetch", threaded),
+ : LLWorkerThread("TextureFetch", threaded, true),
mDebugCount(0),
mDebugPause(FALSE),
mPacketCount(0),
diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp
index c38c8bad80..b0d9bd5d70 100644
--- a/indra/newview/lltoolpie.cpp
+++ b/indra/newview/lltoolpie.cpp
@@ -35,7 +35,6 @@
#include "llagent.h"
#include "llagentcamera.h"
#include "llavatarnamecache.h"
-#include "llviewercontrol.h"
#include "llfocusmgr.h"
#include "llfirstuse.h"
#include "llfloaterland.h"
@@ -57,6 +56,7 @@
#include "lltrans.h"
#include "llviewercamera.h"
#include "llviewerparcelmedia.h"
+#include "llviewercontrol.h"
#include "llviewermenu.h"
#include "llviewerobjectlist.h"
#include "llviewerobject.h"
@@ -76,7 +76,6 @@ static void handle_click_action_play();
static void handle_click_action_open_media(LLPointer<LLViewerObject> objectp);
static ECursorType cursor_from_parcel_media(U8 click_action);
-
LLToolPie::LLToolPie()
: LLTool(std::string("Pie")),
mMouseButtonDown( false ),
@@ -479,6 +478,18 @@ void LLToolPie::resetSelection()
mClickAction = 0;
}
+void LLToolPie::walkToClickedLocation()
+{
+ if(mAutoPilotDestination) { mAutoPilotDestination->markDead(); }
+ mAutoPilotDestination = (LLHUDEffectBlob *)LLHUDManager::getInstance()->createViewerEffect(LLHUDObject::LL_HUD_EFFECT_BLOB, FALSE);
+ mAutoPilotDestination->setPositionGlobal(mPick.mPosGlobal);
+ mAutoPilotDestination->setPixelSize(5);
+ mAutoPilotDestination->setColor(LLColor4U(170, 210, 190));
+ mAutoPilotDestination->setDuration(3.f);
+
+ handle_go_to();
+}
+
// When we get object properties after left-clicking on an object
// with left-click = buy, if it's the same object, do the buy.
@@ -662,18 +673,9 @@ BOOL LLToolPie::handleMouseUp(S32 x, S32 y, MASK mask)
mPick.mPosGlobal = gAgent.getPositionGlobal() + LLVector3d(LLViewerCamera::instance().getAtAxis()) * SELF_CLICK_WALK_DISTANCE;
}
gAgentCamera.setFocusOnAvatar(TRUE, TRUE);
- if(mAutoPilotDestination) { mAutoPilotDestination->markDead(); }
- mAutoPilotDestination = (LLHUDEffectBlob *)LLHUDManager::getInstance()->createViewerEffect(LLHUDObject::LL_HUD_EFFECT_BLOB, FALSE);
- mAutoPilotDestination->setPositionGlobal(mPick.mPosGlobal);
- mAutoPilotDestination->setPixelSize(5);
- mAutoPilotDestination->setColor(LLColor4U(170, 210, 190));
- mAutoPilotDestination->setDuration(3.f);
-
- handle_go_to();
+ walkToClickedLocation();
LLFirstUse::notMoving(false);
- mBlockClickToWalk = false;
-
return TRUE;
}
gViewerWindow->setCursor(UI_CURSOR_ARROW);
@@ -708,16 +710,10 @@ BOOL LLToolPie::handleDoubleClick(S32 x, S32 y, MASK mask)
if (gSavedSettings.getBOOL("DoubleClickAutoPilot"))
{
- if (mPick.mPickType == LLPickInfo::PICK_LAND
- && !mPick.mPosGlobal.isExactlyZero())
- {
- handle_go_to();
- return TRUE;
- }
- else if (mPick.mObjectID.notNull()
- && !mPick.mPosGlobal.isExactlyZero())
+ if ((mPick.mPickType == LLPickInfo::PICK_LAND && !mPick.mPosGlobal.isExactlyZero()) ||
+ (mPick.mObjectID.notNull() && !mPick.mPosGlobal.isExactlyZero()))
{
- handle_go_to();
+ walkToClickedLocation();
return TRUE;
}
}
diff --git a/indra/newview/lltoolpie.h b/indra/newview/lltoolpie.h
index d7c79ee223..68fe8bc4a5 100644
--- a/indra/newview/lltoolpie.h
+++ b/indra/newview/lltoolpie.h
@@ -66,6 +66,7 @@ public:
LLViewerObject* getClickActionObject() { return mClickActionObject; }
LLObjectSelection* getLeftClickSelection() { return (LLObjectSelection*)mLeftClickSelection; }
void resetSelection();
+ void walkToClickedLocation();
void blockClickToWalk() { mBlockClickToWalk = true; }
void stopClickToWalk();
diff --git a/indra/newview/llviewercontrollistener.cpp b/indra/newview/llviewercontrollistener.cpp
index 8bc25fa281..361b96221c 100644
--- a/indra/newview/llviewercontrollistener.cpp
+++ b/indra/newview/llviewercontrollistener.cpp
@@ -31,99 +31,196 @@
#include "llviewercontrollistener.h"
#include "llviewercontrol.h"
+#include "llcontrol.h"
+#include "llerror.h"
+#include "llsdutil.h"
+#include "stringize.h"
+#include <sstream>
-LLViewerControlListener gSavedSettingsListener;
+namespace {
+
+LLViewerControlListener sSavedSettingsListener;
+
+} // unnamed namespace
LLViewerControlListener::LLViewerControlListener()
: LLEventAPI("LLViewerControl",
- "LLViewerControl listener: set, toggle or set default for various controls",
- "group")
+ "LLViewerControl listener: set, toggle or set default for various controls")
{
- add("Global",
- "Set gSavedSettings control [\"key\"] to value [\"value\"]",
- boost::bind(&LLViewerControlListener::set, &gSavedSettings, _1));
- add("PerAccount",
- "Set gSavedPerAccountSettings control [\"key\"] to value [\"value\"]",
- boost::bind(&LLViewerControlListener::set, &gSavedPerAccountSettings, _1));
- add("Warning",
- "Set gWarningSettings control [\"key\"] to value [\"value\"]",
- boost::bind(&LLViewerControlListener::set, &gWarningSettings, _1));
- add("Crash",
- "Set gCrashSettings control [\"key\"] to value [\"value\"]",
- boost::bind(&LLViewerControlListener::set, &gCrashSettings, _1));
-
-#if 0
- add(/*"toggleControl",*/ "Global", boost::bind(&LLViewerControlListener::toggleControl, &gSavedSettings, _1));
- add(/*"toggleControl",*/ "PerAccount", boost::bind(&LLViewerControlListener::toggleControl, &gSavedPerAccountSettings, _1));
- add(/*"toggleControl",*/ "Warning", boost::bind(&LLViewerControlListener::toggleControl, &gWarningSettings, _1));
- add(/*"toggleControl",*/ "Crash", boost::bind(&LLViewerControlListener::toggleControl, &gCrashSettings, _1));
-
- add(/*"setDefault",*/ "Global", boost::bind(&LLViewerControlListener::setDefault, &gSavedSettings, _1));
- add(/*"setDefault",*/ "PerAccount", boost::bind(&LLViewerControlListener::setDefault, &gSavedPerAccountSettings, _1));
- add(/*"setDefault",*/ "Warning", boost::bind(&LLViewerControlListener::setDefault, &gWarningSettings, _1));
- add(/*"setDefault",*/ "Crash", boost::bind(&LLViewerControlListener::setDefault, &gCrashSettings, _1));
-#endif // 0
+ std::ostringstream groupnames;
+ groupnames << "[\"group\"] is one of ";
+ const char* delim = "";
+ for (LLControlGroup::key_iter cgki(LLControlGroup::beginKeys()),
+ cgkend(LLControlGroup::endKeys());
+ cgki != cgkend; ++cgki)
+ {
+ groupnames << delim << '"' << *cgki << '"';
+ delim = ", ";
+ }
+ groupnames << '\n';
+ std::string grouphelp(groupnames.str());
+ std::string replyhelp("If [\"reply\"] requested, send new [\"value\"] on specified LLEventPump\n");
+
+ add("set",
+ std::string("Set [\"group\"] control [\"key\"] to optional value [\"value\"]\n"
+ "If [\"value\"] omitted, set to control's defined default value\n") +
+ grouphelp + replyhelp,
+ &LLViewerControlListener::set,
+ LLSDMap("group", LLSD())("key", LLSD()));
+ add("toggle",
+ std::string("Toggle [\"group\"] control [\"key\"], if boolean\n") + grouphelp + replyhelp,
+ &LLViewerControlListener::toggle,
+ LLSDMap("group", LLSD())("key", LLSD()));
+ add("get",
+ std::string("Query [\"group\"] control [\"key\"], replying on LLEventPump [\"reply\"]\n") +
+ grouphelp,
+ &LLViewerControlListener::get,
+ LLSDMap("group", LLSD())("key", LLSD())("reply", LLSD()));
+ add("groups",
+ "Send on LLEventPump [\"reply\"] an array [\"groups\"] of valid group names",
+ &LLViewerControlListener::groups,
+ LLSDMap("reply", LLSD()));
+ add("vars",
+ std::string("For [\"group\"], send on LLEventPump [\"reply\"] an array [\"vars\"],\n"
+ "each of whose entries looks like:\n"
+ " [\"name\"], [\"type\"], [\"value\"], [\"comment\"]\n") + grouphelp,
+ &LLViewerControlListener::vars,
+ LLSDMap("group", LLSD())("reply", LLSD()));
}
-//static
-void LLViewerControlListener::set(LLControlGroup * controls, LLSD const & event_data)
+struct Info
{
- if(event_data.has("key"))
+ Info(const LLSD& request):
+ response(LLSD(), request),
+ groupname(request["group"]),
+ group(LLControlGroup::getInstance(groupname)),
+ key(request["key"]),
+ control(NULL)
{
- std::string key(event_data["key"]);
+ if (! group)
+ {
+ response.error(STRINGIZE("Unrecognized group '" << groupname << "'"));
+ return;
+ }
- if(controls->controlExists(key))
+ control = group->getControl(key);
+ if (! control)
{
- controls->setUntypedValue(key, event_data["value"]);
+ response.error(STRINGIZE("In group '" << groupname
+ << "', unrecognized control key '" << key << "'"));
}
- else
+ }
+
+ ~Info()
+ {
+ // If in fact the request passed to our constructor names a valid
+ // group and key, grab the final value of the indicated control and
+ // stuff it in our response. Since this outer destructor runs before
+ // the contained Response destructor, this data will go into the
+ // response we send.
+ if (control)
{
- llwarns << "requested unknown control: \"" << key << '\"' << llendl;
+ response["name"] = control->getName();
+ response["type"] = group->typeEnumToString(control->type());
+ response["value"] = control->get();
+ response["comment"] = control->getComment();
}
}
+
+ LLEventAPI::Response response;
+ std::string groupname;
+ LLControlGroup* group;
+ std::string key;
+ LLControlVariable* control;
+};
+
+//static
+void LLViewerControlListener::set(LLSD const & request)
+{
+ Info info(request);
+ if (! info.control)
+ return;
+
+ if (request.has("value"))
+ {
+ info.control->setValue(request["value"]);
+ }
+ else
+ {
+ info.control->resetToDefault();
+ }
}
//static
-void LLViewerControlListener::toggleControl(LLControlGroup * controls, LLSD const & event_data)
+void LLViewerControlListener::toggle(LLSD const & request)
{
- if(event_data.has("key"))
+ Info info(request);
+ if (! info.control)
+ return;
+
+ if (info.control->isType(TYPE_BOOLEAN))
+ {
+ info.control->set(! info.control->get().asBoolean());
+ }
+ else
{
- std::string key(event_data["key"]);
+ info.response.error(STRINGIZE("toggle of non-boolean '" << info.groupname
+ << "' control '" << info.key
+ << "', type is "
+ << info.group->typeEnumToString(info.control->type())));
+ }
+}
- if(controls->controlExists(key))
- {
- LLControlVariable * control = controls->getControl(key);
- if(control->isType(TYPE_BOOLEAN))
- {
- control->set(!control->get().asBoolean());
- }
- else
- {
- llwarns << "requested toggle of non-boolean control: \"" << key << "\", type is " << control->type() << llendl;
- }
- }
- else
- {
- llwarns << "requested unknown control: \"" << key << '\"' << llendl;
- }
+void LLViewerControlListener::get(LLSD const & request)
+{
+ // The Info constructor and destructor actually do all the work here.
+ Info info(request);
+}
+
+void LLViewerControlListener::groups(LLSD const & request)
+{
+ // No Info, we're not looking up either a group or a control name.
+ Response response(LLSD(), request);
+ for (LLControlGroup::key_iter cgki(LLControlGroup::beginKeys()),
+ cgkend(LLControlGroup::endKeys());
+ cgki != cgkend; ++cgki)
+ {
+ response["groups"].append(*cgki);
}
}
-//static
-void LLViewerControlListener::setDefault(LLControlGroup * controls, LLSD const & event_data)
+struct CollectVars: public LLControlGroup::ApplyFunctor
{
- if(event_data.has("key"))
+ CollectVars(LLControlGroup* g):
+ mGroup(g)
+ {}
+
+ virtual void apply(const std::string& name, LLControlVariable* control)
{
- std::string key(event_data["key"]);
+ vars.append(LLSDMap
+ ("name", name)
+ ("type", mGroup->typeEnumToString(control->type()))
+ ("value", control->get())
+ ("comment", control->getComment()));
+ }
- if(controls->controlExists(key))
- {
- LLControlVariable * control = controls->getControl(key);
- control->resetToDefault();
- }
- else
- {
- llwarns << "requested unknown control: \"" << key << '\"' << llendl;
- }
+ LLControlGroup* mGroup;
+ LLSD vars;
+};
+
+void LLViewerControlListener::vars(LLSD const & request)
+{
+ // This method doesn't use Info, because we're not looking up a specific
+ // control name.
+ Response response(LLSD(), request);
+ std::string groupname(request["group"]);
+ LLControlGroup* group(LLControlGroup::getInstance(groupname));
+ if (! group)
+ {
+ return response.error(STRINGIZE("Unrecognized group '" << groupname << "'"));
}
+
+ CollectVars collector(group);
+ group->applyToAll(&collector);
+ response["vars"] = collector.vars;
}
diff --git a/indra/newview/llviewercontrollistener.h b/indra/newview/llviewercontrollistener.h
index fd211b97af..2e72046924 100644
--- a/indra/newview/llviewercontrollistener.h
+++ b/indra/newview/llviewercontrollistener.h
@@ -40,11 +40,11 @@ public:
LLViewerControlListener();
private:
- static void set(LLControlGroup *controls, LLSD const & event_data);
- static void toggleControl(LLControlGroup *controls, LLSD const & event_data);
- static void setDefault(LLControlGroup *controls, LLSD const & event_data);
+ static void set(LLSD const & event_data);
+ static void toggle(LLSD const & event_data);
+ static void get(LLSD const & event_data);
+ static void groups(LLSD const & event_data);
+ static void vars(LLSD const & event_data);
};
-extern LLViewerControlListener gSavedSettingsListener;
-
#endif // LL_LLVIEWERCONTROLLISTENER_H
diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp
index 6142ee0dd6..19326c4e30 100644
--- a/indra/newview/llviewerdisplay.cpp
+++ b/indra/newview/llviewerdisplay.cpp
@@ -202,7 +202,7 @@ void display_stats()
gMemoryAllocated = LLMemory::getCurrentRSS();
U32 memory = (U32)(gMemoryAllocated / (1024*1024));
llinfos << llformat("MEMORY: %d MB", memory) << llendl;
- LLMemory::logMemoryInfo() ;
+ LLMemory::logMemoryInfo(TRUE) ;
gRecentMemoryTime.reset();
}
}
diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp
index ad65a8846c..b22c6d2fd4 100644
--- a/indra/newview/llviewerinventory.cpp
+++ b/indra/newview/llviewerinventory.cpp
@@ -141,7 +141,7 @@ public:
mInventoryItemsDict["Female - Wow"] = LLTrans::getString("Female - Wow");
//common
- mInventoryItemsDict["/bow1"] = LLTrans::getString("/bow1");
+ mInventoryItemsDict["/bow"] = LLTrans::getString("/bow");
mInventoryItemsDict["/clap"] = LLTrans::getString("/clap");
mInventoryItemsDict["/count"] = LLTrans::getString("/count");
mInventoryItemsDict["/extinguish"] = LLTrans::getString("/extinguish");
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index 6435904fee..74ee918bfe 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -2836,8 +2836,8 @@ void process_improved_im(LLMessageSystem *msg, void **user_data)
else
{
LLVector3 pos, look_at;
- U64 region_handle;
- U8 region_access;
+ U64 region_handle(0);
+ U8 region_access(0);
std::string region_info = ll_safe_string((char*)binary_bucket, binary_bucket_size);
std::string region_access_str = LLStringUtil::null;
std::string region_access_icn = LLStringUtil::null;
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index a7f4209e69..98ae746ca7 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -36,6 +36,7 @@
#include <iostream>
#include <fstream>
#include <algorithm>
+#include <boost/lambda/core.hpp>
#include "llagent.h"
#include "llagentcamera.h"
@@ -198,6 +199,7 @@
#include "llfloaternotificationsconsole.h"
#include "llnearbychat.h"
+#include "llwindowlistener.h"
#include "llviewerwindowlistener.h"
#include "llpaneltopinfobar.h"
@@ -1547,7 +1549,12 @@ LLViewerWindow::LLViewerWindow(
mResDirty(false),
mStatesDirty(false),
mCurrResolutionIndex(0),
- mViewerWindowListener(new LLViewerWindowListener(this)),
+ // gKeyboard is still NULL, so it doesn't do LLWindowListener any good to
+ // pass its value right now. Instead, pass it a nullary function that
+ // will, when we later need it, return the value of gKeyboard.
+ // boost::lambda::var() constructs such a functor on the fly.
+ mWindowListener(new LLWindowListener(this, boost::lambda::var(gKeyboard))),
+ mViewerWindowListener(new LLViewerWindowListener(this)),
mProgressView(NULL)
{
LLNotificationChannel::buildChannel("VW_alerts", "Visible", LLNotificationFilters::filterBy<std::string>(&LLNotification::getType, "alert"));
diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h
index edd241a742..d35feb4667 100644
--- a/indra/newview/llviewerwindow.h
+++ b/indra/newview/llviewerwindow.h
@@ -62,6 +62,7 @@ class LLImageFormatted;
class LLHUDIcon;
class LLWindow;
class LLRootView;
+class LLWindowListener;
class LLViewerWindowListener;
class LLPopupView;
@@ -456,7 +457,8 @@ protected:
bool mStatesDirty;
U32 mCurrResolutionIndex;
- boost::scoped_ptr<LLViewerWindowListener> mViewerWindowListener;
+ boost::scoped_ptr<LLWindowListener> mWindowListener;
+ boost::scoped_ptr<LLViewerWindowListener> mViewerWindowListener;
protected:
static std::string sSnapshotBaseName;
diff --git a/indra/newview/llwindowlistener.cpp b/indra/newview/llwindowlistener.cpp
new file mode 100644
index 0000000000..28f959eb71
--- /dev/null
+++ b/indra/newview/llwindowlistener.cpp
@@ -0,0 +1,505 @@
+/**
+ * @file llwindowlistener.cpp
+ * @brief EventAPI interface for injecting input into LLWindow
+ *
+ * $LicenseInfo:firstyear=2001&license=viewerlgpl$
+ * Second Life Viewer Source Code
+ * Copyright (C) 2010, Linden Research, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation;
+ * version 2.1 of the License only.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
+ * $/LicenseInfo$
+ */
+
+#include "llviewerprecompiledheaders.h"
+#include "linden_common.h"
+
+#include "llwindowlistener.h"
+
+#include "llcoord.h"
+#include "llfocusmgr.h"
+#include "llkeyboard.h"
+#include "llwindowcallbacks.h"
+#include "llui.h"
+#include "llview.h"
+#include "llviewinject.h"
+#include "llviewerwindow.h"
+#include "llviewerkeyboard.h"
+#include "llrootview.h"
+#include "llsdutil.h"
+#include "stringize.h"
+#include <typeinfo>
+#include <map>
+#include <boost/scoped_ptr.hpp>
+#include <boost/lambda/core.hpp>
+#include <boost/lambda/bind.hpp>
+
+namespace bll = boost::lambda;
+
+LLWindowListener::LLWindowListener(LLViewerWindow *window, const KeyboardGetter& kbgetter)
+ : LLEventAPI("LLWindow", "Inject input events into the LLWindow instance"),
+ mWindow(window),
+ mKbGetter(kbgetter)
+{
+ std::string keySomething =
+ "Given [\"keysym\"], [\"keycode\"] or [\"char\"], inject the specified ";
+ std::string keyExplain =
+ "(integer keycode values, or keysym string from any addKeyName() call in\n"
+ "http://hg.secondlife.com/viewer-development/src/tip/indra/llwindow/llkeyboard.cpp )\n";
+ std::string mask =
+ "Specify optional [\"mask\"] as an array containing any of \"CTL\", \"ALT\",\n"
+ "\"SHIFT\" or \"MAC_CONTROL\"; the corresponding modifier bits will be combined\n"
+ "to form the mask used with the event.";
+
+ std::string given = "Given ";
+ std::string mouseParams =
+ "optional [\"path\"], optional [\"x\"] and [\"y\"], inject the requested mouse ";
+ std::string buttonParams =
+ std::string("[\"button\"], ") + mouseParams;
+ std::string buttonExplain =
+ "(button values \"LEFT\", \"MIDDLE\", \"RIGHT\")\n";
+ std::string paramsExplain =
+ "[\"path\"] is as for LLUI::resolvePath(), described in\n"
+ "http://hg.secondlife.com/viewer-development/src/tip/indra/llui/llui.h\n"
+ "If you omit [\"path\"], you must specify both [\"x\"] and [\"y\"].\n"
+ "If you specify [\"path\"] without both [\"x\"] and [\"y\"], will synthesize (x, y)\n"
+ "in the center of the LLView selected by [\"path\"].\n"
+ "You may specify [\"path\"] with both [\"x\"] and [\"y\"], will use your (x, y).\n"
+ "This may cause the LLView selected by [\"path\"] to reject the event.\n"
+ "Optional [\"reply\"] requests a reply event on the named LLEventPump.\n"
+ "reply[\"error\"] isUndefined (None) on success, else an explanatory message.\n";
+
+ add("getInfo",
+ "Get information about the ui element specified by [\"path\"]",
+ &LLWindowListener::getInfo,
+ LLSDMap("reply", LLSD()));
+ add("getPaths",
+ "Send on [\"reply\"] an event in which [\"paths\"] is an array of valid LLView\n"
+ "pathnames. Optional [\"under\"] pathname specifies the base node under which\n"
+ "to list; all nodes from root if no [\"under\"].",
+ &LLWindowListener::getPaths,
+ LLSDMap("reply", LLSD()));
+ add("keyDown",
+ keySomething + "keypress event.\n" + keyExplain + mask,
+ &LLWindowListener::keyDown);
+ add("keyUp",
+ keySomething + "key release event.\n" + keyExplain + mask,
+ &LLWindowListener::keyUp);
+ add("mouseDown",
+ given + buttonParams + "click event.\n" + buttonExplain + paramsExplain + mask,
+ &LLWindowListener::mouseDown);
+ add("mouseUp",
+ given + buttonParams + "release event.\n" + buttonExplain + paramsExplain + mask,
+ &LLWindowListener::mouseUp);
+ add("mouseMove",
+ given + mouseParams + "movement event.\n" + paramsExplain + mask,
+ &LLWindowListener::mouseMove);
+ add("mouseScroll",
+ "Given an integer number of [\"clicks\"], inject the requested mouse scroll event.\n"
+ "(positive clicks moves downward through typical content)",
+ &LLWindowListener::mouseScroll);
+}
+
+template <typename MAPPED>
+class StringLookup
+{
+private:
+ std::string mDesc;
+ typedef std::map<std::string, MAPPED> Map;
+ Map mMap;
+
+public:
+ StringLookup(const std::string& desc): mDesc(desc) {}
+
+ MAPPED lookup(const typename Map::key_type& key) const
+ {
+ typename Map::const_iterator found = mMap.find(key);
+ if (found == mMap.end())
+ {
+ LL_WARNS("LLWindowListener") << "Unknown " << mDesc << " '" << key << "'" << LL_ENDL;
+ return MAPPED();
+ }
+ return found->second;
+ }
+
+protected:
+ void add(const typename Map::key_type& key, const typename Map::mapped_type& value)
+ {
+ mMap.insert(typename Map::value_type(key, value));
+ }
+};
+
+namespace {
+
+// helper for getMask()
+MASK lookupMask_(const std::string& maskname)
+{
+ // It's unclear to me whether MASK_MAC_CONTROL is important, but it's not
+ // supported by maskFromString(). Handle that specially.
+ if (maskname == "MAC_CONTROL")
+ {
+ return MASK_MAC_CONTROL;
+ }
+ else
+ {
+ // In case of lookup failure, return MASK_NONE, which won't affect our
+ // caller's OR.
+ MASK mask(MASK_NONE);
+ LLKeyboard::maskFromString(maskname, &mask);
+ return mask;
+ }
+}
+
+MASK getMask(const LLSD& event)
+{
+ LLSD masknames(event["mask"]);
+ if (! masknames.isArray())
+ {
+ // If event["mask"] is a single string, perform normal lookup on it.
+ return lookupMask_(masknames);
+ }
+
+ // Here event["mask"] is an array of mask-name strings. OR together their
+ // corresponding bits.
+ MASK mask(MASK_NONE);
+ for (LLSD::array_const_iterator ai(masknames.beginArray()), aend(masknames.endArray());
+ ai != aend; ++ai)
+ {
+ mask |= lookupMask_(*ai);
+ }
+ return mask;
+}
+
+KEY getKEY(const LLSD& event)
+{
+ if (event.has("keysym"))
+ {
+ // Initialize to KEY_NONE; that way we can ignore the bool return from
+ // keyFromString() and, in the lookup-fail case, simply return KEY_NONE.
+ KEY key(KEY_NONE);
+ LLKeyboard::keyFromString(event["keysym"], &key);
+ return key;
+ }
+ else if (event.has("keycode"))
+ {
+ return KEY(event["keycode"].asInteger());
+ }
+ else
+ {
+ return KEY(event["char"].asString()[0]);
+ }
+}
+
+} // namespace
+
+void LLWindowListener::getInfo(LLSD const & evt)
+{
+ Response response(LLSD(), evt);
+
+ if (evt.has("path"))
+ {
+ std::string path(evt["path"]);
+ LLView * target_view = LLUI::resolvePath(LLUI::getRootView(), path);
+ if (target_view != 0)
+ {
+ response.setResponse(target_view->getInfo());
+ }
+ else
+ {
+ response.error(STRINGIZE(evt["op"].asString() << " request "
+ "specified invalid \"path\": '" << path << "'"));
+ }
+ }
+ else
+ {
+ response.error(
+ STRINGIZE(evt["op"].asString() << "request did not provide a path" ));
+ }
+}
+
+void LLWindowListener::getPaths(LLSD const & request)
+{
+ Response response(LLSD(), request);
+ LLView *root(LLUI::getRootView()), *base(NULL);
+ // Capturing request["under"] as string means we conflate the case in
+ // which there is no ["under"] key with the case in which its value is the
+ // empty string. That seems to make sense to me.
+ std::string under(request["under"]);
+
+ // Deal with optional "under" parameter
+ if (under.empty())
+ {
+ base = root;
+ }
+ else
+ {
+ base = LLUI::resolvePath(root, under);
+ if (! base)
+ {
+ return response.error(STRINGIZE(request["op"].asString() << " request "
+ "specified invalid \"under\" path: '" << under << "'"));
+ }
+ }
+
+ // Traverse the entire subtree under 'base', collecting pathnames
+ for (LLView::tree_iterator_t ti(base->beginTreeDFS()), tend(base->endTreeDFS());
+ ti != tend; ++ti)
+ {
+ response["paths"].append((*ti)->getPathname());
+ }
+}
+
+void LLWindowListener::keyDown(LLSD const & evt)
+{
+ Response response(LLSD(), evt);
+
+ if (evt.has("path"))
+ {
+ std::string path(evt["path"]);
+ LLView * target_view = LLUI::resolvePath(LLUI::getRootView(), path);
+ if (target_view == 0)
+ {
+ response.error(STRINGIZE(evt["op"].asString() << " request "
+ "specified invalid \"path\": '" << path << "'"));
+ }
+ else if(target_view->isAvailable())
+ {
+ response.setResponse(target_view->getInfo());
+
+ gFocusMgr.setKeyboardFocus(target_view);
+ KEY key = getKEY(evt);
+ MASK mask = getMask(evt);
+ gViewerKeyboard.handleKey(key, mask, false);
+ if(key < 0x80) mWindow->handleUnicodeChar(key, mask);
+ }
+ else
+ {
+ response.error(STRINGIZE(evt["op"].asString() << " request "
+ "element specified by \"path\": '" << path << "'"
+ << " is not visible"));
+ }
+ }
+ else
+ {
+ mKbGetter()->handleTranslatedKeyDown(getKEY(evt), getMask(evt));
+ }
+}
+
+void LLWindowListener::keyUp(LLSD const & evt)
+{
+ Response response(LLSD(), evt);
+
+ if (evt.has("path"))
+ {
+ std::string path(evt["path"]);
+ LLView * target_view = LLUI::resolvePath(LLUI::getRootView(), path);
+ if (target_view == 0 )
+ {
+ response.error(STRINGIZE(evt["op"].asString() << " request "
+ "specified invalid \"path\": '" << path << "'"));
+ }
+ else if (target_view->isAvailable())
+ {
+ response.setResponse(target_view->getInfo());
+
+ gFocusMgr.setKeyboardFocus(target_view);
+ mKbGetter()->handleTranslatedKeyUp(getKEY(evt), getMask(evt));
+ }
+ else
+ {
+ response.error(STRINGIZE(evt["op"].asString() << " request "
+ "element specified byt \"path\": '" << path << "'"
+ << " is not visible"));
+ }
+ }
+ else
+ {
+ mKbGetter()->handleTranslatedKeyUp(getKEY(evt), getMask(evt));
+ }
+}
+
+// for WhichButton
+typedef BOOL (LLWindowCallbacks::*MouseMethod)(LLWindow *, LLCoordGL, MASK);
+struct Actions
+{
+ Actions(const MouseMethod& d, const MouseMethod& u): down(d), up(u), valid(true) {}
+ Actions(): valid(false) {}
+ MouseMethod down, up;
+ bool valid;
+};
+
+struct WhichButton: public StringLookup<Actions>
+{
+ WhichButton(): StringLookup<Actions>("mouse button")
+ {
+ add("LEFT", Actions(&LLWindowCallbacks::handleMouseDown,
+ &LLWindowCallbacks::handleMouseUp));
+ add("RIGHT", Actions(&LLWindowCallbacks::handleRightMouseDown,
+ &LLWindowCallbacks::handleRightMouseUp));
+ add("MIDDLE", Actions(&LLWindowCallbacks::handleMiddleMouseDown,
+ &LLWindowCallbacks::handleMiddleMouseUp));
+ }
+};
+static WhichButton buttons;
+
+typedef boost::function<bool(LLCoordGL, MASK)> MouseFunc;
+
+static void mouseEvent(const MouseFunc& func, const LLSD& request)
+{
+ // Ensure we send response
+ LLEventAPI::Response response(LLSD(), request);
+ // We haven't yet established whether the incoming request has "x" and "y",
+ // but capture this anyway, with 0 for omitted values.
+ LLCoordGL pos(request["x"].asInteger(), request["y"].asInteger());
+ bool has_pos(request.has("x") && request.has("y"));
+
+ boost::scoped_ptr<LLView::TemporaryDrilldownFunc> tempfunc;
+
+ // Documentation for mouseDown(), mouseUp() and mouseMove() claims you
+ // must either specify ["path"], or both of ["x"] and ["y"]. You MAY
+ // specify all. Let's say that passing "path" as an empty string is
+ // equivalent to not passing it at all.
+ std::string path(request["path"]);
+ if (path.empty())
+ {
+ // Without "path", you must specify both "x" and "y".
+ if (! has_pos)
+ {
+ return response.error(STRINGIZE(request["op"].asString() << " request "
+ "without \"path\" must specify both \"x\" and \"y\": "
+ << request));
+ }
+ }
+ else // ! path.empty()
+ {
+ LLView* root = LLUI::getRootView();
+ LLView* target = LLUI::resolvePath(root, path);
+ if (! target)
+ {
+ return response.error(STRINGIZE(request["op"].asString() << " request "
+ "specified invalid \"path\": '" << path << "'"));
+ }
+
+ response.setResponse(target->getInfo());
+
+ // The intent of this test is to prevent trying to drill down to a
+ // widget in a hidden floater, or on a tab that's not current, etc.
+ if (! target->isInVisibleChain())
+ {
+ return response.error(STRINGIZE(request["op"].asString() << " request "
+ "specified \"path\" not currently visible: '"
+ << path << "'"));
+ }
+
+ // This test isn't folded in with the above error case since you can
+ // (e.g.) pop up a tooltip even for a disabled widget.
+ if (! target->isInEnabledChain())
+ {
+ response.warn(STRINGIZE(request["op"].asString() << " request "
+ "specified \"path\" not currently enabled: '"
+ << path << "'"));
+ }
+
+ if (! has_pos)
+ {
+ LLRect rect(target->calcScreenRect());
+ pos.set(rect.getCenterX(), rect.getCenterY());
+ // nonstandard warning tactic: probably usual case; we want event
+ // sender to know synthesized (x, y), but maybe don't need to log?
+ response["warnings"].append(STRINGIZE("using center point ("
+ << pos.mX << ", " << pos.mY << ")"));
+ }
+
+/*==========================================================================*|
+ // NEVER MIND: the LLView tree defines priority handler layers in
+ // front of the normal widget set, so this has never yet produced
+ // anything but spam warnings. (sigh)
+
+ // recursive childFromPoint() should give us the frontmost, leafmost
+ // widget at the specified (x, y).
+ LLView* frontmost = root->childFromPoint(pos.mX, pos.mY, true);
+ if (frontmost != target)
+ {
+ response.warn(STRINGIZE(request["op"].asString() << " request "
+ "specified \"path\" = '" << path
+ << "', but frontmost LLView at (" << pos.mX << ", " << pos.mY
+ << ") is '" << LLView::getPathname(frontmost) << "'"));
+ }
+|*==========================================================================*/
+
+ // Instantiate a TemporaryDrilldownFunc to route incoming mouse events
+ // to the target LLView*. But put it on the heap since "path" is
+ // optional. Nonetheless, manage it with a boost::scoped_ptr so it
+ // will be destroyed when we leave.
+ tempfunc.reset(new LLView::TemporaryDrilldownFunc(llview::TargetEvent(target)));
+ }
+
+ // The question of whether the requested LLView actually handled the
+ // specified event is important enough, and its handling unclear enough,
+ // to warrant a separate response attribute. Instead of deciding here to
+ // make it a warning, or an error, let caller decide.
+ response["handled"] = func(pos, getMask(request));
+
+ // On exiting this scope, response will send, tempfunc will restore the
+ // normal pointInView(x, y) containment logic, etc.
+}
+
+void LLWindowListener::mouseDown(LLSD const & request)
+{
+ Actions actions(buttons.lookup(request["button"]));
+ if (actions.valid)
+ {
+ // Normally you can pass NULL to an LLWindow* without compiler
+ // complaint, but going through boost::lambda::bind() evidently
+ // bypasses that special case: it only knows you're trying to pass an
+ // int to a pointer. Explicitly cast NULL to the desired pointer type.
+ mouseEvent(bll::bind(actions.down, mWindow,
+ static_cast<LLWindow*>(NULL), bll::_1, bll::_2),
+ request);
+ }
+}
+
+void LLWindowListener::mouseUp(LLSD const & request)
+{
+ Actions actions(buttons.lookup(request["button"]));
+ if (actions.valid)
+ {
+ mouseEvent(bll::bind(actions.up, mWindow,
+ static_cast<LLWindow*>(NULL), bll::_1, bll::_2),
+ request);
+ }
+}
+
+void LLWindowListener::mouseMove(LLSD const & request)
+{
+ // We want to call the same central mouseEvent() routine for
+ // handleMouseMove() as for button clicks. But handleMouseMove() returns
+ // void, whereas mouseEvent() accepts a function returning bool -- and
+ // uses that bool return. Use (void-lambda-expression, true) to construct
+ // a callable that returns bool anyway. Pass 'true' because we expect that
+ // our caller will usually treat 'false' as a problem.
+ mouseEvent((bll::bind(&LLWindowCallbacks::handleMouseMove, mWindow,
+ static_cast<LLWindow*>(NULL), bll::_1, bll::_2),
+ true),
+ request);
+}
+
+void LLWindowListener::mouseScroll(LLSD const & request)
+{
+ S32 clicks = request["clicks"].asInteger();
+
+ mWindow->handleScrollWheel(NULL, clicks);
+}
diff --git a/indra/llwindow/llwindowlistener.h b/indra/newview/llwindowlistener.h
index 74e577ff93..7af5ab3b9f 100644
--- a/indra/llwindow/llwindowlistener.h
+++ b/indra/newview/llwindowlistener.h
@@ -31,14 +31,16 @@
#include <boost/function.hpp>
class LLKeyboard;
-class LLWindowCallbacks;
+class LLViewerWindow;
class LLWindowListener : public LLEventAPI
{
public:
typedef boost::function<LLKeyboard*()> KeyboardGetter;
- LLWindowListener(LLWindowCallbacks * window, const KeyboardGetter& kbgetter);
+ LLWindowListener(LLViewerWindow * window, const KeyboardGetter& kbgetter);
+ void getInfo(LLSD const & evt);
+ void getPaths(LLSD const & evt);
void keyDown(LLSD const & evt);
void keyUp(LLSD const & evt);
void mouseDown(LLSD const & evt);
@@ -47,7 +49,7 @@ public:
void mouseScroll(LLSD const & evt);
private:
- LLWindowCallbacks * mWindow;
+ LLViewerWindow * mWindow;
KeyboardGetter mKbGetter;
};
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index 9fc2479bb1..68f456bec3 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -123,7 +123,7 @@ with the same filename but different name
<texture name="Checkbox_On" file_name="widgets/Checkbox_On.png" preload="true" />
<texture name="Checkbox_On_Press" file_name="widgets/Checkbox_On_Press.png" preload="true" />
<texture name="Checkbox_Press" file_name="widgets/Checkbox_Press.png" preload="true" />
- <texture name="Check_Mark" file_name="icons/check_mark" preload="true" />
+ <texture name="Check_Mark" file_name="icons/check_mark.png" preload="true" />
<texture name="ComboButton_Disabled" file_name="widgets/ComboButton_Disabled.png" preload="true" scale.left="2" scale.top="19" scale.right="18" scale.bottom="2" />
<texture name="ComboButton_Selected" file_name="widgets/ComboButton_Selected.png" preload="true" scale.left="2" scale.top="19" scale.right="18" scale.bottom="2" />
diff --git a/indra/newview/skins/default/xui/de/floater_about.xml b/indra/newview/skins/default/xui/de/floater_about.xml
index 578dcd50e5..519efe9ce8 100644
--- a/indra/newview/skins/default/xui/de/floater_about.xml
+++ b/indra/newview/skins/default/xui/de/floater_about.xml
@@ -42,15 +42,23 @@ Voice-Serverversion: [VOICE_VERSION]
<button label="In Zwischenablage kopieren" name="copy_btn"/>
</panel>
<panel label="Danksagung" name="credits_panel">
- <text_editor name="credits_editor">
- Second Life wird Ihnen präsentiert von Philip, Tessa, Andrew, Cory, Ian, James, Phoenix, Ryan, Haney, Dan, Char, Ben, John, Tanya, Eddie, Richard, Mitch, Doug, Eric, Frank, Bruce, Aaron, Peter, Alice, Charlie, Debra, Eileen, Helen, Janet, Steffan, Steve, Tom, Mark, Hunter, Xenon, Burgess, Bill, Jim, Lee, Hamlet, Daniel, Jeff, Todd, Sarah, Tim, Stephanie, Colin, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Jack, Vektor, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Jesse, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Yuko, Makiko, Thomas, Harry, Seth, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Brad, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, Beez, Milo, Hermia, Red, Thrax, Gulliver, Joe, Sally, Paul, Jose, Rejean, Dore, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, Dustin, George, Del, Matthew, Cat, Jacqui, Adrian, Viola, Alfred, Noel, Irfan, Yool, Rika, Jane, Frontier, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Jeremy, JP, Jake, Anthony, Maurice, Madhavi, Leopard, Kyle, Joon, Bert, Belinda, Jon, Kristi, Bridie, Pramod, Socrates, Maria, Aric, Adreanne, Jay, Kari, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Colossus, Zen, BigPapi, Pastrami, Kurz, Mani, Neuro, Mel, Sardonyx, MJ, Rowan, Sgt, Elvis, Samuel, Leo, Bryan, Niko, Austin, Soft, Poppy, Rachel, Aki, Banzai, Alexa, Sue, Bender, CG, Angelo, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Rothman, Niall, Marin, Allison, Katie, Dawn, Dusty, Katt, Judy, Andrea, Ambroff, Infinity, Rico, Gail, Kalpana, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Maestro, Simone, Yang, T, Shannon, Nelson, Khanh, Scott, Courtney, Charlene, Quixote, Susan, Zed, Amanda, Katelin, Enkidu, Roxie, Esbee, JoRoan, Scarlet, Tay, Kevin, Wolfgang, Johnny, Ray, Andren, Merov, Bob, Rand, Howard, Callen, Heff, Galen, Newell, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, Ashley, JessieAnn, Huseby, Karina, Paris, Kurt, Rick, Lis, Kotler, Theeba, Lynx, Murphy, Doten, Taka, Norm, Jillian, Marcus, Mae, Novack, Esther, Perry, Dana, Ducot, Javier, Porter, Madison, Gecko, Dough, JR, Gisele, Crimp, Norie, Arch, Kimi, Fisher, Barbara, Jason, Peggy, Bernard, Jules, Leroy, Eva, Khederian, Campbell, Vogt, Masido, Karel, Torres, Lo, Breezer, Delby, Rountree, Anna, Servus, Rue, Itiaes, Chuck, Luna, Novella, Zaza, Wen, Gino, Lex, Cassandra, Limey, Nancy, Anukul, Silver, Brodesky, Jinsai, Squid, Gez, Rakesh, Ladan, Edelman, Marcet, Squire, Tatem, Tony, Jerm, Tia, Falcon, BK, Tiggs, Driscoll, Bacon, Timothee, Cru, Carmilla, Coyot, Webb, Kazu, Rudas, LJ, Sea, Ali Wallace, Bewest, Pup, Drub, Dragon, Inoshiro, Byron, Rhett, Xandix, Aimee, Fredrik, Thor, Teddy, Baron, Nelly, Ghengis, Epic, Eli, Stone, Grapes, Irie, Prep, Scobu, Valerie, Alain und vielen anderen.
-
-Wir bedanken uns bei folgenden Einwohnern, die uns geholfen haben, dies zur bisher besten Version zu machen: Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk, Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, , 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan und vielen anderen.
-
-
-
-
-„Die Arbeit beginnt aufs Neue, die Hoffnung lebt weiter, und der Traum wird niemals sterben.“ - Edward Kennedy
+ <text name="linden_intro">
+ Second Life wird präsentiert von den Lindens:
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ mit Open-Source-Beiträgen von:
+ </text>
+ <text_editor name="contrib_names">
+ Dummy-Name wird zur Laufzeit ersetzt
+ </text_editor>
+ <text name="trans_intro">
+ mit Ãœbersetzungen von:
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name wird zur Laufzeit ersetzt
</text_editor>
</panel>
<panel label="Lizenzen" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/de/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/de/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..cdefb470c2
--- /dev/null
+++ b/indra/newview/skins/default/xui/de/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="Proxy-Einstellungen">
+ <check_box initial_value="false" label="HTTP-Proxy für Webseiten verwenden" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ HTTP-Proxy:
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="DNS-Name oder IP-Adresse des gewünschten HTTP-Proxys."/>
+ <spinner label="Portnummer:" name="web_proxy_port" tool_tip="Portnummer des gewünschten HTTP-Proxys."/>
+ <check_box label="SOCKS 5-Proxy für UDP-Verkehr verwenden" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ SOCKS 5-Proxy:
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="DNS-Name oder IP-Adresse des gewünschten SOCKS 5-Proxys."/>
+ <spinner label="Portnummer:" name="socks_proxy_port" tool_tip="Portnummer des gewünschten SOCKS 5-Proxys."/>
+ <text name="socks_auth_label">
+ SOCKS-Authentifizierung:
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="Keine Authentifizierung" name="Socks5NoAuth" tool_tip="SOCKS 5-Proxy erfordert keine Authentifizierung." value="Keine"/>
+ <radio_item label="Benutzername/Kennwort" name="Socks5UserPass" tool_tip="SOCKS 5-Proxy erfordert Authentifizierung per Benutzername/Kennwort." value="UserPass"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ Benutzername:
+ </text>
+ <text name="socks5_password_label">
+ Kennwort:
+ </text>
+ <line_editor name="socks5_username" tool_tip="Benutzername zur Authentifizierung über Ihren SOCKS 5-Server"/>
+ <line_editor name="socks5_password" tool_tip="Kennwort zur Authentifizierung über Ihren SOCKS 5-Server"/>
+ <text name="other_proxy_label">
+ Anderer HTTP-Verkehrs-Proxy:
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="Keinen Proxy verwenden" name="OtherNoProxy" tool_tip="Nicht-Web-HTTP-Verkehr wird an KEINEN Proxy weitergeleitet." value="Keiner"/>
+ <radio_item label="HTTP-Proxy verwenden" name="OtherHTTPProxy" tool_tip="Nicht-Web-HTTP-Verkehr wird über den konfigurierten Web-Proxy weitergeleitet." value="Web"/>
+ <radio_item label="SOCKS 5-Proxy verwenden" name="OtherSocksProxy" tool_tip="Nicht-Web-HTTP-Verkehr wird über den konfigurierten SOCKS 5-Proxy weitergeleitet." value="SOCKS"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/de/menu_inventory.xml b/indra/newview/skins/default/xui/de/menu_inventory.xml
index 9fcd41e62a..733a0b85c3 100644
--- a/indra/newview/skins/default/xui/de/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/de/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="Bearbeiten" name="Wearable Edit"/>
<menu_item_call label="Hinzufügen" name="Wearable Add"/>
<menu_item_call label="Ausziehen" name="Take Off"/>
+ <menu_item_call label="In Händler-Outbox kopieren" name="Merchant Copy"/>
+ <menu_item_call label="In Händler-Outbox verschieben" name="Merchant Move"/>
<menu_item_call label="--keine Optionen--" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/de/menu_media_ctrl.xml b/indra/newview/skins/default/xui/de/menu_media_ctrl.xml
index 781796670a..59c1c2ee86 100644
--- a/indra/newview/skins/default/xui/de/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/de/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="Ausschneiden" name="Cut"/>
<menu_item_call label="Kopieren" name="Copy"/>
<menu_item_call label="Einfügen" name="Paste"/>
+ <menu_item_call label="Webinspektor öffnen" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/de/menu_mode_change.xml b/indra/newview/skins/default/xui/de/menu_mode_change.xml
new file mode 100644
index 0000000000..b8090018b7
--- /dev/null
+++ b/indra/newview/skins/default/xui/de/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="Basis" name="BasicMode"/>
+ <menu_item_check label="Erweitert" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/de/menu_viewer.xml b/indra/newview/skins/default/xui/de/menu_viewer.xml
index e010844206..7c6918a4ee 100644
--- a/indra/newview/skins/default/xui/de/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/de/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="Sound ([COST] L$)..." name="Upload Sound"/>
<menu_item_call label="Animation ([COST] L$)..." name="Upload Animation"/>
<menu_item_call label="Modell..." name="Upload Model"/>
- <menu_item_call label="Modellassistent..." name="Upload Model Wizard"/>
<menu_item_call label="Mehrfach-Upload ([COST] L$ pro Datei)..." name="Bulk Upload"/>
</menu>
<menu_item_call label="Rückgängig" name="Undo"/>
@@ -253,6 +252,7 @@
<menu_item_check label="Matrizen anzeigen" name="Show Matrices"/>
<menu_item_check label="Farbe unter Cursor anzeigen" name="Show Color Under Cursor"/>
<menu_item_check label="Speicher anzeigen" name="Show Memory"/>
+ <menu_item_check label="Info über privaten Speicher anzeigen" name="Show Private Mem Info"/>
<menu_item_check label="Akutalisierungen an Objekten anzeigen" name="Show Updates"/>
</menu>
<menu label="Fehler erzwingen" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/de/notifications.xml b/indra/newview/skins/default/xui/de/notifications.xml
index 1971061096..4c53c40d86 100644
--- a/indra/newview/skins/default/xui/de/notifications.xml
+++ b/indra/newview/skins/default/xui/de/notifications.xml
@@ -85,6 +85,19 @@ Stellen Sie sicher, dass Ihre Internetverbindung funktioniert.
Änderung an aktueller Kleidung/Körperteil speichern?
<usetemplate canceltext="Abbrechen" name="yesnocancelbuttons" notext="Nicht speichern" yestext="Speichern"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ Ihnen fehlt die Berechtigung zum Kopieren dieses Artikels in die Händler-Outbox. Möchten Sie wirklich den folgenden Artikel verschieben?
+ [ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="Nein" yestext="Ja"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ Marktplatz-Upload abgeschlossen.
+ <usetemplate name="okbutton" yestext="Hurra!"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ Marktplatz-Upload mit Fehlern abgeschlossen. Korrigieren Sie die Fehler in Ihrer Outbox und versuchen Sie es erneut. Vielen Dank!
+ <usetemplate name="okbutton" yestext="Erneut versuchen"/>
+ </notification>
<notification name="CompileQueueSaveText">
Der Text für ein Skript konnte aus folgendem Grund nicht hochgeladen werden: [REASON]. Bitte versuchen Sie es erneut.
</notification>
@@ -2436,7 +2449,15 @@ Versuchen Sie es in einigen Minuten erneut.
<form name="form">
<button name="Keep" text="Behalten"/>
<button name="Discard" text="Verwerfen"/>
- <button name="Mute" text="Ignorieren"/>
+ <button name="Mute" text="Eigentümer blockieren"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ Ein Objekt namens &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; hat Ihnen folgende/n/s [OBJECTTYPE] übergeben:
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="Beibehalten"/>
+ <button name="Discard" text="Verwerfen"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2580,6 +2601,7 @@ Anfrage gestatten?
„&lt;nolink&gt;[TITLE]&lt;/nolink&gt;“ von [NAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Blockieren"/>
<button name="Ignore" text="Ignorieren"/>
</form>
</notification>
@@ -2587,6 +2609,7 @@ Anfrage gestatten?
„&lt;nolink&gt;[TITLE]&lt;/nolink&gt;“ von [GROUPNAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Blockieren"/>
<button name="Ignore" text="Ignorieren"/>
</form>
</notification>
@@ -2915,6 +2938,12 @@ Durch Ausblenden der Schaltfläche „Sprechen“ wird die Sprechfunktion deakti
<notification label="Sie haben Linden-Dollar!" name="HintLindenDollar">
Hier wird Ihr aktueller L$-Kontostand angezeigt. Klicken Sie auf „L$ kaufen“, um mehr Linden-Dollar zu kaufen.
</notification>
+ <notification name="LowMemory">
+ Nicht genügend Arbeitsspeicher. Einige SL-Funktionen werden deaktiviert, um einen Absturz zu verhindern. Schließen Sie andere Anwendungen. Starten Sie SL neu, falls dieser Fehler erneut auftritt.
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ SL wird wegen Speichermangel in 30 Sekunden beendet.
+ </notification>
<notification name="PopupAttempt">
Ein Popup konnte nicht geöffnet werden.
<form name="form">
@@ -2922,6 +2951,54 @@ Durch Ausblenden der Schaltfläche „Sprechen“ wird die Sprechfunktion deakti
<button name="open" text="Popup-Fenster öffnen"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ SOCKS 5-Proxy „[HOST]:[PORT]“ hat Verbindungsverbindung abgewiesen, da laut Regelsatz nicht zulässig.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ SOCKS 5-Proxy „[HOST]:[PORT]“ hat den Verbindungsversuch abgewiesen. Der TCP-Kanal konnte nicht geöffnet werden.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ SOCKS 5-Proxy „[HOST]:[PORT]“ hat das ausgewählte Authentifizierungssystem abgewiesen.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ SOCKS 5-Proxy „[HOST]:[PORT]“ hat gemeldet, dass Ihre Angaben ungültig sind.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ SOCKS 5-Proxy „[HOST]:[PORT]“ hat die Anforderung UDP ASSOCIATE abgewiesen.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ Keine Verbindung möglich zum SOCKS 5-Proxy-Server „[HOST]:[PORT]“.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ Unbekannter Proxy-Fehler bei Server „[HOST]:[PORT]“.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ SOCKS-Proxy-Address oder Port „[HOST]:[PORT]“ ungültig.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ SOCKS 5-Benutzername oder -Kennwort ungültig.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ HTTP-Proxy-Address oder Port „[HOST]:[PORT]“ ungültig.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ SOCKS-Proxy-Address oder Port „[HOST]:[PORT]“ ungültig.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ Proxy-Einstellungen treten nach Neustart von [APP_NAME] in Kraft.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
Für die Site „&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;“ in der Domäne „[REALM]“ ist ein Benutzername und Kennwort erforderlich.
<form name="form">
diff --git a/indra/newview/skins/default/xui/de/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/de/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..4006022ffc
--- /dev/null
+++ b/indra/newview/skins/default/xui/de/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="Legen Sie Artikel hier ab, um sie zum Verkauf in Ihrem Laden vorzubereiten"/>
diff --git a/indra/newview/skins/default/xui/de/panel_preferences_setup.xml b/indra/newview/skins/default/xui/de/panel_preferences_setup.xml
index 490cead17d..8b18bf8659 100644
--- a/indra/newview/skins/default/xui/de/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/de/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="Eigener Port" name="connection_port_enabled"/>
<spinner label="Port-Nummer:" name="connection_port"/>
- <text name="cache_size_label_l">
- Cachegröße
- </text>
- <text name="text_box5">
- MB
- </text>
- <text name="Cache location">
- Cache-Ordner:
- </text>
- <button label="Durchsuchen" label_selected="Durchsuchen" name="set_cache"/>
- <button label="Zurücksetzen" label_selected="Zurücksetzen" name="reset_cache"/>
<text name="Web:">
Web:
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Cookies annehmen" name="cookies_enabled"/>
<check_box initial_value="true" label="Javascript aktivieren" name="browser_javascript_enabled"/>
<check_box initial_value="false" label="Medienbrowser-Popups aktivieren" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Web-Proxy aktivieren" name="web_proxy_enabled"/>
- <text name="Proxy location">
- Proxy-Standort:
- </text>
- <line_editor name="web_proxy_editor" tool_tip="Name oder IP Adresse des Proxyservers, den Sie benutzen möchten"/>
- <spinner label="Portnummer:" name="web_proxy_port"/>
<text name="Software updates:">
Softwareupdates:
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="Automatisch installieren" name="Install_automatically"/>
<combo_box.item label="Updates manuell herunterladen und installieren" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ Proxy-Einstellungen:
+ </text>
+ <button label="Proxy-Einstellungen ändern" label_selected="Durchsuchen" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/de/panel_status_bar.xml b/indra/newview/skins/default/xui/de/panel_status_bar.xml
index 04ed58f944..e9de350ee7 100644
--- a/indra/newview/skins/default/xui/de/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/de/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Sonntag:Montag:Dienstag:Mittwoch:Donnerstag:Freitag:Samstag
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Januar:Februar:März:April:Mai:Juni:Juli:August:September:Oktober:November:Dezember
- </panel.string>
<panel.string name="packet_loss_tooltip">
Paketverlust
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="Klicken, um L$-Guthaben zu aktualisieren" value="20 L$"/>
<button label="L$ kaufen" name="buyL" tool_tip="Hier klicken, um mehr L$ zu kaufen"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="Wählen Sie den gewünschten Modus aus. Basismodus: Second Life schnell und einfach erkunden und chatten. Erweiterter Modus: Zugriff auf zusätzliche Funktionen.">
+ <combo_box.item label="Basismodus" name="Basic"/>
+ <combo_box.item label="Erweiterter Modus" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="Aktuelle Zeit (Pazifik)">
24:00 H PST
</text>
diff --git a/indra/newview/skins/default/xui/de/sidepanel_inventory.xml b/indra/newview/skins/default/xui/de/sidepanel_inventory.xml
index 3dd1bfb357..674ea3376b 100644
--- a/indra/newview/skins/default/xui/de/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/de/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="Sonstiges" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- Erhaltene Objekte ([NUM])
- </string>
- <string name="InboxLabelNoArg">
- Erhaltene Objekte
- </string>
- <button label="Erhaltene Objekte" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] neu
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- Einkäufe auf dem Marktplatz werden hierher geliefert.
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="Händler-Outbox" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="Zu meiner Marktplatz-Storefront verschieben"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- Richtigen Sie ein Händlerkonto ein, um diese Funktion zu verwenden.
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ Erhaltene Artikel ([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ Erhaltene Artikel
+ </string>
+ <button label="Erhaltene Artikel" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] neu
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ Einkäufe auf dem Marktplatz werden hierher geliefert.
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ Händler-Outbox ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ Händler-Outbox
+ </string>
+ <button label="Händler-Outbox" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="In meinen Marktplatz-Laden verschieben"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ Laden...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/de/strings.xml b/indra/newview/skins/default/xui/de/strings.xml
index 902f97efab..435f3494b0 100644
--- a/indra/newview/skins/default/xui/de/strings.xml
+++ b/indra/newview/skins/default/xui/de/strings.xml
@@ -339,6 +339,18 @@ Warten Sie kurz und versuchen Sie dann noch einmal, sich anzumelden.
Sie können nur ein einzelnes Objekt hierher ziehen
</string>
<string name="TooltipPrice" value="[AMOUNT] L$"/>
+ <string name="TooltipOutboxNoTransfer">
+ Eines oder mehrere dieser Objekte können nicht verkauft oder an einen anderen Benutzer übertragen werden.
+ </string>
+ <string name="TooltipOutboxWorn">
+ Sie tragen eines oder mehrere dieser Objekte. Nehmen Sie es/sie von Ihrem Avatar ab und versuchen Sie dann erneut, es/sie zu verschieben.
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ Dieser Ordner hat zu viele Unterordnerebenen. Ordnen Sie die Unterordner so an, dass maximal vier Verschachtelungsebenen vorhanden sind (Stammordner enthält A enthält B enthält C).
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ Dieser Ordner enthält mehr als 200 Objekte. Verpacken Sie einige dieser Artikel in Behältern, um die Anzahl zu verringern.
+ </string>
<string name="TooltipHttpUrl">
Anklicken, um Webseite anzuzeigen
</string>
@@ -1204,8 +1216,65 @@ Warten Sie kurz und versuchen Sie dann noch einmal, sich anzumelden.
<string name="InventoryInboxNoItems">
Objekte, die auf dem Marktplatz gekauft wurden, werden hierher geliefert.
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ Ihre Händler-Outbox ist nicht richtig konfiguriert
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ Konfigurationsfehler in Händler-Outbox
+ </string>
+ <string name="InventoryOutboxCreationError">
+ Wenden Sie sich zur Behebung des Problems an den Kundendienst.
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ Jeder kann Artikel im Marktplatz verkaufen
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ Werden Sie Händler!
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] Im Second Life Marktplatz] werden über eine Million virtuelle Produkte zum Verkauf angeboten, die alle von Einwohnern erstellt wurden. Auch Sie können selbst erstellte Artikel sowie bestimmte gekaufte Artikel verkaufen. Die Einrichtung eines Händlerkontos geht blitzschnell und ist kostenlos. [[LEARN_MORE_URL] Lesen Sie weitere Informationen] oder [[CREATE_STORE_URL] öffnen Sie einen Laden] im Marktplatz, um Ihre Objekte zu verkaufen.
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ Eine neue Methode, um Artikel in den Marktplatz zu übertragen
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ Legen Sie Artikel hier ab, um sie zum Verkauf im Marktplatz vorzubereiten
+ </string>
<string name="InventoryOutboxNoItems">
- Objekte hierher ziehen, um Sie in Ihrer Marktplatz-Storefront zum Verkauf anzubieten.
+ Ziehen Sie zu verkaufende Artikel oder Ordner in diesen Bereich. Es erscheinen Kopien der Artikel; Ihr Inventar bleibt unverändert, es sei denn, es handelt sich um einen nicht kopierbaren Artikel. Wenn die Artikel in den Marktplatz übertragen werden sollen, klicken Sie auf die Schaltfläche „Hochladen“. Nach Übertragung der Artikel in Ihr Marktplatz-Inventar verschwinden sie aus diesem Ordner.
+ </string>
+ <string name="Marketplace Error None">
+ Keine Fehler
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ Fehler: Bevor Sie Artikel in den Marktplatz übertragen können, müssen Sie sich als Händler registrieren (kostenlos).
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ Fehler: Dieser Ordner ist leer.
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ Fehler: Dieser Artikel konnte nicht hochgeladen werden, da in Ihrem Händlerkonto zu viele Artikel nicht mit Produkten verknüpft sind. Um diesen Fehler zu beheben, melden Sie sich auf der Marktplatz-Website an und reduzieren Sie die Anzahl von Artikeln, die nicht mit Produkten verknüpft sind.
+ </string>
+ <string name="Marketplace Error Object Limit">
+ Fehler: Dieser Artikel enthält zu viele Objekte. Beheben Sie diesen Fehler, indem Sie Objekte zusammen in Behältern verpacken, um die Objektanzahl auf unter 200 zu verringern.
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ Fehler: Dieser Artikel enthält zu viele verschachtelte Ordnerebenen. Organisieren Sie ihn neu, sodass maximal drei verschachtelte Ordnerebenen vorhanden sind.
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ Fehler: Dieser Artikel kann nicht im Marktplatz verkauft werden.
+ </string>
+ <string name="Marketplace Error Internal Import">
+ Fehler: Bei diesem Artikel ist ein Problem aufgetreten. Versuchen Sie es später erneut.
</string>
<string name="no_transfer" value=" (kein Transferieren)"/>
<string name="no_modify" value=" (kein Bearbeiten)"/>
@@ -4185,7 +4254,7 @@ Missbrauchsbericht
<string name="Female - Wow">
Weiblich - Wow
</string>
- <string name="/bow">
+ <string name="/bow1">
/verbeugen
</string>
<string name="/clap">
diff --git a/indra/newview/skins/default/xui/en/floater_about.xml b/indra/newview/skins/default/xui/en/floater_about.xml
index 3dd394bac1..2580c06344 100644
--- a/indra/newview/skins/default/xui/en/floater_about.xml
+++ b/indra/newview/skins/default/xui/en/floater_about.xml
@@ -23,7 +23,7 @@ Built with [COMPILER] version [COMPILER_VERSION]
name="AboutPosition">
You are at [POSITION_0,number,1], [POSITION_1,number,1], [POSITION_2,number,1] in [REGION] located at &lt;nolink&gt;[HOSTNAME]&lt;/nolink&gt; ([HOSTIP])
[SERVER_VERSION]
-[[SERVER_RELEASE_NOTES_URL] [ReleaseNotes]]
+[SERVER_RELEASE_NOTES_URL]
</floater.string>
<!-- *NOTE: Do not translate text like GPU, Graphics Card, etc -
@@ -59,6 +59,10 @@ Voice Server Version: [VOICE_VERSION]
name="AboutTraffic">
Packets Lost: [PACKETS_LOST,number,0]/[PACKETS_IN,number,0] ([PACKETS_PCT,number,1]%)
</floater.string>
+<floater.string
+ name="ErrorFetchingServerReleaseNotesURL">
+Error fetching server release notes URL.
+</floater.string>
<tab_container
follows="all"
top="25"
diff --git a/indra/newview/skins/default/xui/en/floater_publish_classified.xml b/indra/newview/skins/default/xui/en/floater_publish_classified.xml
index 6ce9ed6e77..322e34272c 100644
--- a/indra/newview/skins/default/xui/en/floater_publish_classified.xml
+++ b/indra/newview/skins/default/xui/en/floater_publish_classified.xml
@@ -36,7 +36,7 @@ Remember, Classified fees are non-refundable.
left="15"
value="50"
min_val="50"
- max_val="99999"
+ max_val="999999"
name="price_for_listing"
top_pad="10"
tool_tip="Price for listing."
diff --git a/indra/newview/skins/default/xui/en/floater_stats.xml b/indra/newview/skins/default/xui/en/floater_stats.xml
index b87cb9a433..406114294d 100644
--- a/indra/newview/skins/default/xui/en/floater_stats.xml
+++ b/indra/newview/skins/default/xui/en/floater_stats.xml
@@ -10,7 +10,7 @@
save_rect="true"
save_visibility="true"
title="STATISTICS"
- width="250">
+ width="260">
<scroll_container
follows="top|left|bottom|right"
height="380"
@@ -19,15 +19,16 @@
name="statistics_scroll"
reserve_scroll_corner="true"
top="20"
- width="250">
- <container_view
- follows="top|left|bottom|right"
- height="378"
- layout="topleft"
- left="2"
- name="statistics_view"
- top="20"
- width="230" >
+ width="260">
+ <container_view
+ follows="top|left|bottom|right"
+ height="378"
+ layout="topleft"
+ left="2"
+ name="statistics_view"
+ top="20"
+ width="245" >
+ <!--Basic Section-->
<stat_view
name="basic"
label="Basic"
@@ -39,9 +40,9 @@
unit_label="fps"
stat="fpsstat"
bar_min="0"
- bar_max="45"
- tick_spacing="7.5"
- label_spacing="15.0"
+ bar_max="60"
+ tick_spacing="6"
+ label_spacing="12"
precision="1"
show_bar="true"
show_history="true">
@@ -52,9 +53,10 @@
unit_label="kbps"
stat="kbitstat"
bar_min="0"
- bar_max="900"
- tick_spacing="100"
- label_spacing="300"
+ bar_max="5000"
+ tick_spacing="500"
+ label_spacing="1000"
+ precision="0"
show_bar="true"
show_history="false">
</stat_bar>
@@ -65,9 +67,9 @@
stat="packetslostpercentstat"
bar_min="0"
bar_max="5"
- tick_spacing="1"
+ tick_spacing="0.5"
label_spacing="1"
- precision="1"
+ precision="3"
show_per_sec="false"
show_bar="false"
show_mean="true">
@@ -78,15 +80,17 @@
unit_label="msec"
stat="simpingstat"
bar_min="0"
- bar_max="1000"
- tick_spacing="100"
- label_spacing="200"
+ bar_max="5000"
+ tick_spacing="500"
+ label_spacing="1000"
+ precision="0"
show_bar="false"
show_per_sec="false"
show_mean="false">
</stat_bar>
</stat_view>
- <stat_view
+ <!--Advanced Section-->
+ <stat_view
name="advanced"
label="Advanced"
show_label="true"
@@ -98,37 +102,39 @@
setting="OpenDebugStatRender">
<stat_bar
name="ktrisframe"
- label="KTris Drawn"
+ label="KTris Drawn per Frame"
unit_label="/fr"
stat="trianglesdrawnstat"
bar_min="0"
- bar_max="500"
- tick_spacing="100"
- label_spacing="500"
- precision="1"
- show_per_sec="false">
- </stat_bar>
+ bar_max="10000"
+ tick_spacing="1000"
+ label_spacing="2000"
+ precision="0"
+ show_per_sec="false"
+ show_bar="false">
+ </stat_bar>
<stat_bar
name="ktrissec"
- label="KTris Drawn"
+ label="KTris Drawn per Sec"
unit_label="/sec"
stat="trianglesdrawnstat"
bar_min="0"
- bar_max="3000"
- tick_spacing="250"
- label_spacing="1000"
- precision="1">
- </stat_bar>
+ bar_max="200000"
+ tick_spacing="25000"
+ label_spacing="50000"
+ precision="0"
+ show_bar="false">
+ </stat_bar>
<stat_bar
name="objs"
label="Total Objects"
unit_label=""
stat="numobjectsstat"
bar_min="0"
- bar_max="3000"
- tick_spacing="250"
- label_spacing="1000"
- precision="1"
+ bar_max="50000"
+ tick_spacing="5000"
+ label_spacing="10000"
+ precision="0"
show_per_sec="false"
show_bar="false">
</stat_bar>
@@ -138,13 +144,14 @@
unit_label="/sec"
stat="numnewobjectsstat"
bar_min="0"
- bar_max="1000"
- tick_spacing="100"
- label_spacing="500"
+ bar_max="2000"
+ tick_spacing="200"
+ label_spacing="400"
show_per_sec="true"
show_bar="false">
</stat_bar>
</stat_view>
+ <!--Texture Stats-->
<stat_view
name="texture"
label="Texture"
@@ -182,8 +189,9 @@
tick_spacing="100.f"
label_spacing="200.f"
precision="1"
- show_per_sec="false" >
- </stat_bar>
+ show_per_sec="false"
+ show_bar="false">
+ </stat_bar>
<stat_bar
name="formattedmemstat"
@@ -194,8 +202,9 @@
tick_spacing="100.f"
label_spacing="200.f"
precision="1"
- show_per_sec="false" >
- </stat_bar>
+ show_per_sec="false"
+ show_bar="false">
+ </stat_bar>
<stat_bar
name="rawmemstat"
@@ -206,8 +215,9 @@
tick_spacing="100.f"
label_spacing="200.f"
precision="1"
- show_per_sec="false" >
- </stat_bar>
+ show_per_sec="false"
+ show_bar="false">
+ </stat_bar>
<stat_bar
name="glboundmemstat"
@@ -218,10 +228,11 @@
tick_spacing="100.f"
label_spacing="200.f"
precision="1"
- show_per_sec="false" >
- </stat_bar>
+ show_per_sec="false"
+ show_bar="false">
+ </stat_bar>
</stat_view>
-
+ <!--Network Stats-->
<stat_view
name="network"
label="Network"
@@ -232,6 +243,11 @@
label="Packets In"
stat="packetsinstat"
unit_label="/sec"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false">
</stat_bar>
@@ -239,7 +255,12 @@
name="packetsoutstat"
label="Packets Out"
stat="packetsoutstat"
- unit_label="/sec"
+ unit_label="/sec"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false" >
</stat_bar>
@@ -247,7 +268,12 @@
name="objectkbitstat"
label="Objects"
stat="objectkbitstat"
- unit_label="kbps"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false" >
</stat_bar>
@@ -255,7 +281,12 @@
name="texturekbitstat"
label="Texture"
stat="texturekbitstat"
- unit_label="kbps"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false" >
</stat_bar>
@@ -263,7 +294,12 @@
name="assetkbitstat"
label="Asset"
stat="assetkbitstat"
- unit_label="kbps"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false" >
</stat_bar>
@@ -271,7 +307,12 @@
name="layerskbitstat"
label="Layers"
stat="layerskbitstat"
- unit_label="kbps"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
show_bar="false" >
</stat_bar>
@@ -279,12 +320,13 @@
name="actualinkbitstat"
label="Actual In"
stat="actualinkbitstat"
- unit_label="kbps"
- bar_min="0.f"
- bar_max="1024.f"
- tick_spacing="128.f"
- label_spacing="256.f"
- show_bar="true"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
+ show_bar="false"
show_history="false" >
</stat_bar>
@@ -292,26 +334,27 @@
name="actualoutkbitstat"
label="Actual Out"
stat="actualoutkbitstat"
- unit_label="kbps"
- bar_min="0.f"
- bar_max="512.f"
- tick_spacing="128.f"
- label_spacing="256.f"
- show_bar="true"
+ unit_label="kbps"
+ bar_min="0.f"
+ bar_max="1024.f"
+ tick_spacing="128.f"
+ label_spacing="256.f"
+ precision="1"
+ show_bar="false"
show_history="false">
</stat_bar>
<stat_bar
name="vfspendingoperations"
- label="VFS Pending Ops"
+ label="VFS Pending Operations"
stat="vfspendingoperations"
- unit_label=" "
+ unit_label=" Ops."
show_per_sec="false"
show_bar="false" >
</stat_bar>
</stat_view>
</stat_view>
-
+ <!--Sim Stats-->
<stat_view
name="sim"
label="Simulator"
@@ -321,11 +364,11 @@
name="simtimedilation"
label="Time Dilation"
stat="simtimedilation"
- precision="2"
+ precision="3"
bar_min="0.f"
bar_max="1.f"
- tick_spacing="0.25f"
- label_spacing="0.5f"
+ tick_spacing="0.16666f"
+ label_spacing="0.33333f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -335,10 +378,11 @@
name="simfps"
label="Sim FPS"
stat="simfps"
+ precision="1"
bar_min="0.f"
- bar_max="200.f"
- tick_spacing="20.f"
- label_spacing="100.f"
+ bar_max="45.f"
+ tick_spacing="7.5f"
+ label_spacing="15.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -350,9 +394,9 @@
stat="simphysicsfps"
precision="1"
bar_min="0.f"
- bar_max="66.f"
- tick_spacing="33.f"
- label_spacing="33.f"
+ bar_max="45.f"
+ tick_spacing="7.5.f"
+ label_spacing="15.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -369,8 +413,8 @@
precision="0"
bar_min="0.f"
bar_max="500.f"
- tick_spacing="10.f"
- label_spacing="40.f"
+ tick_spacing="50.f"
+ label_spacing="100.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -383,8 +427,8 @@
precision="0"
bar_min="0.f"
bar_max="500.f"
- tick_spacing="10.f"
- label_spacing="40.f"
+ tick_spacing="50.f"
+ label_spacing="100.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -395,7 +439,7 @@
label="Memory Allocated"
stat="physicsmemoryallocated"
unit_label="MB"
- precision="0"
+ precision="1"
bar_min="0.f"
bar_max="1024.f"
tick_spacing="128.f"
@@ -468,9 +512,9 @@
stat="simactiveobjects"
precision="0"
bar_min="0.f"
- bar_max="800.f"
- tick_spacing="100.f"
- label_spacing="200.f"
+ bar_max="5000.f"
+ tick_spacing="750.f"
+ label_spacing="1250.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -482,9 +526,9 @@
stat="simactivescripts"
precision="0"
bar_min="0.f"
- bar_max="800.f"
- tick_spacing="100.f"
- label_spacing="200.f"
+ bar_max="15000.f"
+ tick_spacing="1875.f"
+ label_spacing="3750.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -497,9 +541,9 @@
unit_label="eps"
precision="0"
bar_min="0.f"
- bar_max="20000.f"
- tick_spacing="2500.f"
- label_spacing="5000.f"
+ bar_max="5000.f"
+ tick_spacing="750.f"
+ label_spacing="1250.f"
show_per_sec="false"
show_bar="false"
show_mean="false" >
@@ -568,7 +612,7 @@
label="Total Unacked Bytes"
stat="simtotalunackedbytes"
unit_label="kb"
- precision="0"
+ precision="1"
bar_min="0.f"
bar_max="100000.f"
tick_spacing="25000.f"
@@ -587,7 +631,7 @@
label="Total Frame Time"
stat="simframemsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -602,7 +646,7 @@
label="Net Time"
stat="simnetmsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -617,7 +661,7 @@
label="Physics Time"
stat="simsimphysicsmsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -632,7 +676,7 @@
label="Simulation Time"
stat="simsimothermsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -647,7 +691,7 @@
label="Agent Time"
stat="simagentmsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -662,7 +706,7 @@
label="Images Time"
stat="simimagesmsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -677,7 +721,7 @@
label="Script Time"
stat="simscriptmsec"
unit_label="ms"
- precision="1"
+ precision="3"
bar_min="0.f"
bar_max="40.f"
tick_spacing="10.f"
@@ -686,6 +730,97 @@
show_bar="false"
show_mean="false" >
</stat_bar>
+
+ <stat_bar
+ name="simsparemsec"
+ label="Spare Time"
+ stat="simsparemsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ <!--2nd level time blocks under 'Details' second-->
+ <stat_view
+ name="timedetails"
+ label="Time Details (ms)"
+ show_label="true">
+ <stat_bar
+ name="simsimphysicsstepmsec"
+ label=" Physics Step"
+ stat="simsimphysicsstepmsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ <stat_bar
+ name="simsimphysicsshapeupdatemsec"
+ label=" Update Phys Shapes"
+ stat="simsimphysicsshapeupdatemsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ <stat_bar
+ name="simsimphysicsothermsec"
+ label=" Physics Other"
+ stat="simsimphysicsothermsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ <stat_bar
+ name="simsleepmsec"
+ label=" Sleep Time"
+ stat="simsleepmsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ <stat_bar
+ name="simpumpiomsec"
+ label=" Pump IO"
+ stat="simpumpiomsec"
+ unit_label="ms"
+ precision="3"
+ bar_min="0.f"
+ bar_max="40.f"
+ tick_spacing="10.f"
+ label_spacing="20.f"
+ show_per_sec="false"
+ show_bar="false"
+ show_mean="false" >
+ </stat_bar>
+ </stat_view>
</stat_view>
</stat_view>
</container_view>
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index 64438fe614..41a90f5984 100644
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -2297,8 +2297,8 @@ Would you be my friend?
icon="alertmodal.tga"
label="Save Outfit"
name="SaveOutfitAs"
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
Save what I'm wearing as a new Outfit:
<tag>confirm</tag>
<form name="form">
@@ -4611,8 +4611,8 @@ Go to your [http://secondlife.com/account/ Dashboard] to see your account histor
<notification
icon="alertmodal.tga"
name="ConfirmQuit"
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
Are you sure you want to quit?
<tag>confirm</tag>
<usetemplate
@@ -4625,8 +4625,8 @@ Are you sure you want to quit?
<notification
icon="alertmodal.tga"
name="DeleteItems"
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
[QUESTION]
<tag>confirm</tag>
<usetemplate
@@ -4639,8 +4639,9 @@ Are you sure you want to quit?
<notification
icon="alertmodal.tga"
name="HelpReportAbuseEmailLL"
- type="alert"
- unique="true">
+ type="alert">
+ <unique/>
+
Use this tool to report violations of the [http://secondlife.com/corporate/tos.php Terms of Service] and [http://secondlife.com/corporate/cs.php Community Standards].
All reported abuses are investigated and resolved.
@@ -5615,8 +5616,8 @@ Message from [NAME]:
icon="notify.tga"
name="NotSafe"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
This land has damage enabled.
You can be hurt here. If you die, you will be teleported to your home location.
</notification>
@@ -5625,8 +5626,8 @@ You can be hurt here. If you die, you will be teleported to your home location.
icon="notify.tga"
name="NoFly"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
<tag>fail</tag>
This area has flying disabled.
You can&apos;t fly here.
@@ -5636,8 +5637,8 @@ You can&apos;t fly here.
icon="notify.tga"
name="PushRestricted"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
This area does not allow pushing. You can&apos;t push others here unless you own the land.
</notification>
@@ -5645,8 +5646,8 @@ This area does not allow pushing. You can&apos;t push others here unless you own
icon="notify.tga"
name="NoVoice"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
This area has voice chat disabled. You won&apos;t be able to hear anyone talking.
<tag>voice</tag>
</notification>
@@ -5655,8 +5656,8 @@ This area has voice chat disabled. You won&apos;t be able to hear anyone talking
icon="notify.tga"
name="NoBuild"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
This area has building disabled. You can&apos;t build or rez objects here.
</notification>
@@ -5664,8 +5665,8 @@ This area has building disabled. You can&apos;t build or rez objects here.
icon="notify.tga"
name="SeeAvatars"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
This parcel hides avatars and text chat from another parcel. You can&apos;t see other residents outside the parcel, and those outside are not able to see you. Regular text chat on channel 0 is also blocked.
</notification>
@@ -6553,8 +6554,8 @@ The voice call you are trying to join, [VOICE_CHANNEL_NAME], has reached maximum
<notification
icon="notifytip.tga"
name="ProximalVoiceChannelFull"
- type="notifytip"
- unique="true">
+ type="notifytip">
+ <unique/>
We&apos;re sorry. This area has reached maximum capacity for voice conversations. Please try to use voice in another area.
<tag>fail</tag>
<tag>voice</tag>
@@ -6622,8 +6623,8 @@ Failed to connect to [VOICE_CHANNEL_NAME], please try again later. You will now
duration="10"
icon="notifytip.tga"
name="VoiceLoginRetry"
- type="notifytip"
- unique="true">
+ type="notifytip">
+ <unique/>
We are creating a voice channel for you. This may take up to one minute.
<tag>status</tag>
<tag>voice</tag>
@@ -6634,8 +6635,8 @@ We are creating a voice channel for you. This may take up to one minute.
name="VoiceEffectsExpired"
sound="UISndAlert"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
One or more of your subscribed Voice Morphs has expired.
[[URL] Click here] to renew your subscription.
<tag>fail</tag>
@@ -6647,8 +6648,8 @@ One or more of your subscribed Voice Morphs has expired.
name="VoiceEffectsExpiredInUse"
sound="UISndAlert"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
The active Voice Morph has expired, your normal voice settings have been applied.
[[URL] Click here] to renew your subscription.
<tag>fail</tag>
@@ -6660,8 +6661,8 @@ The active Voice Morph has expired, your normal voice settings have been applied
name="VoiceEffectsWillExpire"
sound="UISndAlert"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
One or more of your Voice Morphs will expire in less than [INTERVAL] days.
[[URL] Click here] to renew your subscription.
<tag>fail</tag>
@@ -6673,8 +6674,8 @@ One or more of your Voice Morphs will expire in less than [INTERVAL] days.
name="VoiceEffectsNew"
sound="UISndAlert"
persist="true"
- type="notify"
- unique="true">
+ type="notify">
+ <unique/>
New Voice Morphs are available!
<tag>voice</tag>
</notification>
@@ -7075,8 +7076,9 @@ Are you sure you want to leave this call?
ignoretext="Confirm before I leave call"
name="okcancelignore"
notext="No"
- yestext="Yes"
- unique="true"/>
+ yestext="Yes">
+ <unique/>
+ </usetemplate>
</notification>
<notification
@@ -7095,31 +7097,31 @@ Mute everyone?
ignoretext="Confirm before I mute all participants in a group call"
name="okcancelignore"
yestext="Ok"
- notext="Cancel"
- unique="true"/>
+ notext="Cancel">
+ <unique/>
+ </usetemplate>
</notification>
<notification
name="HintChat"
label="Chat"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
To join the conversation, type into the chat field below.
</notification>
<notification
name="HintSit"
-
label="Stand"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
To stand up and exit the sitting position, click the Stand button.
</notification>
<notification
name="HintSpeak"
label="Speak"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
Click the Speak button to turn your microphone on and off.
Click on the up arrow to see the voice control panel.
@@ -7130,32 +7132,32 @@ Hiding the Speak button will disable the voice feature.
<notification
name="HintDestinationGuide"
label="Explore the World"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
The Destination Guide contains thousands of new places to discover. Select a location and choose Teleport to start exploring.
</notification>
<notification
name="HintSidePanel"
label="Side Panel"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
Get quick access to your inventory, outfits, profiles and more in the side panel.
</notification>
<notification
name="HintMove"
label="Move"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
To walk or run, open the Move Panel and use the directional arrows to navigate. You can also use the directional keys on your keyboard.
</notification>
<notification
name="HintMoveClick"
label=""
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
1. Click to Walk
Click anywhere on the ground to walk to that spot.
@@ -7167,8 +7169,8 @@ Click and drag anywhere on the world to rotate your view
<notification
name="HintDisplayName"
label="Display Name"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
Set your customizable display name here. This is in addition to your unique username, which can't be changed. You can change how you see other people's names in your preferences.
</notification>
@@ -7176,8 +7178,8 @@ Click and drag anywhere on the world to rotate your view
<notification
name="HintView"
label="View"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
To change your camera view, use the Orbit and Pan controls. Reset your view by pressing Escape or walking.
<tag>custom_skin</tag>
</notification>
@@ -7185,16 +7187,16 @@ Click and drag anywhere on the world to rotate your view
<notification
name="HintInventory"
label="Inventory"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
Check your inventory to find items. Newest items can be easily found in the Recent tab.
</notification>
<notification
name="HintLindenDollar"
label="You've got Linden Dollars!"
- type="hint"
- unique="true">
+ type="hint">
+ <unique/>
Here's your current balance of L$. Click Buy L$ to purchase more Linden Dollars.
<tag>funds</tag>
</notification>
@@ -7383,8 +7385,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="ModeChange"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
Changing modes requires you to quit and restart.
<tag>confirm</tag>
<usetemplate
@@ -7396,8 +7398,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoClassifieds"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Creation and editing of Classifieds is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
@@ -7410,8 +7412,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoGroupInfo"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Creation and editing of Groups is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
@@ -7424,8 +7426,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoPlaceInfo"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Viewing place profile is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
@@ -7438,8 +7440,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoPicks"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Creation and editing of Picks is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
@@ -7452,8 +7454,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoWorldMap"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Viewing of the world map is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
@@ -7466,8 +7468,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoVoiceCall"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Voice calls are only available in Advanced mode. Would you like to logout and change modes?
@@ -7480,8 +7482,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoAvatarShare"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Sharing is only available in Advanced mode. Would you like to logout and change modes?
@@ -7494,8 +7496,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoAvatarPay"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Paying other residents is only available in Advanced mode. Would you like to logout and change modes?
@@ -7508,8 +7510,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoInventory"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Viewing inventory is only available in Advanced mode. Would you like to logout and change modes?
@@ -7522,8 +7524,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoAppearance"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
The appearance editor is only available in Advanced mode. Would you like to logout and change modes?
@@ -7536,8 +7538,8 @@ The site at &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; in realm &apos;
<notification
name="NoSearch"
label=""
- type="alertmodal"
- unique="true">
+ type="alertmodal">
+ <unique/>
<tag>fail</tag>
<tag>confirm</tag>
Search is only available in Advanced mode. Would you like to logout and change modes?
diff --git a/indra/newview/skins/default/xui/en/panel_preferences_move.xml b/indra/newview/skins/default/xui/en/panel_preferences_move.xml
index 1a8aae7f91..cb547d7c6b 100644
--- a/indra/newview/skins/default/xui/en/panel_preferences_move.xml
+++ b/indra/newview/skins/default/xui/en/panel_preferences_move.xml
@@ -105,16 +105,61 @@
mouse_opaque="false"
visible="true"
width="18"
- top_pad="2"
+ top_pad="10"
left="30" />
+ <text
+ follows="left|top"
+ type="string"
+ length="1"
+ height="10"
+ layout="topleft"
+ left="78"
+ name="keyboard_lbl"
+ width="270"
+ top_delta="2">
+ Keyboard:
+ </text>
+ <check_box
+ control_name="ArrowKeysAlwaysMove"
+ follows="left|top"
+ height="20"
+ label="Arrow keys always move me"
+ layout="topleft"
+ left_delta="5"
+ name="arrow_keys_move_avatar_check"
+ width="237"
+ top_pad="5"/>
+ <check_box
+ control_name="AllowTapTapHoldRun"
+ follows="left|top"
+ height="20"
+ label="Tap-tap-hold to run"
+ layout="topleft"
+ left_delta="0"
+ name="tap_tap_hold_to_run"
+ width="237"
+ top_pad="0"/>
+ <text
+ follows="left|top"
+ type="string"
+ length="1"
+ height="10"
+ layout="topleft"
+ left="78"
+ name="mouse_lbl"
+ width="270"
+ top_pad="15">
+ Mouse:
+ </text>
<check_box
control_name="FirstPersonAvatarVisible"
follows="left|top"
height="20"
label="Show me in Mouselook"
layout="topleft"
- left_pad="30"
+ left_delta="5"
name="first_person_avatar_visible"
+ top_pad="5"
width="256" />
<text
type="string"
@@ -136,7 +181,7 @@
initial_value="2"
layout="topleft"
show_text="false"
- left_pad="5"
+ left_pad="0"
max_val="15"
name="mouse_sensitivity"
top_delta="-1"
@@ -150,63 +195,70 @@
name="invert_mouse"
top_delta="0"
width="128" />
- <check_box
- control_name="ArrowKeysAlwaysMove"
+ <text
follows="left|top"
- height="20"
- label="Arrow keys always move me"
+ type="string"
+ length="1"
+ height="10"
layout="topleft"
- left="78"
- name="arrow_keys_move_avatar_check"
- width="237"
- top_pad="10"/>
- <check_box
- control_name="AllowTapTapHoldRun"
- follows="left|top"
- height="20"
- label="Tap-tap-hold to run"
+ left="86"
+ name="single_click_action_lbl"
+ width="150"
+ top_pad="20">
+ Single click on land:
+ </text>
+ <combo_box
+ height="23"
layout="topleft"
- left_delta="0"
- name="tap_tap_hold_to_run"
- width="237"
- top_pad="0"/>
- <check_box
+ left_pad="10"
+ top_delta="-6"
+ name="single_click_action_combo"
+ width="200">
+ <combo_box.item
+ label="No action"
+ name="0"
+ value="0"/>
+ <combo_box.item
+ label="Move to clicked point"
+ name="1"
+ value="1"/>
+ <combo_box.commit_callback
+ function="Pref.ClickActionChange"/>
+ </combo_box>
+ <text
follows="left|top"
- height="20"
- label="Double-Click to:"
+ type="string"
+ length="1"
+ height="10"
layout="topleft"
- left_delta="0"
- name="double_click_chkbox"
- width="237"
- top_pad="0">
- <check_box.commit_callback
- function="Pref.CommitDoubleClickChekbox"/>
- </check_box>
- <radio_group
- height="20"
- layout="topleft"
- left_delta="17"
- top_pad="2"
- name="double_click_action">
- <radio_item
- height="16"
- label="Teleport"
- layout="topleft"
- left="0"
- name="radio_teleport"
- top_delta="20"
- width="110" />
- <radio_item
- height="16"
- label="Auto-pilot"
- left_pad="0"
- layout="topleft"
- name="radio_autopilot"
- top_delta="0"
- width="75" />
- <radio_group.commit_callback
- function="Pref.CommitRadioDoubleClick"/>
- </radio_group>
+ left="86"
+ name="double_click_action_lbl"
+ width="150"
+ top_pad="12">
+ Double click on land:
+ </text>
+ <combo_box
+ height="23"
+ layout="topleft"
+ left_pad="10"
+ top_delta="-6"
+ name="double_click_action_combo"
+ width="200">
+ <combo_box.item
+ label="No action"
+ name="0"
+ value="0"/>
+ <combo_box.item
+ label="Move to clicked point"
+ name="1"
+ value="1"/>
+ <combo_box.item
+ label="Teleport to clicked point"
+ name="2"
+ value="2"/>
+ <combo_box.commit_callback
+ function="Pref.ClickActionChange"/>
+ </combo_box>
<button
height="23"
label="Other Devices"
diff --git a/indra/newview/skins/default/xui/en/sidepanel_task_info.xml b/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
index c2394a3fa2..6600339ad7 100644
--- a/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
+++ b/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
@@ -55,7 +55,7 @@
Mixed Sale
</panel.string>
<button
- follows="top|right"
+ follows="top|left"
height="24"
image_hover_unselected="BackButton_Over"
image_pressed="BackButton_Press"
diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml
index 5d2db8cc4c..a41330c9f6 100644
--- a/indra/newview/skins/default/xui/en/strings.xml
+++ b/indra/newview/skins/default/xui/en/strings.xml
@@ -3439,7 +3439,7 @@ Abuse Report</string>
<string name="Female - Stick tougue out">Female - Stick tougue out</string>
<string name="Female - Wow">Female - Wow</string>
- <string name="/bow1">/bow1</string>
+ <string name="/bow">/bow</string>
<string name="/clap">/clap</string>
<string name="/count">/count</string>
<string name="/extinguish">/extinguish</string>
diff --git a/indra/newview/skins/default/xui/es/floater_about.xml b/indra/newview/skins/default/xui/es/floater_about.xml
index 125eb79d04..93bb8444b4 100644
--- a/indra/newview/skins/default/xui/es/floater_about.xml
+++ b/indra/newview/skins/default/xui/es/floater_about.xml
@@ -42,15 +42,23 @@ Versión del servidor de voz: [VOICE_VERSION]
<button label="Copiar al portapapeles" name="copy_btn" width="165"/>
</panel>
<panel label="Créditos" name="credits_panel">
- <text_editor name="credits_editor">
- Te ofrecen Second Life Philip, Tessa, Andrew, Cory, Ian, James, Phoenix, Ryan, Haney, Dan, Char, Ben, John, Tanya, Eddie, Richard, Mitch, Doug, Eric, Frank, Bruce, Aaron, Peter, Alice, Charlie, Debra, Eileen, Helen, Janet, Steffan, Steve, Tom, Mark, Hunter, Xenon, Burgess, Bill, Jim, Lee, Hamlet, Daniel, Jeff, Todd, Sarah, Tim, Stephanie, Colin, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Jack, Vektor, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Jesse, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Yuko, Makiko, Thomas, Harry, Seth, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Brad, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, Beez, Milo, Hermia, Red, Thrax, Gulliver, Joe, Sally, Paul, Jose, Rejean, Dore, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, Dustin, George, Del, Matthew, Cat, Jacqui, Adrian, Viola, Alfred, Noel, Irfan, Yool, Rika, Jane, Frontier, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Jeremy, JP, Jake, Anthony, Maurice, Madhavi, Leopard, Kyle, Joon, Bert, Belinda, Jon, Kristi, Bridie, Pramod, Socrates, Maria, Aric, Adreanne, Jay, Kari, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Colossus, Zen, BigPapi, Pastrami, Kurz, Mani, Neuro, Mel, Sardonyx, MJ, Rowan, Sgt, Elvis, Samuel, Leo, Bryan, Niko, Austin, Soft, Poppy, Rachel, Aki, Banzai, Alexa, Sue, Bender, CG, Angelo, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Rothman, Niall, Marin, Allison, Katie, Dawn, Dusty, Katt, Judy, Andrea, Ambroff, Infinity, Rico, Gail, Kalpana, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Maestro, Simone, Yang, T, Shannon, Nelson, Khanh, Scott, Courtney, Charlene, Quixote, Susan, Zed, Amanda, Katelin, Enkidu, Roxie, Esbee, JoRoan, Scarlet, Tay, Kevin, Wolfgang, Johnny, Ray, Andren, Merov, Bob, Rand, Howard, Callen, Heff, Galen, Newell, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, Ashley, JessieAnn, Huseby, Karina, Paris, Kurt, Rick, Lis, Kotler, Theeba, Lynx, Murphy, Doten, Taka, Norm, Jillian, Marcus, Mae, Novack, Esther, Perry, Dana, Ducot, Javier, Porter, Madison, Gecko, Dough, JR, Gisele, Crimp, Norie, Arch, Kimi, Fisher, Barbara, Jason, Peggy, Bernard, Jules, Leroy, Eva, Khederian, Campbell, Vogt, Masido, Karel, Torres, Lo, Breezer, Delby, Rountree, Anna, Servus, Rue, Itiaes, Chuck, Luna, Novella, Zaza, Wen, Gino, Lex, Cassandra, Limey, Nancy, Anukul, Silver, Brodesky, Jinsai, Squid, Gez, Rakesh, Ladan, Edelman, Marcet, Squire, Tatem, Tony, Jerm, Tia, Falcon, BK, Tiggs, Driscoll, Bacon, Timothee, Cru, Carmilla, Coyot, Webb, Kazu, Rudas, LJ, Sea, Ali Wallace, Bewest, Pup, Drub, Dragon, Inoshiro, Byron, Rhett, Xandix, Aimee, Fredrik, Thor, Teddy, Baron, Nelly, Ghengis, Epic, Eli, Stone, Grapes, Irie, Prep, Scobu, Valerie, Alain, y muchos otros.
-
-Gracias a estos Residentes por ayudarnos a estar seguros de que, con todo, esta es la mejor versión: Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan, y muchos otros.
-
-
-
-
-&quot;El trabajo sigue avanzando, la causa perdura, la esperanza aún vive, y los sueños no morirán jamás&quot; - Edward Kennedy
+ <text name="linden_intro">
+ Second Life ofrecido por los Lindens:
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ con contribuciones de código abierto de:
+ </text>
+ <text_editor name="contrib_names">
+ Dummy Name sustituido durante la ejecución
+ </text_editor>
+ <text name="trans_intro">
+ y traducido por:
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name sustituido durante la ejecución
</text_editor>
</panel>
<panel label="Licencias" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/es/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/es/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..f656f5d662
--- /dev/null
+++ b/indra/newview/skins/default/xui/es/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="Configuración de proxy">
+ <check_box initial_value="false" label="Usar proxy HTTP para páginas web" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ Proxy HTTP:
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="El nombre DNS o la dirección IP del proxy HTTP que quieres usar."/>
+ <spinner label="Nº del puerto:" name="web_proxy_port" tool_tip="El puerto del proxy HTTP que quieres usar."/>
+ <check_box label="Usar proxy SOCKS 5 para el tráfico UDP" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ Proxy SOCKS 5:
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="El nombre DNS o la dirección IP del proxy SOCKS 5 que quieres usar."/>
+ <spinner label="Nº del puerto:" name="socks_proxy_port" tool_tip="El puerto del proxy SOCKS 5 que quieres usar."/>
+ <text name="socks_auth_label">
+ Autenticación SOCKS:
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="Sin autenticación" name="Socks5NoAuth" tool_tip="El proxy Socks5 no necesita autenticación." value="Ninguno"/>
+ <radio_item label="Nombre de usuario/contraseña" name="Socks5UserPass" tool_tip="El proxy Socks5 necesita autenticación con nombre de usuario y contraseña." value="UserPass"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ Nombre de usuario:
+ </text>
+ <text name="socks5_password_label">
+ Contraseña:
+ </text>
+ <line_editor name="socks5_username" tool_tip="El nombre de usuario utilizado para la autenticación con tu servidor SOCKS 5"/>
+ <line_editor name="socks5_password" tool_tip="La contraseña utilizada para la autenticación con tu servidor SOCKS 5"/>
+ <text name="other_proxy_label">
+ Otro proxy de tráfico HTTP:
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="No usar proxy" name="OtherNoProxy" tool_tip="El tráfico HTTP no web NO se enviará a un proxy." value="Ninguno"/>
+ <radio_item label="Usar proxy HTTP" name="OtherHTTPProxy" tool_tip="HTTP no web se transmitirá a través del proxy web configurado." value="Web"/>
+ <radio_item label="Usar Proxy SOCKS 5" name="OtherSocksProxy" tool_tip="El tráfico HTTP no web se transmitirá a través del proxy Socks 5 configurado." value="Socks"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="Cancelar" label_selected="Cancelar" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/es/menu_inventory.xml b/indra/newview/skins/default/xui/es/menu_inventory.xml
index e873d31580..f1f1ef091f 100644
--- a/indra/newview/skins/default/xui/es/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/es/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="Editar" name="Wearable Edit"/>
<menu_item_call label="Añadir" name="Wearable Add"/>
<menu_item_call label="Quitarse" name="Take Off"/>
+ <menu_item_call label="Copiar al Buzón de salida de comerciante" name="Merchant Copy"/>
+ <menu_item_call label="Mover al Buzón de salida de comerciante" name="Merchant Move"/>
<menu_item_call label="--sin opciones--" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/es/menu_media_ctrl.xml b/indra/newview/skins/default/xui/es/menu_media_ctrl.xml
index 8ea9286d8e..b4dfe9907a 100644
--- a/indra/newview/skins/default/xui/es/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/es/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="Cortar" name="Cut"/>
<menu_item_call label="Copiar" name="Copy"/>
<menu_item_call label="Pegar" name="Paste"/>
+ <menu_item_call label="Abrir el inspector web" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/es/menu_mode_change.xml b/indra/newview/skins/default/xui/es/menu_mode_change.xml
new file mode 100644
index 0000000000..608505d192
--- /dev/null
+++ b/indra/newview/skins/default/xui/es/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="Básico" name="BasicMode"/>
+ <menu_item_check label="Avanzado" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/es/menu_viewer.xml b/indra/newview/skins/default/xui/es/menu_viewer.xml
index b0d16d1ca4..bc8a5731ab 100644
--- a/indra/newview/skins/default/xui/es/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/es/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="Sonido ([COST] L$)..." name="Upload Sound"/>
<menu_item_call label="Animación ([COST] L$)..." name="Upload Animation"/>
<menu_item_call label="Modelo..." name="Upload Model"/>
- <menu_item_call label="Asistente de modelo..." name="Upload Model Wizard"/>
<menu_item_call label="Masivo ([COST] L$ por archivo)..." name="Bulk Upload"/>
</menu>
<menu_item_call label="Deshacer" name="Undo"/>
@@ -248,6 +247,7 @@
<menu_item_check label="Mostrar información de textura" name="Show Texture Info"/>
<menu_item_check label="Show Color Under Cursor" name="Show Color Under Cursor"/>
<menu_item_check label="Mostrar la memoria" name="Show Memory"/>
+ <menu_item_check label="Mostrar información de memoria privada" name="Show Private Mem Info"/>
<menu_item_check label="Show Updates to Objects" name="Show Updates"/>
</menu>
<menu label="Force an Error" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/es/notifications.xml b/indra/newview/skins/default/xui/es/notifications.xml
index 2ec1b333a9..4fb29b9427 100644
--- a/indra/newview/skins/default/xui/es/notifications.xml
+++ b/indra/newview/skins/default/xui/es/notifications.xml
@@ -85,6 +85,19 @@ Asegúrate de que tu conexión a Internet está funcionando adecuadamente.
¿Guardar los cambios en las ropas o partes del cuerpo actuales?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="No guardarlos" yestext="Guardarlos"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ No tienes permiso para copiar este objeto en el Buzón de salida de comerciante. ¿Estás seguro de que quieres mover el objeto siguiente?
+ [ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="No" yestext="Sí"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ Envío al mercado finalizado.
+ <usetemplate name="okbutton" yestext="¡Hurra!"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ El envío al mercado ha tenido errores. Corrige los problemas de tu buzón de salida y repite la operación. Muchas gracias.
+ <usetemplate name="okbutton" yestext="Reintentar"/>
+ </notification>
<notification name="CompileQueueSaveText">
Hubo un problema al subir el texto de un script por la siguiente razón: [REASON]. Por favor, inténtalo más tarde.
</notification>
@@ -2430,7 +2443,15 @@ Por favor, vuelve a intentarlo en unos momentos.
<form name="form">
<button name="Keep" text="Guardar"/>
<button name="Discard" text="Descartar"/>
- <button name="Mute" text="Ignorar"/>
+ <button name="Mute" text="Ignorar al propietario"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ Tu objeto de nombre &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; te ha dado este [OBJECTTYPE]:
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="Guardar"/>
+ <button name="Discard" text="Descartar"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2574,6 +2595,7 @@ Si no confias en este objeto y en su creador, deberías rehusar esta petición.
&apos;&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; de [NAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Ignorar"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -2581,6 +2603,7 @@ Si no confias en este objeto y en su creador, deberías rehusar esta petición.
&apos;&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; de [GROUPNAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Ignorar"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -2906,6 +2929,12 @@ Al ocultar el botón Hablar se desactiva la función de voz.
<notification label="¡Tienes dólares Linden!" name="HintLindenDollar">
Éste es tu saldo actual de L$. Haz clic en Comprar L$ para comprar más dólares Linden.
</notification>
+ <notification name="LowMemory">
+ Tu bloque de memoria es insuficiente. Algunas funciones de SL se han desactivado para evitar una caída. Por favor cierra otras aplicaciones. Si el problema continúa, reinicia SL.
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ SL saldrá en 30 segundos porque no hay memoria suficiente.
+ </notification>
<notification name="PopupAttempt">
Se ha impedido que se abriera una ventana emergente.
<form name="form">
@@ -2913,6 +2942,54 @@ Al ocultar el botón Hablar se desactiva la función de voz.
<button name="open" text="Abrir ventana emergente"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ El proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rechazado la conexión, no está permitida por el juego de reglas.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ El proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rechazado la conexión, no se ha podido abrir el canal TCP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ El proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rechazado el sistema de autenticación seleccionado.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ El proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; contestó que tus credenciales no son válidas.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ El proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rechazado la petición asociada de UDP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ No se pudo establecer una conexión con el servidor proxy SOCKS 5 &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ Error de proxy desconocido con el servidor &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ Dirección o puerto de proxy SOCKS no válidos &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ Nombre de usuario o contraseña de SOCKS 5 no válidos.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ Dirección o puerto de proxy HTTP no válidos &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ Dirección o puerto de proxy SOCKS no válidos &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ La configuración del puerto se activará cuando reinicies [APP_NAME].
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
El sitio en &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; de la plataforma &apos;[REALM]&apos; requiere un nombre de usuario y una contraseña.
<form name="form">
diff --git a/indra/newview/skins/default/xui/es/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/es/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..9e2f3c3adc
--- /dev/null
+++ b/indra/newview/skins/default/xui/es/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="Arrastra y coloca aquí los objetos que desees preparar para venderlos en tu tienda"/>
diff --git a/indra/newview/skins/default/xui/es/panel_preferences_setup.xml b/indra/newview/skins/default/xui/es/panel_preferences_setup.xml
index 9b453fd807..3de18654b5 100644
--- a/indra/newview/skins/default/xui/es/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/es/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="Personalizar el puerto" name="connection_port_enabled"/>
<spinner label="Nº del puerto:" name="connection_port"/>
- <text name="cache_size_label_l">
- Tamaño de la caché
- </text>
- <text name="text_box5">
- MB
- </text>
- <text name="Cache location">
- Localización de la caché:
- </text>
- <button label="Elegir" label_selected="Elegir" name="set_cache"/>
- <button label="Recuperar" label_selected="Reconfigurar" name="reset_cache"/>
<text name="Web:">
Web:
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Aceptar las &apos;cookies&apos;" name="cookies_enabled"/>
<check_box initial_value="true" label="Activar Javascript" name="browser_javascript_enabled"/>
<check_box initial_value="falso" label="Permitir las ventanas emergentes en el navegador" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Activar web proxy" name="web_proxy_enabled"/>
- <text name="Proxy location">
- Localización del proxy:
- </text>
- <line_editor name="web_proxy_editor" tool_tip="Nombre o dirección IP del proxy que quieres usar"/>
- <spinner label="Nº del puerto:" name="web_proxy_port"/>
<text name="Software updates:">
Actualizaciones de software:
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="Instalar automáticamente" name="Install_automatically"/>
<combo_box.item label="Descargar e instalar actualizaciones manualmente" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ Configuración de proxy:
+ </text>
+ <button label="Ajustar la configuración de proxy" label_selected="Elegir" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/es/panel_status_bar.xml b/indra/newview/skins/default/xui/es/panel_status_bar.xml
index ab76d3f994..0391258b75 100644
--- a/indra/newview/skins/default/xui/es/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/es/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domingo:Lunes:Martes:Miércoles:Jueves:Viernes:Sábado
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Enero:Febrero:Marzo:Abril:Mayo:Junio:Julio:Agosto:Septiembre:Octubre:Noviembre:Diciembre
- </panel.string>
<panel.string name="packet_loss_tooltip">
Pérdida de paquetes
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="Haz clic para actualizar tu saldo en L$" value="20 L$"/>
<button label="COMPRAR L$" name="buyL" tool_tip="Pulsa para comprar más L$"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="Selecciona el modo. Elige Básico para una exploración rápida y fácil y para chatear. Elige Avanzado para tener acceso a más funciones.">
+ <combo_box.item label="Modo Básico" name="Basic"/>
+ <combo_box.item label="Modo Avanzado" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="Hora actual (Pacífico)">
24:00 AM PST
</text>
diff --git a/indra/newview/skins/default/xui/es/sidepanel_inventory.xml b/indra/newview/skins/default/xui/es/sidepanel_inventory.xml
index 84d19c703b..aae9bfc113 100644
--- a/indra/newview/skins/default/xui/es/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/es/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="Cosas" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- Objetos recibidos ([NUM])
- </string>
- <string name="InboxLabelNoArg">
- Objetos recibidos
- </string>
- <button label="Objetos recibidos" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] Nuevos
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- Aquí se entregarán las compras realizadas en el mercado.
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="Buzón de salida de comerciante" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="Poner en el escaparate de Mi Mercado"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- Configura tu cuenta de comerciante para utilizar esta función.
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ Objetos recibidos ([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ Objetos recibidos
+ </string>
+ <button label="Objetos recibidos" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] Nuevos
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ Aquí se entregarán las compras realizadas en el mercado.
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ Buzón de salida de comerciante ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ Buzón de salida de comerciante
+ </string>
+ <button label="Buzón de salida de comerciante" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="Poner en el escaparate de Mi Mercado"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ Cargando...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/es/strings.xml b/indra/newview/skins/default/xui/es/strings.xml
index 2c33177ab4..cc044ba416 100644
--- a/indra/newview/skins/default/xui/es/strings.xml
+++ b/indra/newview/skins/default/xui/es/strings.xml
@@ -327,6 +327,18 @@ Intenta iniciar sesión de nuevo en unos instantes.
Aquí se puede arrastrar sólo un ítem
</string>
<string name="TooltipPrice" value="[AMOUNT] L$:"/>
+ <string name="TooltipOutboxNoTransfer">
+ Uno o varios de estos objetos no se pueden vender o transferir a otro usuario.
+ </string>
+ <string name="TooltipOutboxWorn">
+ Llevas puestos uno o más de estos objetos. Quítatelos del avatar y vuelve a intentar moverlos.
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ Esta carpeta tiene demasiados niveles de subcarpetas. Reorganiza las carpetas interiores de forma que tengas como máximo 4 niveles de profundidad (la carpeta raíz contiene A, que contiene B, que contiene C).
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ Esta carpeta contiene más de 200 objetos. Guarda algunos objetos en una caja para disminuir su cantidad.
+ </string>
<string name="TooltipHttpUrl">
Pulsa para ver esta página web
</string>
@@ -1183,8 +1195,65 @@ Intenta iniciar sesión de nuevo en unos instantes.
<string name="InventoryInboxNoItems">
Aquí se entregarán los objetos comprados en el mercado.
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ Tu Buzón de salida de comerciante no está configurado correctamente
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ Error de configuración del Buzón de salida de comerciante
+ </string>
+ <string name="InventoryOutboxCreationError">
+ Ponte en contacto con el servicio de atención al cliente para resolver el problema.
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ Cualquiera puede vender objetos en el mercado
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ ¡Hazte comerciante!
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] El Mercado de Second Life] pone en venta más de un millón de productos virtuales, todos ellos creados por residentes. Tú también puedes vender los objetos que crees, así como algunos de los objetos que hayas comprado. Es fácil y es gratuito. [[LEARN_MORE_URL] Más información] o [[CREATE_STORE_URL] crea una tienda] en el mercado para empezar.
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ Una nueva forma para enviar objetos al mercado
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ Arrastra y coloca aquí los objetos que desees preparar para venderlos en el mercado
+ </string>
<string name="InventoryOutboxNoItems">
- Arrastra objetos aquí para preparar una lista del escaparate de tu mercado.
+ Arrastra a esta zona los objetos o carpetas que desees vender. Aparecerá una copia del objeto, sin quitarlo de tu inventario, salvo que el objeto arrastrado sea &quot;no copiable&quot;. Cuando estés listo para enviar los objetos al mercado, pulsa en el botón Subir. Cuando se hayan trasladado los objetos a tu inventario en el mercado, desaparecerán de esta carpeta.
+ </string>
+ <string name="Marketplace Error None">
+ Sin errores
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ Error: Para poder enviar objetos al mercado, debes registrarte como comerciante (es gratis).
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ Error: Esta carpeta está vacía.
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ Error: Este objeto no se pudo subir porque tu cuenta de comerciante tiene demasiados objetos que no están asociados a productos. Para corregirlo, inicia sesión en la página web del mercado y asocia más objetos.
+ </string>
+ <string name="Marketplace Error Object Limit">
+ Error: Este elemento contiene demasiados objetos. Para corregir el error, guarda objetos en cajas de forma que el total de objetos sea menor que 200.
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ Error: Este objeto contiene demasiados niveles de carpetas anidadas. Reorganízalo de forma que tenga como máximo 3 niveles de carpetas anidadas.
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ Error: Este objeto no se puede vender en el mercado.
+ </string>
+ <string name="Marketplace Error Internal Import">
+ Error: Este objeto tiene un problema. Vuelve a intentarlo más tarde.
</string>
<string name="no_transfer" value="(no transferible)"/>
<string name="no_modify" value="(no modificable)"/>
@@ -4089,8 +4158,8 @@ Denuncia de infracción
<string name="Female - Wow">
Mujer - Admiración
</string>
- <string name="/bow">
- /reverencia
+ <string name="/bow1">
+ /reverencia1
</string>
<string name="/clap">
/aplaudir
diff --git a/indra/newview/skins/default/xui/fr/floater_about.xml b/indra/newview/skins/default/xui/fr/floater_about.xml
index e3e3169161..d088cb3244 100644
--- a/indra/newview/skins/default/xui/fr/floater_about.xml
+++ b/indra/newview/skins/default/xui/fr/floater_about.xml
@@ -42,15 +42,23 @@ Version serveur vocal : [VOICE_VERSION]
<button label="Copier dans le presse-papiers" name="copy_btn"/>
</panel>
<panel label="Remerciements" name="credits_panel">
- <text_editor name="credits_editor">
- Second Life existe grâce aux efforts de Philip, Tessa, Andrew, Cory, Ian, James, Phoenix, Ryan, Haney, Dan, Char, Ben, John, Tanya, Eddie, Richard, Mitch, Doug, Eric, Frank, Bruce, Aaron, Peter, Alice, Charlie, Debra, Eileen, Helen, Janet, Steffan, Steve, Tom, Mark, Hunter, Xenon, Burgess, Bill, Jim, Lee, Hamlet, Daniel, Jeff, Todd, Sarah, Tim, Stephanie, Colin, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Jack, Vektor, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Jesse, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Yuko, Makiko, Thomas, Harry, Seth, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Brad, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, Beez, Milo, Hermia, Red, Thrax, Gulliver, Joe, Sally, Paul, Jose, Rejean, Dore, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, Dustin, George, Del, Matthew, Cat, Jacqui, Adrian, Viola, Alfred, Noel, Irfan, Yool, Rika, Jane, Frontier, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Jeremy, JP, Jake, Anthony, Maurice, Madhavi, Leopard, Kyle, Joon, Bert, Belinda, Jon, Kristi, Bridie, Pramod, Socrates, Maria, Aric, Adreanne, Jay, Kari, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Colossus, Zen, BigPapi, Pastrami, Kurz, Mani, Neuro, Mel, Sardonyx, MJ, Rowan, Sgt, Elvis, Samuel, Leo, Bryan, Niko, Austin, Soft, Poppy, Rachel, Aki, Banzai, Alexa, Sue, Bender, CG, Angelo, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Rothman, Niall, Marin, Allison, Katie, Dawn, Dusty, Katt, Judy, Andrea, Ambroff, Infinity, Rico, Gail, Kalpana, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Maestro, Simone, Yang, T, Shannon, Nelson, Khanh, Scott, Courtney, Charlene, Quixote, Susan, Zed, Amanda, Katelin, Enkidu, Roxie, Esbee, JoRoan, Scarlet, Tay, Kevin, Wolfgang, Johnny, Ray, Andren, Merov, Bob, Rand, Howard, Callen, Heff, Galen, Newell, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, Ashley, JessieAnn, Huseby, Karina, Paris, Kurt, Rick, Lis, Kotler, Theeba, Lynx, Murphy, Doten, Taka, Norm, Jillian, Marcus, Mae, Novack, Esther, Perry, Dana, Ducot, Javier, Porter, Madison, Gecko, Dough, JR, Gisele, Crimp, Norie, Arch, Kimi, Fisher, Barbara, Jason, Peggy, Bernard, Jules, Leroy, Eva, Khederian, Campbell, Vogt, Masido, Karel, Torres, Lo, Breezer, Delby, Rountree, Anna, Servus, Rue, Itiaes, Chuck, Luna, Novella, Zaza, Wen, Gino, Lex, Cassandra, Limey, Nancy, Anukul, Silver, Brodesky, Jinsai, Squid, Gez, Rakesh, Ladan, Edelman, Marcet, Squire, Tatem, Tony, Jerm, Tia, Falcon, BK, Tiggs, Driscoll, Bacon, Timothee, Cru, Carmilla, Coyot, Webb, Kazu, Rudas, LJ, Sea, Ali Wallace, Bewest, Pup, Drub, Dragon, Inoshiro, Byron, Rhett, Xandix, Aimee, Fredrik, Thor, Teddy, Baron, Nelly, Ghengis, Epic, Eli, Stone, Grapes, Irie, Prep, Scobu, Valerie, Alain et bien d&apos;autres.
-
-Tous nos remerciements aux résidents suivants pour avoir testé cette version (la meilleure qui soit jusqu&apos;à présent) : Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk, Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, , 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan et bien d&apos;autres.
-
-
-
-
-« Le travail continue, la cause demeure, l&apos;espoir vit encore et le rêve ne mourra jamais » - Edward Kennedy
+ <text name="linden_intro">
+ Second Life vous est proposé par les Linden :
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ Contributions Open Source :
+ </text>
+ <text_editor name="contrib_names">
+ Dummy Name remplacé au moment de l&apos;exécution
+ </text_editor>
+ <text name="trans_intro">
+ Participation aux traductions :
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name remplacé au moment de l&apos;exécution
</text_editor>
</panel>
<panel label="Licences" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..020bdf928b
--- /dev/null
+++ b/indra/newview/skins/default/xui/fr/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="Paramètres de proxy">
+ <check_box initial_value="false" label="Utiliser le proxy HTTP pour les pages Web" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ Proxy HTTP :
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="Nom DNS ou adresse IP du proxy HTTP que vous souhaitez utiliser."/>
+ <spinner label="Numéro de port :" name="web_proxy_port" tool_tip="Port du proxy HTTP que vous souhaitez utiliser."/>
+ <check_box label="Utiliser le proxy SOCKS 5 pour le trafic UDP" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ Proxy SOCKS 5 :
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="Nom DNS ou adresse IP du proxy SOCKS 5 que vous souhaitez utiliser."/>
+ <spinner label="Numéro de port :" name="socks_proxy_port" tool_tip="Port du proxy SOCKS 5 que vous souhaitez utiliser."/>
+ <text name="socks_auth_label">
+ Authentification SOCKS :
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="Aucune authentification" name="Socks5NoAuth" tool_tip="Aucune authentification requise pour le proxy SOCKS 5." value="Aucune"/>
+ <radio_item label="Nom d&apos;utilisateur/Mot de passe" name="Socks5UserPass" tool_tip="Authentification par nom d&apos;utilisateur/mot de passe requise pour le proxy SOCKS 5." value="UserPass"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ Nom d&apos;utilisateur :
+ </text>
+ <text name="socks5_password_label">
+ Mot de passe :
+ </text>
+ <line_editor name="socks5_username" tool_tip="Nom d&apos;utilisateur d&apos;authentification avec votre serveur SOCKS 5."/>
+ <line_editor name="socks5_password" tool_tip="Mot de passe d&apos;authentification avec votre serveur SOCKS 5."/>
+ <text name="other_proxy_label">
+ Autre proxy de trafic HTTP :
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="Pas de proxy" name="OtherNoProxy" tool_tip="Le trafic HTTP hors Web ne sera PAS envoyé à un proxy." value="Aucun"/>
+ <radio_item label="Utiliser le proxy HTTP" name="OtherHTTPProxy" tool_tip="Le trafic HTTP hors Web sera envoyé via le proxy Web configuré." value="Web"/>
+ <radio_item label="Utiliser le proxy SOCKS 5" name="OtherSocksProxy" tool_tip="Le trafic HTTP hors Web sera envoyé via le proxy SOCKS 5 configuré." value="Socks"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="Annuler" label_selected="Annuler" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/fr/menu_inventory.xml b/indra/newview/skins/default/xui/fr/menu_inventory.xml
index fa0e264d14..53df8d11da 100644
--- a/indra/newview/skins/default/xui/fr/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/fr/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="Modifier" name="Wearable Edit"/>
<menu_item_call label="Ajouter" name="Wearable Add"/>
<menu_item_call label="Enlever" name="Take Off"/>
+ <menu_item_call label="Copier vers la boîte d&apos;envoi vendeur" name="Merchant Copy"/>
+ <menu_item_call label="Déplacer vers la boîte d&apos;envoi vendeur" name="Merchant Move"/>
<menu_item_call label="--aucune option--" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml b/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml
index 787a5b3af2..1941ad2cbf 100644
--- a/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/fr/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="Couper" name="Cut"/>
<menu_item_call label="Copier" name="Copy"/>
<menu_item_call label="Coller" name="Paste"/>
+ <menu_item_call label="Ouvrir l&apos;inspecteur Web" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/fr/menu_mode_change.xml b/indra/newview/skins/default/xui/fr/menu_mode_change.xml
new file mode 100644
index 0000000000..982a331c5b
--- /dev/null
+++ b/indra/newview/skins/default/xui/fr/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="Basique" name="BasicMode"/>
+ <menu_item_check label="Avancé" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/fr/menu_viewer.xml b/indra/newview/skins/default/xui/fr/menu_viewer.xml
index 46adc79a00..cf1dac2f3a 100644
--- a/indra/newview/skins/default/xui/fr/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/fr/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="Son ([COST] L$)..." name="Upload Sound"/>
<menu_item_call label="Animation ([COST] L$)..." name="Upload Animation"/>
<menu_item_call label="Modèle..." name="Upload Model"/>
- <menu_item_call label="Assistant Modèle..." name="Upload Model Wizard"/>
<menu_item_call label="Lot ([COST] L$ par fichier)..." name="Bulk Upload"/>
</menu>
<menu_item_call label="Annuler" name="Undo"/>
@@ -253,6 +252,7 @@
<menu_item_check label="Afficher les matrices" name="Show Matrices"/>
<menu_item_check label="Afficher la couleur sous le curseur" name="Show Color Under Cursor"/>
<menu_item_check label="Afficher la mémoire" name="Show Memory"/>
+ <menu_item_check label="Afficher les infos de mémoire privées" name="Show Private Mem Info"/>
<menu_item_check label="Afficher les mises à jour des objets" name="Show Updates"/>
</menu>
<menu label="Forcer une erreur" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/fr/notifications.xml b/indra/newview/skins/default/xui/fr/notifications.xml
index ef95a1a389..1389c49f5b 100644
--- a/indra/newview/skins/default/xui/fr/notifications.xml
+++ b/indra/newview/skins/default/xui/fr/notifications.xml
@@ -85,6 +85,19 @@ Veuillez vérifier votre connexion Internet.
Enregistrer les changements dans la partie du corps/les habits actuels ?
<usetemplate canceltext="Cancel" name="yesnocancelbuttons" notext="Ne pas enregistrer" yestext="Enregistrer"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ Vous n&apos;êtes pas autorisé à copier cet article dans la boîte d&apos;envoi vers la Place du marché. Voulez-vous vraiment déplacer l&apos;article suivant ?
+ [ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="Non" yestext="Oui"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ Chargement sur la Place du marché terminé.
+ <usetemplate name="okbutton" yestext="Hourra !"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ Chargement sur la Place du marché effectué avec des erreurs ! Corrigez les problèmes dans votre boîte d&apos;envoi et réessayez. Merci !
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="CompileQueueSaveText">
Une erreur est survenue lors du chargement du texte pour un script, suite au problème suivant : [REASON]. Veuillez réessayer ultérieurement.
</notification>
@@ -2422,7 +2435,15 @@ Veuillez réessayer dans quelques minutes.
<form name="form">
<button name="Keep" text="Garder"/>
<button name="Discard" text="Jeter"/>
- <button name="Mute" text="Ignorer"/>
+ <button name="Mute" text="Ignorer le propriétaire"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ Votre objet nommé &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; vous a donné un objet de type [OBJECTTYPE] :
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="Garder"/>
+ <button name="Discard" text="Jeter"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2566,6 +2587,7 @@ Accepter cette requête ?
&lt;nolink&gt;[TITLE]&lt;/nolink&gt; de [NAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Ignorer"/>
<button name="Ignore" text="Ignorer"/>
</form>
</notification>
@@ -2573,6 +2595,7 @@ Accepter cette requête ?
&lt;nolink&gt;[TITLE]&lt;/nolink&gt; de [GROUPNAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Ignorer"/>
<button name="Ignore" text="Ignorer"/>
</form>
</notification>
@@ -2902,6 +2925,12 @@ Cliquez sur un point dans le monde et faites glisser votre souris pour faire tou
<notification label="Vous possédez des Linden dollars !" name="HintLindenDollar">
Votre solde actuel en L$ est celui-ci. Pour y ajouter d&apos;autres Linden dollars, cliquez sur Acheter L$.
</notification>
+ <notification name="LowMemory">
+ Pool de mémoire faible. Certaines fonctions de SL ont été désactivées afin d&apos;éviter un plantage. Veuillez fermer les autres applications. Si le problème persiste, redémarrez SL.
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ Mémoire insuffisante : fermeture de SL dans 30 secondes.
+ </notification>
<notification name="PopupAttempt">
Impossible d&apos;ouvrir une fenêtre popup.
<form name="form">
@@ -2909,6 +2938,54 @@ Cliquez sur un point dans le monde et faites glisser votre souris pour faire tou
<button name="open" text="Ouvrir la fenêtre popup"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ Le proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; a refusé la connexion, non autorisée par le jeu de règles défini.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ Le proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; a refusé la connexion. Impossible d&apos;ouvrir le canal TCP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ Le proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; a refusé le système d&apos;authentification sélectionné.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ Le proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; indique que vos identifiants ne sont pas valides.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ Le proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; a refusé la demande d&apos;association UDP (UDP ASSOCIATE).
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ Connexion au serveur de proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; impossible.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ Erreur de proxy inconnue avec le serveur &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ Adresse ou port &quot;[HOST]:[PORT]&quot; de proxy SOCKS non valide.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ Nom d&apos;utilisateur ou mot de passe SOCKS 5 non valide.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ Adresse ou port &quot;[HOST]:[PORT]&quot; de proxy HTTP non valide.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ Adresse ou port &quot;[HOST]:[PORT]&quot; de proxy SOCKS non valide.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ Les paramètres de proxy seront appliqués au redémarrage de [APP_NAME].
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
Nom d&apos;utilisateur et mot de passe requis pour le site se trouvant à l&apos;emplacement suivant : &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos;, domaine &apos;[REALM]&apos;.
<form name="form">
diff --git a/indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..d947dbceb8
--- /dev/null
+++ b/indra/newview/skins/default/xui/fr/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="Glisser-déposer des articles ici afin de les préparer à la vente sur votre vitrine."/>
diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml b/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml
index e9e6e6350f..1644eefbee 100644
--- a/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml
+++ b/indra/newview/skins/default/xui/fr/panel_preferences_chat.xml
@@ -8,7 +8,7 @@
<radio_item label="Moyenne" name="radio2" value="1"/>
<radio_item label="Grande" name="radio3" value="2"/>
</radio_group>
- <check_box initial_value="true" label="Jouer l&apos;animation clavier quand vous écrivez" name="play_typing_animation"/>
+ <check_box initial_value="true" label="Exécuter l&apos;animation clavier quand vous écrivez" name="play_typing_animation"/>
<check_box label="M&apos;envoyer les IM par e-mail une fois déconnecté" name="send_im_to_email"/>
<check_box label="Activer l&apos;historique des chats et des IM en texte brut" name="plain_text_chat_history"/>
<check_box label="Bulles de chat" name="bubble_text_chat"/>
diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml
index 5bf2ef72f5..a738b2d43f 100644
--- a/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml
+++ b/indra/newview/skins/default/xui/fr/panel_preferences_graphics1.xml
@@ -51,7 +51,7 @@
<combo_box.item label="Tous les objets et avatars" name="3"/>
<combo_box.item label="Tout" name="4"/>
</combo_box>
- <slider label="Propriétés physiques de l&apos;avatar :" name="AvatarPhysicsDetail"/>
+ <slider label="Prop. physiques avatar :" name="AvatarPhysicsDetail"/>
<text name="AvatarPhysicsDetailText">
Faible
</text>
@@ -102,8 +102,8 @@
Rendu du terrain :
</text>
<radio_group name="TerrainDetailRadio">
- <radio_item label="Bas" name="0"/>
- <radio_item label="Haut" name="2"/>
+ <radio_item label="Faible" name="0"/>
+ <radio_item label="Élevé" name="2"/>
</radio_group>
--&gt;
</panel>
diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml
index 202ec779f5..3123a4c6fe 100644
--- a/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml
+++ b/indra/newview/skins/default/xui/fr/panel_preferences_privacy.xml
@@ -3,9 +3,9 @@
<panel.string name="log_in_to_change">
se connecter pour changer
</panel.string>
- <button label="Vider le cache" name="clear_cache" tool_tip="Effacer l&apos;image de connexion, le dernier lieu, l&apos;historique des téléportations et la texture du cache."/>
+ <button label="Vider l'historique" name="clear_cache" tool_tip="Effacer le cache de l&apos;image de connexion, du dernier lieu, de l&apos;historique des téléportations, Web et de texture."/>
<text name="cache_size_label_l">
- (Endroits, images, web, historique des recherches)
+ (endroits, images, web, historique des recherches)
</text>
<check_box label="M&apos;afficher dans les résultats de recherche" name="online_searchresults"/>
<check_box label="Seuls mes amis et groupes voient quand je suis en ligne" name="online_visibility"/>
diff --git a/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml b/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml
index bfe0defd56..82780c27c5 100644
--- a/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/fr/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="Port de connexion" name="connection_port_enabled"/>
<spinner label="Numéro :" name="connection_port"/>
- <text name="cache_size_label_l">
- Taille de la mémoire
- </text>
- <text name="text_box5">
- Mo
- </text>
- <text name="Cache location">
- Emplacement du cache :
- </text>
- <button label="Parcourir" label_selected="Parcourir" name="set_cache"/>
- <button label="Réinitialiser" label_selected="Réinitialiser" name="reset_cache"/>
<text name="Web:">
Web :
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Accepter les cookies" name="cookies_enabled"/>
<check_box initial_value="true" label="Activer Javascript" name="browser_javascript_enabled"/>
<check_box initial_value="false" label="Activer les fenêtres popup de navigateur de médias" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Activer le proxy Web" name="web_proxy_enabled"/>
- <text name="Proxy location">
- Emplacement du proxy :
- </text>
- <line_editor name="web_proxy_editor" tool_tip="Le nom ou adresse IP du proxy que vous souhaitez utiliser"/>
- <spinner label="Numéro de port :" label_width="95" name="web_proxy_port" width="170"/>
<text name="Software updates:">
Mises à jour logicielles :
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="Installation automatique" name="Install_automatically"/>
<combo_box.item label="Téléchargement et installation manuels" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ Paramètres de proxy :
+ </text>
+ <button label="Définir" label_selected="Parcourir" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/fr/panel_status_bar.xml b/indra/newview/skins/default/xui/fr/panel_status_bar.xml
index 69aec99e1d..2dd5c06e4d 100644
--- a/indra/newview/skins/default/xui/fr/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/fr/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Sunday:Monday:Tuesday:Wednesday:Thursday:Friday:Saturday
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- January:February:March:April:May:June:July:August:September:October:November:December
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perte de paquets
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="Cliquer sur ce bouton pour actualiser votre solde en L$." value="20 L$"/>
<button label="ACHETER L$" name="buyL" tool_tip="Cliquer pour acheter plus de L$"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="Sélectionnez un mode. Pour une exploration facile et rapide avec chat, choisissez Basique. Pour accéder à plus de fonctionnalités, choisissez Avancé.">
+ <combo_box.item label="Mode basique" name="Basic"/>
+ <combo_box.item label="Mode avancé" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="Heure actuelle (Pacifique)">
00h00 PST
</text>
diff --git a/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml b/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml
index 83543e3d0b..969bd1ac44 100644
--- a/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/fr/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="Choses" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- Articles reçus ([NUM])
- </string>
- <string name="InboxLabelNoArg">
- Articles reçus
- </string>
- <button label="Articles reçus" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] nouv.
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- Ici seront livrés les achats effectués sur la Place du marché.
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="Boîte d&apos;envoi vendeur" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="Vers ma vitrine de la Place du marché"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- Configurez votre compte de vendeur de façon à pouvoir utiliser cette fonctionnalité.
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ Articles reçus ([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ Articles reçus
+ </string>
+ <button label="Articles reçus" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] nouv.
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ Ici seront livrés les achats effectués sur la Place du marché.
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ Boîte d&apos;envoi vendeur ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ Boîte d&apos;envoi vendeur
+ </string>
+ <button label="Boîte d&apos;envoi vendeur" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="Vers ma vitrine de la Place du marché"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ Chargement...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/fr/strings.xml b/indra/newview/skins/default/xui/fr/strings.xml
index 4b4eedab8e..3a0553461a 100644
--- a/indra/newview/skins/default/xui/fr/strings.xml
+++ b/indra/newview/skins/default/xui/fr/strings.xml
@@ -339,6 +339,18 @@ Veuillez réessayer de vous connecter dans une minute.
Impossible de faire glisser plus d&apos;un objet ici
</string>
<string name="TooltipPrice" value="[AMOUNT] L$ :"/>
+ <string name="TooltipOutboxNoTransfer">
+ Impossible de vendre ou de transférer un ou plusieurs de ces objets à un autre utilisateur.
+ </string>
+ <string name="TooltipOutboxWorn">
+ Vous portez un ou plusieurs de ces objets. Retirez-les de votre avatar, puis réessayez de les déplacer.
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ Trop de niveaux de sous-dossiers dans ce dossier. Réorganisez-le de sorte qu&apos;un maximum de 4 niveaux soit utilisé (dossier racine contenant A contenant B contenant C).
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ Ce dossier contient plus de 200 objets. Regroupez une partie des articles dans un paquet afin de réduire le nombre d&apos;objets.
+ </string>
<string name="TooltipHttpUrl">
Cliquez pour afficher cette page web
</string>
@@ -1204,8 +1216,65 @@ Veuillez réessayer de vous connecter dans une minute.
<string name="InventoryInboxNoItems">
Ici seront livrés les articles achetés sur la Place du marché.
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ Configuration incorrecte de votre boîte d&apos;envoi vendeur
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ Erreur de configuration de la boîte d&apos;envoi vendeur
+ </string>
+ <string name="InventoryOutboxCreationError">
+ Veuillez contacter le service clientèle pour résoudre le problème.
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ Tout le monde peut vendre des articles sur la Place du marché
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ Devenez vendeur !
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] La Place du marché Second Life] comprend plus d&apos;un million de produits virtuels à vendre, tous créés par des résidents. Vous aussi pouvez vendre les articles que vous créez, ainsi que certains articles que vous avez achetés. Le processus est simple et la configuration gratuite. [[LEARN_MORE_URL] En savoir plus] ou [[CREATE_STORE_URL] créer une boutique] sur la Place du marché pour démarrer
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ Un nouveau moyen d&apos;envoyer des articles sur la Place du marché
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ Glisser-déposer des articles ici afin de les préparer à la vente sur la Place du marché.
+ </string>
<string name="InventoryOutboxNoItems">
- Faites glisser des articles ici en vue de les publier sur votre vitrine de la Place du marché.
+ Faites glisser les articles ou dossiers d&apos;articles à vendre dans cette zone. Une copie de l&apos;article s&apos;affiche, sans que votre inventaire ne soit modifié, sauf si vous avez fait glisser un article pour lequel la copie est interdite. Une fois prêt à envoyer les articles vers la Place du marché, cliquez sur le bouton Charger. Les articles disparaissent de ce dossier lorsqu&apos;ils ont été déplacés vers l&apos;inventaire de la Place du marché.
+ </string>
+ <string name="Marketplace Error None">
+ Aucune erreur
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ Erreur : avant d&apos;envoyer des articles vers la Place du marché, vous devez vous configurer comme vendeur (gratuit).
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ Erreur : ce dossier est vide.
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ Erreur : le chargement de cet article a échoué en raison d&apos;un nombre trop important d&apos;articles non associés à des produits au niveau de votre compte de vendeur. Pour résoudre ce problème, connectez-vous au site Web de la Place du marché et réduisez le nombre d&apos;articles non associés.
+ </string>
+ <string name="Marketplace Error Object Limit">
+ Erreur : cet article contient trop d&apos;objets. Pour résoudre le problème, regroupez des objets dans des paquets afin de réduire le nombre total à moins de 200.
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ Erreur : trop de niveaux de dossiers imbriqués concernant cet article. Réorganisez le tout afin qu&apos;un maximum de 3 niveaux soit utilisé.
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ Erreur : cet article ne peut pas être vendu sur la Place du marché.
+ </string>
+ <string name="Marketplace Error Internal Import">
+ Erreur : un problème est survenu concernant cet article. Veuillez réessayer ultérieurement.
</string>
<string name="no_transfer" value=" (pas de transfert)"/>
<string name="no_modify" value=" (pas de modification)"/>
@@ -2441,7 +2510,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Breast Physics InOut Spring">
- Vibration
+ Élasticité
</string>
<string name="Breast Physics InOut Gain">
Amplification
@@ -2453,7 +2522,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Breast Physics UpDown Spring">
- Vibration
+ Élasticité
</string>
<string name="Breast Physics UpDown Gain">
Amplification
@@ -2465,7 +2534,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Breast Physics LeftRight Spring">
- Vibration
+ Élasticité
</string>
<string name="Breast Physics LeftRight Gain">
Amplification
@@ -2489,7 +2558,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Belly Physics UpDown Spring">
- Vibration
+ Élasticité
</string>
<string name="Belly Physics UpDown Gain">
Amplification
@@ -2513,7 +2582,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Butt Physics UpDown Spring">
- Vibration
+ Élasticité
</string>
<string name="Butt Physics UpDown Gain">
Amplification
@@ -2525,7 +2594,7 @@ Si ce message persiste, veuillez aller sur la page [SUPPORT_SITE].
Effet max.
</string>
<string name="Butt Physics LeftRight Spring">
- Vibration
+ Élasticité
</string>
<string name="Butt Physics LeftRight Gain">
Amplification
@@ -4185,7 +4254,7 @@ de l&apos;infraction signalée
<string name="Female - Wow">
Femme - Ouah !
</string>
- <string name="/bow">
+ <string name="/bow1">
/s&apos;incliner
</string>
<string name="/clap">
diff --git a/indra/newview/skins/default/xui/it/floater_about.xml b/indra/newview/skins/default/xui/it/floater_about.xml
index 214ae96373..db4dbe02e2 100644
--- a/indra/newview/skins/default/xui/it/floater_about.xml
+++ b/indra/newview/skins/default/xui/it/floater_about.xml
@@ -42,15 +42,23 @@ Versione Server voice: [VOICE_VERSION]
<button label="Copia negli appunti" name="copy_btn"/>
</panel>
<panel label="Ringraziamenti" name="credits_panel">
- <text_editor name="credits_editor">
- Second Life ti è offerto da Philip, Tessa, Andrew, Cory, Ian, James, Phoenix, Ryan, Haney, Dan, Char, Ben, John, Tanya, Eddie, Richard, Mitch, Doug, Eric, Frank, Bruce, Aaron, Peter, Alice, Charlie, Debra, Eileen, Helen, Janet, Steffan, Steve, Tom, Mark, Hunter, Xenon, Burgess, Bill, Jim, Lee, Hamlet, Daniel, Jeff, Todd, Sarah, Tim, Stephanie, Colin, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Jack, Vektor, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Jesse, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Yuko, Makiko, Thomas, Harry, Seth, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Brad, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, Beez, Milo, Hermia, Red, Thrax, Gulliver, Joe, Sally, Paul, Jose, Rejean, Dore, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, Dustin, George, Del, Matthew, Cat, Jacqui, Adrian, Viola, Alfred, Noel, Irfan, Yool, Rika, Jane, Frontier, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Jeremy, JP, Jake, Anthony, Maurice, Madhavi, Leopard, Kyle, Joon, Bert, Belinda, Jon, Kristi, Bridie, Pramod, Socrates, Maria, Aric, Adreanne, Jay, Kari, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Colossus, Zen, BigPapi, Pastrami, Kurz, Mani, Neuro, Mel, Sardonyx, MJ, Rowan, Sgt, Elvis, Samuel, Leo, Bryan, Niko, Austin, Soft, Poppy, Rachel, Aki, Banzai, Alexa, Sue, Bender, CG, Angelo, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Rothman, Niall, Marin, Allison, Katie, Dawn, Dusty, Katt, Judy, Andrea, Ambroff, Infinity, Rico, Gail, Kalpana, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Maestro, Simone, Yang, T, Shannon, Nelson, Khanh, Scott, Courtney, Charlene, Quixote, Susan, Zed, Amanda, Katelin, Enkidu, Roxie, Esbee, JoRoan, Scarlet, Tay, Kevin, Wolfgang, Johnny, Ray, Andren, Merov, Bob, Rand, Howard, Callen, Heff, Galen, Newell, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, Ashley, JessieAnn, Huseby, Karina, Paris, Kurt, Rick, Lis, Kotler, Theeba, Lynx, Murphy, Doten, Taka, Norm, Jillian, Marcus, Mae, Novack, Esther, Perry, Dana, Ducot, Javier, Porter, Madison, Gecko, Dough, JR, Gisele, Crimp, Norie, Arch, Kimi, Fisher, Barbara, Jason, Peggy, Bernard, Jules, Leroy, Eva, Khederian, Campbell, Vogt, Masido, Karel, Torres, Lo, Breezer, Delby, Rountree, Anna, Servus, Rue, Itiaes, Chuck, Luna, Novella, Zaza, Wen, Gino, Lex, Cassandra, Limey, Nancy, Anukul, Silver, Brodesky, Jinsai, Squid, Gez, Rakesh, Ladan, Edelman, Marcet, Squire, Tatem, Tony, Jerm, Tia, Falcon, BK, Tiggs, Driscoll, Bacon, Timothee, Cru, Carmilla, Coyot, Webb, Kazu, Rudas, LJ, Sea, Ali Wallace, Bewest, Pup, Drub, Dragon, Inoshiro, Byron, Rhett, Xandix, Aimee, Fredrik, Thor, Teddy, Baron, Nelly, Ghengis, Epic, Eli, Stone, Grapes, Irie, Prep, Scobu, Valerie, Alain e molti altri ancora.
-
-Si ringraziano i seguenti residenti per aver contribuito a rendere questa versione la migliore possibile: Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk, Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, , 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan e molti altri ancora.
-
-
-
-
-&quot;Il lavoro continua, la causa sussiste, la speranza vive ancora e i sogni non svaniranno mai&quot; - Edward Kennedy
+ <text name="linden_intro">
+ Second Life vi è offerto dai Linden:
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ con contributi open source da:
+ </text>
+ <text_editor name="contrib_names">
+ Dummy Name sostituito all&apos;avvio
+ </text_editor>
+ <text name="trans_intro">
+ e le traduzioni da:
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name sostituito all&apos;avvio
</text_editor>
</panel>
<panel label="Licenze" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/it/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/it/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..86ea8064b1
--- /dev/null
+++ b/indra/newview/skins/default/xui/it/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="Impostazioni proxy">
+ <check_box initial_value="false" label="Usa proxy HTTP per le pagine Web" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ Proxy HTTP:
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="Il nome DNS o l&apos;indirizzo IP del proxy HTTP che preferisci usare."/>
+ <spinner label="Numero porta:" name="web_proxy_port" tool_tip="La porta del proxy HTTP che preferisci usare."/>
+ <check_box label="Usa Proxy SOCKS 5 per il traffico UDP" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ Proxy SOCKS 5:
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="Il nome DNS o l&apos;indirizzo IP del proxy SOCKS 5 che preferisci usare."/>
+ <spinner label="Numero porta:" name="socks_proxy_port" tool_tip="La porta del proxy SOCKS 5 che preferisci usare."/>
+ <text name="socks_auth_label">
+ Autenticazione SOCKS:
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="Nessuna autenticazione" name="Socks5NoAuth" tool_tip="Il proxy Socks5 non richiede autenticazione." value="Nessuna"/>
+ <radio_item label="Nome utente e password" name="Socks5UserPass" tool_tip="Il proxy Socks5 richiede autenticazione con nome utente e password." value="NomePassword"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ Nome utente:
+ </text>
+ <text name="socks5_password_label">
+ Password:
+ </text>
+ <line_editor name="socks5_username" tool_tip="Il nome utente usato per l&apos;autenticazione con il server SOCKS 5"/>
+ <line_editor name="socks5_password" tool_tip="La password usata per l&apos;autenticazione con il server SOCKS 5"/>
+ <text name="other_proxy_label">
+ Altro traffico proxy HTTP:
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="Senza proxy" name="OtherNoProxy" tool_tip="Il traffico HTTP non Web NON verrà inviato ad alcun proxy." value="Nessuna"/>
+ <radio_item label="Usa proxy HTTP" name="OtherHTTPProxy" tool_tip="Il traffico HTTP non Web verrà inviato attraverso un proxy Web configurato." value="Web"/>
+ <radio_item label="Usa proxy SOCKS 5:" name="OtherSocksProxy" tool_tip="Il traffico HTTP non Web verrà inviato attraverso il proxy Socks 5 configurato." value="Socks"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="Annulla" label_selected="Annulla" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/it/menu_inventory.xml b/indra/newview/skins/default/xui/it/menu_inventory.xml
index f18ddb595c..57aa4dc97d 100644
--- a/indra/newview/skins/default/xui/it/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/it/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="Modifica" name="Wearable Edit"/>
<menu_item_call label="Aggiungi" name="Wearable Add"/>
<menu_item_call label="Togli" name="Take Off"/>
+ <menu_item_call label="Copia nella casella venditore in uscita" name="Merchant Copy"/>
+ <menu_item_call label="Passa alla casella venditore in uscita" name="Merchant Move"/>
<menu_item_call label="--nessuna opzione--" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/it/menu_media_ctrl.xml b/indra/newview/skins/default/xui/it/menu_media_ctrl.xml
index a0e7370efd..aa9e583f8e 100644
--- a/indra/newview/skins/default/xui/it/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/it/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="Taglia" name="Cut"/>
<menu_item_call label="Copia" name="Copy"/>
<menu_item_call label="Incolla" name="Paste"/>
+ <menu_item_call label="Strumento ispezione Web aperto" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/it/menu_mode_change.xml b/indra/newview/skins/default/xui/it/menu_mode_change.xml
new file mode 100644
index 0000000000..499dcf1873
--- /dev/null
+++ b/indra/newview/skins/default/xui/it/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="Di base" name="BasicMode"/>
+ <menu_item_check label="Avanzata" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/it/menu_viewer.xml b/indra/newview/skins/default/xui/it/menu_viewer.xml
index ef40cbda7c..7e3b344117 100644
--- a/indra/newview/skins/default/xui/it/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/it/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="Suono ([COST] L$)..." name="Upload Sound"/>
<menu_item_call label="Animazione ([COST] L$)..." name="Upload Animation"/>
<menu_item_call label="Modella..." name="Upload Model"/>
- <menu_item_call label="Procedura guidata modellazione..." name="Upload Model Wizard"/>
<menu_item_call label="In blocco ([COST] L$ per file)..." name="Bulk Upload"/>
</menu>
<menu_item_call label="Annulla" name="Undo"/>
@@ -248,6 +247,7 @@
<menu_item_check label="Mostra info sulla texture" name="Show Texture Info"/>
<menu_item_check label="Mostra colore sotto il cursore" name="Show Color Under Cursor"/>
<menu_item_check label="Mostra memoria" name="Show Memory"/>
+ <menu_item_check label="Mostra info mem privata" name="Show Private Mem Info"/>
<menu_item_check label="Mostra aggiornamenti agli oggetti" name="Show Updates"/>
</menu>
<menu label="Forza un errore" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/it/notifications.xml b/indra/newview/skins/default/xui/it/notifications.xml
index d09f207af2..ab9de43e6e 100644
--- a/indra/newview/skins/default/xui/it/notifications.xml
+++ b/indra/newview/skins/default/xui/it/notifications.xml
@@ -85,6 +85,19 @@ Accertati che la tua connessione Internet stia funzionando correttamente.
Salva i cambiamenti all&apos;attuale parte del corpo/abito?
<usetemplate canceltext="Annulla" name="yesnocancelbuttons" notext="Non salvare" yestext="Salva"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ Non hai l&apos;autorizzazione necessaria per copiare questo oggetto nella casella in uscita di Marketplace. Sei sicuro di volere spostare gli oggetti seguenti?
+ [ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="No" yestext="Sì"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ Caricamento di Marketplace completato.
+ <usetemplate name="okbutton" yestext="Ottimo!"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ Caricamento di Marketplace completato senza errori. Correggi i problemi nella casella in uscita e riprova. Grazie.
+ <usetemplate name="okbutton" yestext="Riprova"/>
+ </notification>
<notification name="CompileQueueSaveText">
C&apos;è stato un problema importando il testo di uno script per la seguente ragione: [REASON]. Riprova più tardi.
</notification>
@@ -2424,7 +2437,15 @@ Riprova tra qualche istante.
<form name="form">
<button name="Keep" text="Prendi"/>
<button name="Discard" text="Rifiuta"/>
- <button name="Mute" text="Blocca"/>
+ <button name="Mute" text="Blocca Proprietario"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ L&apos;oggetto denominato &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; ti ha dato questo [OBJECTTYPE]:
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="Mantieni"/>
+ <button name="Discard" text="Elimina"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2568,6 +2589,7 @@ Concedi questa richiesta?
&apos;&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; di [NAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Blocca"/>
<button name="Ignore" text="Ignora"/>
</form>
</notification>
@@ -2575,6 +2597,7 @@ Concedi questa richiesta?
&apos;&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; di [GROUPNAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Blocca"/>
<button name="Ignore" text="Ignora"/>
</form>
</notification>
@@ -2904,6 +2927,12 @@ Clicca e trascina dovunque nel mondo per ruotare la visuale
<notification label="Hai dollari Linden!" name="HintLindenDollar">
Ecco il saldo attuale in L$. Clicca su Acquista L$ per acquistare altri dollari Linden.
</notification>
+ <notification name="LowMemory">
+ L&apos;allocazione di memoria è quasi esaurita. Alcune funzioni di SL sono state disattivate per evitare un crash. Chiudi le altre applicazioni. Se il problema persiste, riavvia SL.
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ SL verrà interrotto tra 30 secondi a causa di spazio di memoria insufficiente.
+ </notification>
<notification name="PopupAttempt">
Non è stato possibile aprire una finestra pop-up.
<form name="form">
@@ -2911,6 +2940,54 @@ Clicca e trascina dovunque nel mondo per ruotare la visuale
<button name="open" text="Apri finestra pop-up"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ Il proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rifiutato il collegamento, che non è consentito dalle regole.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ Il proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rifiutato il collegamento. Non è stato possibile aprire il canale TCP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ Il proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rifiutato il sistema di autenticazione selezionato.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ Il proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha indicato che le credenziali non sono valide.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ Il proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; ha rifiutato la richiesta associata UDP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ Collegamento non riuscito al server proxy SOCKS 5 &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ Errore proxy sconosciuto per il server &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ Indirizzo proxy SOCKS o porta &quot;[HOST]:[PORT]&quot; non validi.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ Nome utente o password SOCKS 5 non validi.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ Indirizzo proxy HTTP o porta &quot;[HOST]:[PORT]&quot; non validi.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ Indirizzo proxy SOCKS o porta &quot;[HOST]:[PORT]&quot; non validi.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ Le impostazioni proxy avranno effetto dopo il riavvio di [APP_NAME].
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
Il sito &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; nel reame &apos;[REALM]&apos; richiede un nome utente e una password.
<form name="form">
diff --git a/indra/newview/skins/default/xui/it/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/it/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..af5e05336e
--- /dev/null
+++ b/indra/newview/skins/default/xui/it/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="Trascina gli oggetti qui per prepararli per la vendita nel tuo negozio"/>
diff --git a/indra/newview/skins/default/xui/it/panel_preferences_setup.xml b/indra/newview/skins/default/xui/it/panel_preferences_setup.xml
index 67fa32a960..bf78432110 100644
--- a/indra/newview/skins/default/xui/it/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/it/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="Porta personalizzata" name="connection_port_enabled"/>
<spinner label="Numero porta:" name="connection_port"/>
- <text name="cache_size_label_l">
- Dimensioni cache
- </text>
- <text name="text_box5">
- MB
- </text>
- <text name="Cache location">
- Ubicazione della cache:
- </text>
- <button label="Sfoglia" label_selected="Sfoglia" name="set_cache"/>
- <button label="Reimposta" label_selected="Reimposta" name="reset_cache"/>
<text name="Web:">
Web:
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Accetta cookie" name="cookies_enabled"/>
<check_box initial_value="true" label="Abilita Javascript" name="browser_javascript_enabled"/>
<check_box initial_value="falso" label="Consenti pop-up nel browser media" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Abilita proxy Web" name="web_proxy_enabled"/>
- <text name="Proxy location">
- Ubicazione proxy:
- </text>
- <line_editor name="web_proxy_editor" tool_tip="Il nome o l&apos;indirizzo IP del proxy che preferisci usare"/>
- <spinner label="Numero porta:" name="web_proxy_port"/>
<text name="Software updates:">
Aggiornamenti software:
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="Installa automaticamente" name="Install_automatically"/>
<combo_box.item label="Scarica e installa manualmente gli aggiornamenti" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ Impostazioni proxy:
+ </text>
+ <button label="Regola impostazioni proxy" label_selected="Sfoglia" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/it/panel_status_bar.xml b/indra/newview/skins/default/xui/it/panel_status_bar.xml
index 4353eb9d50..0569107999 100644
--- a/indra/newview/skins/default/xui/it/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/it/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domenica:Lunedì:Martedì:Mercoledì:Giovedì:Venerdì:Sabato
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Gennaio:Febbraio:Marzo:Aprile:Maggio:Giugno:Luglio:Agosto:Settembre:Ottobre:Novembre:Dicembre
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perdita di pacchetti
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="Clicca per aggiornare il tuo saldo in L$" value="L$ 20"/>
<button label="ACQUISTA L$" name="buyL" tool_tip="Clicca per acquistare più L$"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="Seleziona la modalità. Seleziona Di base per esplorare facilmente e rapidamente e per la chat. Seleziona Avanzata per accedere ad altre funzionalità.">
+ <combo_box.item label="Modalità di base" name="Basic"/>
+ <combo_box.item label="Modalità Avanzata" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="Orario attuale (Pacifico)">
24:00, ora del Pacifico
</text>
diff --git a/indra/newview/skins/default/xui/it/sidepanel_inventory.xml b/indra/newview/skins/default/xui/it/sidepanel_inventory.xml
index 72ca2f6d68..54fa6df407 100644
--- a/indra/newview/skins/default/xui/it/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/it/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="Cose" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- Elementi ricevuti ([NUM])
- </string>
- <string name="InboxLabelNoArg">
- Elementi ricevuti
- </string>
- <button label="Elementi ricevuti" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] nuovi
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- Gli acquisti dal mercato verranno consegnati qui.
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="Casella uscita commercianti" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="Sposta al mercato"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- Imposta il tuo account commercianti per usare questa funzione.
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ Oggetti ricevuti ([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ Oggetti ricevuti
+ </string>
+ <button label="Oggetti ricevuti" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] Nuovo
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ Gli acquisti dal mercato verranno consegnati qui.
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ Casella venditore in uscita ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ Casella venditore in uscita
+ </string>
+ <button label="Casella venditore in uscita" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="Push su negozio Marketplace"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ Caricamento in corso...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/it/strings.xml b/indra/newview/skins/default/xui/it/strings.xml
index 1d335e55a6..9918934e12 100644
--- a/indra/newview/skins/default/xui/it/strings.xml
+++ b/indra/newview/skins/default/xui/it/strings.xml
@@ -333,6 +333,18 @@ Prova ad accedere nuovamente tra un minuto.
Solo un singolo oggetto può essere creato qui
</string>
<string name="TooltipPrice" value="L$ [AMOUNT]:"/>
+ <string name="TooltipOutboxNoTransfer">
+ Almeno un oggetto non può essere venduto o trasferito a un altro utente.
+ </string>
+ <string name="TooltipOutboxWorn">
+ Stai indossando almeno uno degli oggetti. Rimuovili dall&apos;avatar e prova nuovamente a spostarli.
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ Questa cartella contiene troppi livelli di cartelle nidificate. Riordina le cartelle interne in modo che non ci siano più di 4 livelli (cartella principale che contiene la cartella A, che contiene la cartella B, che contiene la cartella C).
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ Questa cartella contiene più di 200 oggetti. Inserisci alcuni oggetti in scatole per ridurne il numero.
+ </string>
<string name="TooltipHttpUrl">
Clicca per visitare questa pagina web
</string>
@@ -1189,8 +1201,65 @@ Prova ad accedere nuovamente tra un minuto.
<string name="InventoryInboxNoItems">
Gli elementi acquistati attraverso il mercato verranno consegnati qui
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ La casella in uscita del rivenditore non è configurata correttamente
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ Errore di configurazione della casella in uscita del rivenditore
+ </string>
+ <string name="InventoryOutboxCreationError">
+ Contatta l&apos;Assistenza clienti per correggere il problema.
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ Chiunque può vendere oggetti nel Marketplace
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ Diventa un rivenditore!
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] Second Life Marketplace] offre in vendita più di un milione di prodotti virtuali, tutti creati da Residenti. Anche tu puoi vendere gli oggetti che crei, oltre ad alcuni degli oggetti che hai acquistato. È facile da usare e l&apos;impostazione è gratuita. [[LEARN_MORE_URL] Leggi ulteriori informazioni] oppure [[CREATE_STORE_URL] crea un negozio] sul Marketplace per cominciare.
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ Un nuovo modo di inviare oggetti al Marketplace
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ Trascina gli oggetti qui per prepararli per la vendita nel Marketplace
+ </string>
<string name="InventoryOutboxNoItems">
- Trascina gli elementi qui per poi elencarli nel tuo mercato.
+ Trascina elementi o cartelle che desideri vendere in quest&apos;area. Verrà visualizzata una copia dell&apos;elemento, senza che venga modificato l&apos;inventario, tranne nel caso in cui venga trascinato un oggetto per cui non è permessa la copia. Clicca sul pulsante Carica per caricare gli elementi su Marketplace. Dopo aver spostato gli elementi nell&apos;inventario di Marketplace, non saranno più visibili in questa cartella.
+ </string>
+ <string name="Marketplace Error None">
+ Nessun errore
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ Errore: Prima di inviare elementi al Marketplace devi essere impostato come rivenditore (gratis).
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ Errore: questa cartella non include alcun contenuto.
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ Errore: Oggetto non caricato perché il tuo account venditore ha troppi oggetti che non sono associati con dei prodotti. Per risolvere questo errore, esegui l&apos;accesso al sito di Marketplace e riduci il numero di oggetti non associati.
+ </string>
+ <string name="Marketplace Error Object Limit">
+ Errore: questo elemento contiene troppi oggetti. Per risolvere questo problema, inserisci più oggetti insieme in una scatola per ridurre a meno di 200 il numero totale di oggetti.
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ Errore: questo elemento contiene troppi livelli di cartelle nidificate. Riorganizzalo per ottenere un massimo di 3 livelli di cartelle nidificate.
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ Errore: Questo elemento non può essere venduto nel Marketplace.
+ </string>
+ <string name="Marketplace Error Internal Import">
+ Errore: problema con questo elemento. Riprova più tardi.
</string>
<string name="no_transfer" value="(nessun trasferimento)"/>
<string name="no_modify" value="(nessuna modifica)"/>
@@ -4089,7 +4158,7 @@ Segnala abuso
<string name="Female - Wow">
Femmina - Accipicchia
</string>
- <string name="/bow">
+ <string name="/bow1">
/inchino
</string>
<string name="/clap">
diff --git a/indra/newview/skins/default/xui/ja/floater_about.xml b/indra/newview/skins/default/xui/ja/floater_about.xml
index 56708001c2..47bb2455cf 100644
--- a/indra/newview/skins/default/xui/ja/floater_about.xml
+++ b/indra/newview/skins/default/xui/ja/floater_about.xml
@@ -42,15 +42,23 @@ Qt Webkit ãƒãƒ¼ã‚¸ãƒ§ãƒ³ï¼š [QT_WEBKIT_VERSION]
<button label="クリップボードã«ã‚³ãƒ”ー" name="copy_btn"/>
</panel>
<panel label="クレジット" name="credits_panel">
- <text_editor name="credits_editor">
- Second Life ã¯ã€Philip, Tessa, Andrew, Cory, Ian, James, Phoenix, Ryan, Haney, Dan, Char, Ben, John, Tanya, Eddie, Richard, Mitch, Doug, Eric, Frank, Bruce, Aaron, Peter, Alice, Charlie, Debra, Eileen, Helen, Janet, Steffan, Steve, Tom, Mark, Hunter, Xenon, Burgess, Bill, Jim, Lee, Hamlet, Daniel, Jeff, Todd, Sarah, Tim, Stephanie, Colin, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Jack, Vektor, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Jesse, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Yuko, Makiko, Thomas, Harry, Seth, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Brad, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, Beez, Milo, Hermia, Red, Thrax, Gulliver, Joe, Sally, Paul, Jose, Rejean, Dore, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, Dustin, George, Del, Matthew, Cat, Jacqui, Adrian, Viola, Alfred, Noel, Irfan, Yool, Rika, Jane, Frontier, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Jeremy, JP, Jake, Anthony, Maurice, Madhavi, Leopard, Kyle, Joon, Bert, Belinda, Jon, Kristi, Bridie, Pramod, Socrates, Maria, Aric, Adreanne, Jay, Kari, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Colossus, Zen, BigPapi, Pastrami, Kurz, Mani, Neuro, Mel, Sardonyx, MJ, Rowan, Sgt, Elvis, Samuel, Leo, Bryan, Niko, Austin, Soft, Poppy, Rachel, Aki, Banzai, Alexa, Sue, Bender, CG, Angelo, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Rothman, Niall, Marin, Allison, Katie, Dawn, Dusty, Katt, Judy, Andrea, Ambroff, Infinity, Rico, Gail, Kalpana, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Maestro, Simone, Yang, T, Shannon, Nelson, Khanh, Scott, Courtney, Charlene, Quixote, Susan, Zed, Amanda, Katelin, Enkidu, Roxie, Esbee, JoRoan, Scarlet, Tay, Kevin, Wolfgang, Johnny, Ray, Andren, Merov, Bob, Rand, Howard, Callen, Heff, Galen, Newell, Dessie, Les, Michon, Jenelle, Geo, Siz, Shapiro, Pete, Calyle, Selene, Allen, Phoebe, Goldin, Kimmora, Dakota, Slaton, Lindquist, Zoey, Hari, Othello, Rohit, Sheldon, Petra, Viale, Gordon, Kaye, Pink, Ferny, Emerson, Davy, Bri, Chan, Juan, Robert, Terrence, Nathan, Carl, Ashley, JessieAnn, Huseby, Karina, Paris, Kurt, Rick, Lis, Kotler, Theeba, Lynx, Murphy, Doten, Taka, Norm, Jillian, Marcus, Mae, Novack, Esther, Perry, Dana, Ducot, Javier, Porter, Madison, Gecko, Dough, JR, Gisele, Crimp, Norie, Arch, Kimi, Fisher, Barbara, Jason, Peggy, Bernard, Jules, Leroy, Eva, Khederian, Campbell, Vogt, Masido, Karel, Torres, Lo, Breezer, Delby, Rountree, Anna, Servus, Rue, Itiaes, Chuck, Luna, Novella, Zaza, Wen, Gino, Lex, Cassandra, Limey, Nancy, Anukul, Silver, Brodesky, Jinsai, Squid, Gez, Rakesh, Ladan, Edelman, Marcet, Squire, Tatem, Tony, Jerm, Tia, Falcon, BK, Tiggs, Driscoll, Bacon, Timothee, Cru, Carmilla, Coyot, Webb, Kazu, Rudas, LJ, Sea, Ali Wallace, Bewest, Pup, Drub, Dragon, Inoshiro, Byron, Rhett, Xandix, Aimee, Fredrik, Thor, Teddy, Baron, Nelly, Ghengis, Epic, Eli, Stone, Grapes, Irie, Prep, Scobu, Valerie, Alain ãã®ä»–大勢ã®æ–¹ã€…ã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã¦ã„ã¾ã™ã€‚
-
-ç¾åœ¨æœ€ã‚‚優れãŸãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨ãªã‚‹ã‚ˆã†ã”å”力ã„ãŸã ã„ãŸæ¬¡ã®ä½äººã®çš†æ§˜ã«æ·±ãæ„Ÿè¬ã„ãŸã—ã¾ã™ã€‚ Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk, Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, , 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan ãã®ä»–大勢ã®æ–¹ã€…。
-
-
-
-
-「努力ã¯ç¶šã。目標ã¯æŒç¶šã™ã‚‹ã€‚希望ã¯æ®‹ã•ã‚Œã¦ã„る。夢ã¯æ±ºã—ã¦æ¶ˆãˆãªã„。〠- エドワード・ケãƒãƒ‡ã‚£
+ <text name="linden_intro">
+ Second Life ã®æ供元: Lindens ã®ï¼š
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ オープンソースã®æ供:
+ </text>
+ <text_editor name="contrib_names">
+ Dummy Name ã¯å®Ÿè¡Œæ™‚é–“ã«ç½®ãæ›ãˆ
+ </text_editor>
+ <text name="trans_intro">
+ 翻訳会社:
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name ã¯å®Ÿè¡Œæ™‚é–“ã«ç½®ãæ›ãˆ
</text_editor>
</panel>
<panel label="ライセンス" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..4638fd002e
--- /dev/null
+++ b/indra/newview/skins/default/xui/ja/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="プロキシ設定">
+ <check_box initial_value="false" label="ウェブページ㫠HTTP プロキシを使ã†" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ HTTP プロキシ:
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="使用ã™ã‚‹ HTTP プロキシ㮠DNS åã¾ãŸã¯ IP アドレス。"/>
+ <spinner label="ãƒãƒ¼ãƒˆç•ªå·ï¼š" name="web_proxy_port" tool_tip="使用ã™ã‚‹ HTTP プロキシãƒãƒ¼ãƒˆã€‚"/>
+ <check_box label="UDP トラフィック㫠SOCKS 5 プロキシを使ã†" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ SOCKS 5 プロキシ:
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="使用ã™ã‚‹ SOCKS 5 プロキシ㮠DNS åã¾ãŸã¯ IP アドレス。"/>
+ <spinner label="ãƒãƒ¼ãƒˆç•ªå·ï¼š" name="socks_proxy_port" tool_tip="使用ã™ã‚‹ SOCKS 5 プロキシãƒãƒ¼ãƒˆã€‚"/>
+ <text name="socks_auth_label">
+ SOCKS èªè¨¼ï¼š
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="èªè¨¼ãªã—" name="Socks5NoAuth" tool_tip="Socks 5 プロキシã¯èªè¨¼ã®å¿…è¦ãŒã‚ã‚Šã¾ã›ã‚“。" value="ãªã—"/>
+ <radio_item label="ユーザーå/パスワード" name="Socks5UserPass" tool_tip="Socks5 プロキシã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼å/パスワードã®èªè¨¼ãŒå¿…è¦ã§ã™ã€‚" value="UserPass"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ ユーザーå:
+ </text>
+ <text name="socks5_password_label">
+ パスワード:
+ </text>
+ <line_editor name="socks5_username" tool_tip="SOCKS 5 サーãƒãƒ¼ã®èªè¨¼ã«ä½¿ç”¨ã•ã‚ŒãŸãƒ¦ãƒ¼ã‚¶ãƒ¼å"/>
+ <line_editor name="socks5_password" tool_tip="SOCKS 5 サーãƒãƒ¼ã®èªè¨¼ã«ä½¿ç”¨ã•ã‚ŒãŸãƒ‘スワード"/>
+ <text name="other_proxy_label">
+ 他㮠HTTP トラフィックプロキシ:
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="プロキシã—ãªã„" name="OtherNoProxy" tool_tip="ウェブ以外㮠HTTP トラフィックã¯ã„ãšã‚Œã®ãƒ—ロキシã«ã‚‚ルーティングã•ã‚Œã¾ã›ã‚“。" value="ãªã—"/>
+ <radio_item label="HTTP プロキシを使ã†" name="OtherHTTPProxy" tool_tip="ウェブ以外㮠HTTP ã¯è¨­å®šæ¸ˆã¿ã‚¦ã‚§ãƒ–プロキシを通ã—ã¦ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã•ã‚Œã¾ã™ã€‚" value="Web"/>
+ <radio_item label="SOCKS 5 プロキシを使ã†" name="OtherSocksProxy" tool_tip="ウェブ以外㮠HTTP トラフィックã¯è¨­å®šæ¸ˆã¿ã® Socks 5 プロキシを通ã—ã¦ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã•ã‚Œã¾ã™ã€‚" value="Socks"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="å–り消ã—" label_selected="å–り消ã—" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/ja/menu_inventory.xml b/indra/newview/skins/default/xui/ja/menu_inventory.xml
index f78ec09e5e..9449e61274 100644
--- a/indra/newview/skins/default/xui/ja/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/ja/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="編集" name="Wearable Edit"/>
<menu_item_call label="追加" name="Wearable Add"/>
<menu_item_call label="å–り外ã™" name="Take Off"/>
+ <menu_item_call label="マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ã«ã‚³ãƒ”ー" name="Merchant Copy"/>
+ <menu_item_call label="マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ã«ç§»å‹•" name="Merchant Move"/>
<menu_item_call label="ï¼ï¼ã‚ªãƒ—ションãªã—ï¼ï¼" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml b/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml
index d155dc17e0..faae4ef717 100644
--- a/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/ja/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="カット" name="Cut"/>
<menu_item_call label="コピー" name="Copy"/>
<menu_item_call label="貼り付ã‘" name="Paste"/>
+ <menu_item_call label="ウェブインスペクターを開ã" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/ja/menu_mode_change.xml b/indra/newview/skins/default/xui/ja/menu_mode_change.xml
new file mode 100644
index 0000000000..dff3392bd5
--- /dev/null
+++ b/indra/newview/skins/default/xui/ja/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="ベーシック" name="BasicMode"/>
+ <menu_item_check label="アドãƒãƒ³ã‚¹" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/ja/menu_viewer.xml b/indra/newview/skins/default/xui/ja/menu_viewer.xml
index 223c1e1f11..edce5c50fc 100644
--- a/indra/newview/skins/default/xui/ja/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/ja/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="サウンド(L$[COST])..." name="Upload Sound"/>
<menu_item_call label="アニメーション(L$[COST])..." name="Upload Animation"/>
<menu_item_call label="モデル" name="Upload Model"/>
- <menu_item_call label="モデルウィザード" name="Upload Model Wizard"/>
<menu_item_call label="一括 (ファイルã«ã¤ãL$[COST])..." name="Bulk Upload"/>
</menu>
<menu_item_call label="å…ƒã«æˆ»ã™" name="Undo"/>
@@ -253,6 +252,7 @@
<menu_item_check label="マトリックスを表示ã™ã‚‹" name="Show Matrices"/>
<menu_item_check label="カーソルを乗ã›ãŸå ´æ‰€ã®è‰²ã‚’表示ã™ã‚‹" name="Show Color Under Cursor"/>
<menu_item_check label="メモリを表示:" name="Show Memory"/>
+ <menu_item_check label="プライベートメモリ情報を表示" name="Show Private Mem Info"/>
<menu_item_check label="オブジェクトã®ã‚¢ãƒƒãƒ—デートを表示ã™ã‚‹" name="Show Updates"/>
</menu>
<menu label="エラー実行" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/ja/notifications.xml b/indra/newview/skins/default/xui/ja/notifications.xml
index 6bff82bec4..c138aeb383 100644
--- a/indra/newview/skins/default/xui/ja/notifications.xml
+++ b/indra/newview/skins/default/xui/ja/notifications.xml
@@ -84,6 +84,19 @@
ç¾åœ¨ã®è¡£é¡žã€èº«ä½“部ä½ã®å¤‰æ›´ã‚’ä¿å­˜ã—ã¾ã™ã‹ï¼Ÿ
<usetemplate canceltext="キャンセル" name="yesnocancelbuttons" notext="ä¿å­˜ã—ãªã„" yestext="ä¿å­˜"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ã«ã“れをコピーã™ã‚‹æ¨©é™ãŒã‚ã‚Šã¾ã™ã€‚次ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’移動ã—ã¾ã™ã‹ï¼Ÿ
+[ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="ã„ã„ãˆ" yestext="ã¯ã„"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ マーケットプレイスã¸ã®ã‚¢ãƒƒãƒ—ロードãŒå®Œäº†ã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="ã‚„ã£ãŸã‚ï¼"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ マーケットプレイスã¸ã®ã‚¢ãƒƒãƒ—ロードã®å®Œäº†æ™‚ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚アウトボックスã®å•é¡Œã‚’解決ã—ã¦ã€ã‚‚ã†ä¸€åº¦ãŠè©¦ã—ãã ã•ã„。ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚
+ <usetemplate name="okbutton" yestext="å†ãƒˆãƒ©ã‚¤ï¼"/>
+ </notification>
<notification name="CompileQueueSaveText">
次ã®ç†ç”±ã§ã€ã‚¹ã‚¯ãƒªãƒ—ト用テキストã®ã‚¢ãƒƒãƒ—ロード時ã«å•é¡ŒãŒèµ·ã“ã‚Šã¾ã—ãŸã€‚
[REASON]
@@ -2471,7 +2484,15 @@ Web ページã«ãƒªãƒ³ã‚¯ã™ã‚‹ã¨ã€ä»–人ãŒã“ã®å ´æ‰€ã«ç°¡å˜ã«ã‚¢ã‚¯ã‚»ã
<form name="form">
<button name="Keep" text="å—ã‘å–ã‚‹"/>
<button name="Discard" text="破棄"/>
- <button name="Mute" text="ブロック"/>
+ <button name="Mute" text="所有者をブロック"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; ã¨ã„ã†åå‰ã®ã‚ªãƒ–ジェクトãŒã€ã‚ãªãŸã« [OBJECTTYPE] を渡ã—ã¾ã—ãŸï¼š
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="キープ"/>
+ <button name="Discard" text="処分ã™ã‚‹"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2615,6 +2636,7 @@ Web ページã«ãƒªãƒ³ã‚¯ã™ã‚‹ã¨ã€ä»–人ãŒã“ã®å ´æ‰€ã«ç°¡å˜ã«ã‚¢ã‚¯ã‚»ã
[NAME] ã®ã€Œ&lt;nolink&gt;[TITLE]&lt;/nolink&gt;ã€
[MESSAGE]
<form name="form">
+ <button name="Mute" text="ブロック"/>
<button name="Ignore" text="無視ã™ã‚‹"/>
</form>
</notification>
@@ -2622,6 +2644,7 @@ Web ページã«ãƒªãƒ³ã‚¯ã™ã‚‹ã¨ã€ä»–人ãŒã“ã®å ´æ‰€ã«ç°¡å˜ã«ã‚¢ã‚¯ã‚»ã
[GROUPNAME] ã®ã€Œ&lt;nolink&gt;[TITLE]&lt;/nolink&gt;ã€
[MESSAGE]
<form name="form">
+ <button name="Mute" text="ブロック"/>
<button name="Ignore" text="無視ã™ã‚‹"/>
</form>
</notification>
@@ -2948,6 +2971,12 @@ M キーを押ã—ã¦å¤‰æ›´ã—ã¾ã™ã€‚
<notification label="ã‚ãªãŸã®ãƒªãƒ³ãƒ‡ãƒ³ãƒ‰ãƒ«" name="HintLindenDollar">
ã“ã‚ŒãŒã‚ãªãŸã® L$ 残高ã§ã™ã€‚リンデンドルを購入ã™ã‚‹ã«ã¯ã€ŒL$ ã®è³¼å…¥ã€ã‚’クリックã—ã¾ã™ã€‚
</notification>
+ <notification name="LowMemory">
+ メモリプール残é‡ãŒå°‘ãªããªã£ã¦ã„ã¾ã™ã€‚クラッシュをé¿ã‘ã‚‹ãŸã‚ SL ã®æ©Ÿèƒ½ã®ä¸€éƒ¨ã¯ç„¡åŠ¹ã«ãªã‚Šã¾ã—ãŸã€‚ä»–ã®ã‚¢ãƒ—リケーションを終了ã—ã€çŠ¶æ³ãŒç¶™ç¶šã¾ãŸã¯å†ç™ºã™ã‚‹å ´åˆã«ã¯ SL ã‚’å†èµ·å‹•ã—ã¦ãã ã•ã„。
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ メモリä¸è¶³ã®ãŸã‚ 30 秒以内㫠SL ã¯çµ‚了ã—ã¾ã™ã€‚
+ </notification>
<notification name="PopupAttempt">
ãƒãƒƒãƒ—アップãŒãƒ–ロックã•ã‚Œã¾ã—ãŸã€‚
<form name="form">
@@ -2955,6 +2984,54 @@ M キーを押ã—ã¦å¤‰æ›´ã—ã¾ã™ã€‚
<button name="open" text="ãƒãƒƒãƒ—アップウィンドウを開ã"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ ルールセットã«ã‚ˆã£ã¦è¨±å¯ã•ã‚Œã¦ã„ãªã„ãŸã‚ã€SOCKS 5 プロキシ &quot;[HOST]:[PORT]&quot; ãŒæŽ¥ç¶šã‚’拒絶ã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ SOCKS 5 プロキシ &quot;[HOST]:[PORT]&quot; ãŒæŽ¥ç¶šã‚’拒絶ã—ãŸãŸã‚ã€TCP ãƒãƒ£ãƒ³ãƒãƒ«ã‚’é–‹ãã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ SOCKS 5 プロキシ &quot;[HOST]:[PORT]&quot; ã¯é¸æŠžã•ã‚ŒãŸèªè¨¼ã‚·ã‚¹ãƒ†ãƒ ã‚’拒絶ã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ SOCKS 5 プロキシ &quot;[HOST]:[PORT]&quot; ã¯ã‚ãªãŸã®è³‡æ ¼ãŒç„¡åŠ¹ã ã¨å ±å‘Šã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ SOCKS 5 プロキシ &quot;[HOST]:[PORT]&quot; 㯠UDP アソシエートã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’拒絶ã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ SOCKS 5 プロキシサーãƒãƒ¼ &quot;[HOST]:[PORT]&quot; ã«æŽ¥ç¶šã§ãã¾ã›ã‚“ã§ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ ä¸æ˜Žã®ãƒ—ロキシエラーãŒã‚µãƒ¼ãƒãƒ¼ &quot;[HOST]:[PORT]&quot; ã§ç™ºç”Ÿã—ã¾ã—ãŸã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ SOCKS プロキシã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¾ãŸã¯ãƒãƒ¼ãƒˆ &quot;[HOST]:[PORT]&quot;ãŒç„¡åŠ¹ã§ã™ã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ SOCKS 5 ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¾ãŸã¯ãƒ‘スワードãŒæ­£ã—ãã‚ã‚Šã¾ã›ã‚“。
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ HTTP プロキシã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¾ãŸã¯ãƒãƒ¼ãƒˆ &quot;[HOST]:[PORT]&quot;ãŒç„¡åŠ¹ã§ã™ã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ SOCKS プロキシã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¾ãŸã¯ãƒãƒ¼ãƒˆ &quot;[HOST]:[PORT]&quot;ãŒç„¡åŠ¹ã§ã™ã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ プロキシã®è¨­å®šã¯ [APP_NAME] ã‚’å†èµ·å‹•å¾Œã«å映ã•ã‚Œã¾ã™ã€‚
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
「[REALM]ã€ã«ã‚る「&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;ã€ã®ã‚µã‚¤ãƒˆã«ã¯ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¨ãƒ‘スワードãŒå¿…è¦ã§ã™ã€‚
<form name="form">
diff --git a/indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..47f570ab86
--- /dev/null
+++ b/indra/newview/skins/default/xui/ja/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="商å“ã‚’ã“ã“ã«ãƒ‰ãƒ©ãƒƒã‚°ã‚¢ãƒ³ãƒ‰ãƒ‰ãƒ­ãƒƒãƒ—ã™ã‚‹ã¨ã€ã‚ãªãŸã®åº—é ­ã«ä¸¦ã³ã¾ã™"/>
diff --git a/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml b/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml
index 18c41cea38..7877c0495f 100644
--- a/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/ja/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="カスタムãƒãƒ¼ãƒˆ" name="connection_port_enabled"/>
<spinner label="ãƒãƒ¼ãƒˆç•ªå·ï¼š" name="connection_port"/>
- <text name="cache_size_label_l">
- キャッシュサイズ
- </text>
- <text name="text_box5">
- MB
- </text>
- <text name="Cache location">
- キャッシュã®ä¿å­˜å ´æ‰€ï¼š
- </text>
- <button label="å‚ç…§" label_selected="å‚ç…§" name="set_cache"/>
- <button label="リセット" label_selected="リセット" name="reset_cache"/>
<text name="Web:">
Web:
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Cookie ã‚’å—ã‘入れる" name="cookies_enabled"/>
<check_box initial_value="true" label="Javascript を有効ã«ã™ã‚‹" name="browser_javascript_enabled"/>
<check_box initial_value="false" label="メディアブラウザã®ãƒãƒƒãƒ—アップを有効ã«ã™ã‚‹" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Web プロキシを有効ã«ã™ã‚‹" name="web_proxy_enabled"/>
- <text name="Proxy location">
- プロキシ:
- </text>
- <line_editor name="web_proxy_editor" tool_tip="使用ã™ã‚‹ãƒ—ロキシã®ãƒ›ã‚¹ãƒˆåã¾ãŸã¯ IP アドレス"/>
- <spinner label="ãƒãƒ¼ãƒˆç•ªå·ï¼š" name="web_proxy_port"/>
<text name="Software updates:">
ソフトウェアアップデート:
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="自動的ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«" name="Install_automatically"/>
<combo_box.item label="手動ã§ã‚¢ãƒƒãƒ—デートをダウンロード&amp;インストール" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ プロキシ設定:
+ </text>
+ <button label="プロキシ設定を調整" label_selected="å‚ç…§" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/ja/panel_status_bar.xml b/indra/newview/skins/default/xui/ja/panel_status_bar.xml
index 163064484b..35c1148cc1 100644
--- a/indra/newview/skins/default/xui/ja/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/ja/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- 日曜日:月曜日:ç«æ›œæ—¥:水曜日:木曜日:金曜日:土曜日
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- 1月:2月:3月:4月:5月:6月:7月:8月:9月:10月:11月:12月
- </panel.string>
<panel.string name="packet_loss_tooltip">
パケットæ失
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="クリックã—㦠L$ 残高を更新" value="L$20"/>
<button label="L$ ã®è³¼å…¥" name="buyL" tool_tip="クリックã—㦠L$ を購入ã—ã¾ã™"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="モードをé¸æŠžã—ã¾ã™ã€‚ベーシックモードã§ã¯æŽ¢ç´¢ã‚„ãƒãƒ£ãƒƒãƒˆã‚’ã™ã°ã‚„ãç°¡å˜ã«å®Ÿè¡Œã§ãã€ã‚¢ãƒ‰ãƒãƒ³ã‚¹ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€ã‚ˆã‚Šå¤šãã®æ©Ÿèƒ½ãŒåˆ©ç”¨ã§ãã¾ã™ã€‚">
+ <combo_box.item label="ベーシックモード" name="Basic"/>
+ <combo_box.item label="アドãƒãƒ³ã‚¹ãƒ¢ãƒ¼ãƒ‰" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="ç¾åœ¨æ™‚刻(太平洋)">
24:00 AM PST
</text>
diff --git a/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml b/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml
index 7edda6e1a3..fc0293307b 100644
--- a/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/ja/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="ã‚‚ã®" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- å—ã‘å–ã£ãŸå•†å“([NUM])
- </string>
- <string name="InboxLabelNoArg">
- å—ã‘å–ã£ãŸå•†å“
- </string>
- <button label="å—ã‘å–ã£ãŸå•†å“" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] 新登場
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- マーケットプレイスã‹ã‚‰è³¼å…¥ã—ãŸå•†å“ã¯ã“ã“ã«é…é”ã•ã‚Œã¾ã™ã€‚
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="自分ã®ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイス店頭ã«ç§»å‹•"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- ã“ã®æ©Ÿèƒ½ã‚’使用ã™ã‚‹ã«ã¯ã€ãƒžãƒ¼ãƒãƒ£ãƒ³ãƒˆã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’セットアップã—ã¦ãã ã•ã„。
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ å—ã‘å–ã£ãŸå•†å“([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ å—ã‘å–ã£ãŸå•†å“
+ </string>
+ <button label="å—ã‘å–ã£ãŸå•†å“" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] 個ã®æ–°å•†å“
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ マーケットプレイスã‹ã‚‰è³¼å…¥ã—ãŸå•†å“ã¯ã“ã“ã«é…é”ã•ã‚Œã¾ã™ã€‚
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹
+ </string>
+ <button label="マーãƒãƒ£ãƒ³ãƒˆã®ã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="自分ã®ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイス店頭ã«ç§»å‹•"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ ローディング...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/ja/strings.xml b/indra/newview/skins/default/xui/ja/strings.xml
index f0c0d99a8e..41dc098ba2 100644
--- a/indra/newview/skins/default/xui/ja/strings.xml
+++ b/indra/newview/skins/default/xui/ja/strings.xml
@@ -339,6 +339,18 @@ support@secondlife.com ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。
アイテム㯠1 ã¤ã ã‘ã“ã“ã«ãƒ‰ãƒ©ãƒƒã‚°ã§ãã¾ã™
</string>
<string name="TooltipPrice" value="L$[AMOUNT]:"/>
+ <string name="TooltipOutboxNoTransfer">
+ ã“れらオブジェクト㮠1 ã¤ã¾ãŸã¯è¤‡æ•°ã¯ã€åˆ¥ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«å£²ã‚Šæ¸¡ã—ãŸã‚Šè­²æ¸¡ã§ããªã„ã‚‚ã®ã§ã™ã€‚
+ </string>
+ <string name="TooltipOutboxWorn">
+ ã‚ãªãŸã¯ã“れらオブジェクト㮠1 ã¤ã¾ãŸã¯è¤‡æ•°ã‚’装ç€ã—ã¦ã„ã¾ã™ã€‚ã‚¢ãƒã‚¿ãƒ¼ã‹ã‚‰ãれらをå–り外ã—ã€å†ã³ç§»å‹•ã—ã¦ã¿ã¦ãã ã•ã„。
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ ã“ã®ãƒ•ã‚©ãƒ«ãƒ€ã«ã‚るサブフォルダã®éšŽå±¤ãŒå¤šã™ãŽã¾ã™ã€‚サブフォルダã¯4階層以内(ルートフォルダã®ä¸‹ã«Aã€ãã®ä¸‹ã«Bã€ãã®ä¸‹ã«Cã¨ã„ã†é¢¨ã«ï¼‰ã«ã¾ã¨ã‚ç›´ã—ã¦ãã ã•ã„。
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ ã“ã®ãƒ•ã‚©ãƒ«ãƒ€ã«ã¯ 200 個以上ã®ã‚ªãƒ–ジェクトãŒå«ã¾ã‚Œã¾ã™ã€‚商å“ã®ã„ã¤ã‹ã‚’ボックスã«å…¥ã‚Œã€ã‚ªãƒ–ジェクト数を減らã—ã¦ãã ã•ã„。
+ </string>
<string name="TooltipHttpUrl">
クリックã—ã¦ã“ã® Web ページを見ã¾ã™
</string>
@@ -1204,8 +1216,65 @@ support@secondlife.com ã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。
<string name="InventoryInboxNoItems">
マーケットプレイスã§è³¼å…¥ã—ãŸå•†å“ã¯ã“ã“ã«é…é”ã•ã‚Œã¾ã™ã€‚
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ マーãƒãƒ£ãƒ³ãƒˆã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ãŒæ­£ã—ã設定ã•ã‚Œã¦ã„ã¾ã›ã‚“
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ マーãƒãƒ£ãƒ³ãƒˆã‚¢ã‚¦ãƒˆãƒœãƒƒã‚¯ã‚¹ã®è¨­å®šã‚¨ãƒ©ãƒ¼
+ </string>
+ <string name="InventoryOutboxCreationError">
+ å•é¡Œã‚’解決ã™ã‚‹ã«ã¯ã‚«ã‚¹ã‚¿ãƒžãƒ¼ã‚µãƒ¼ãƒ“スã«ãŠå•ã„åˆã‚ã›ãã ã•ã„。
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ マーケットプレイスã¯çš†ã®å£²ã‚Šå ´ã§ã™
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ ã‚ãªãŸã‚‚マーãƒãƒ£ãƒ³ãƒˆã«ï¼
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] Second Life マーケットプレイス] ã§ã¯ã€SL ä½äººãŒåˆ¶ä½œã—ãŸå•†å“ 100 万点以上ãŒè²©å£²ã•ã‚Œã¦ã„ã¾ã™ã€‚ã‚ãªãŸã‚‚ã”自分ã®è‡ªä¿¡ä½œã‚„ã€ã‚ãªãŸãŒè³¼å…¥ã—ãŸã‚¢ã‚¤ãƒ†ãƒ ã‚’商å“ã¨ã—ã¦å£²ã£ã¦ã¿ã¾ã›ã‚“ã‹ã€‚ãã®æ‰‹é †ã¯ç°¡å˜ã§ã€ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã¯ç„¡æ–™ã§ã™ã€‚[[LEARN_MORE_URL] ã“ã¡ã‚‰ã§è©³ç´°ã‚’確ã‹ã‚]ã€ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイスã«[[CREATE_STORE_URL] ストアを作æˆ] ã—ã¾ã—ょã†ã€‚
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ マーケットプレイスã¸ã®æ–°ã—ã„出è·æ–¹æ³•
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ 商å“ã‚’ã“ã“ã«ãƒ‰ãƒ©ãƒƒã‚°ã‚¢ãƒ³ãƒ‰ãƒ‰ãƒ­ãƒƒãƒ—ã™ã‚‹ã ã‘ã§ã€ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイスã®å£²ã‚Šç‰©ã¨ãªã‚Šã¾ã™
+ </string>
<string name="InventoryOutboxNoItems">
- マーケットプレイス店頭ã«æŽ²è¼‰ã™ã‚‹ãŸã‚ã®æº–å‚™ã¨ã—ã¦ã€ã“ã“ã«å•†å“をドラッグã—ã¾ã™ã€‚
+ 販売ã™ã‚‹å•†å“ã¾ãŸã¯ãƒ•ã‚©ãƒ«ãƒ€ã‚’ã“ã®ã‚¨ãƒªã‚¢ã«ãƒ‰ãƒ©ãƒƒã‚°ã—ã¾ã™ã€‚コピーä¸å¯ã®ã‚¢ã‚¤ãƒ†ãƒ ã§ãªã„é™ã‚Šã€ãƒ‰ãƒ©ãƒƒã‚°ã—ãŸå•†å“ã®ã‚³ãƒ”ーãŒè¡¨ç¤ºã•ã‚Œã‚‹ã ã‘ã§ã€ã‚ãªãŸã®æŒã¡ç‰©ã‹ã‚‰å•†å“ãŒå®Ÿéš›ã«ç§»å‹•ã™ã‚‹ã‚ã‘ã§ã¯ã‚ã‚Šã¾ã›ã‚“。マーケットプレイスã«å•†å“ã‚’é€ã‚‹æº–å‚™ãŒæ•´ã£ãŸã‚‰ã€ã€Œã‚¢ãƒƒãƒ—ロードã€ãƒœã‚¿ãƒ³ã‚’クリックã—ã¾ã™ã€‚商å“ã¯ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイスインベントリã«ç§»å‹•ã—ãŸæ™‚点ã§ã“ã®ãƒ•ã‚©ãƒ«ãƒ€ã‹ã‚‰å‰Šé™¤ã•ã‚Œã¾ã™ã€‚
+ </string>
+ <string name="Marketplace Error None">
+ エラーãªã—
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ エラー:マーケットプレイスã«å•†å“ã‚’é€ã‚‹å‰ã«ã€ã‚ãªãŸè‡ªèº«ã‚’マーãƒãƒ£ãƒ³ãƒˆç™»éŒ²ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ï¼ˆç™»éŒ²ã¯ç„¡æ–™ã§ã™ï¼‰ã€‚
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ エラー:ã“ã®ãƒ•ã‚©ãƒ«ãƒ€ã¯ç©ºã§ã™ã€‚
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ エラー:ã‚ãªãŸã®ãƒžãƒ¼ãƒãƒ£ãƒ³ãƒˆã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«ã¯ã€å•†å“ã¨ç„¡é–¢ä¿‚ã®ã‚¢ã‚¤ãƒ†ãƒ ãŒå¤šã™ãŽã‚‹ãŸã‚ã€ã“ã®ã‚¢ã‚¤ãƒ†ãƒ ã‚’アップロードã§ãã¾ã›ã‚“ã§ã—ãŸã€‚ã“ã®ã‚¨ãƒ©ãƒ¼ã‚’解消ã™ã‚‹ã«ã¯ã€ãƒžãƒ¼ã‚±ãƒƒãƒˆãƒ—レイスã®ã‚¦ã‚§ãƒ–サイトã«ãƒ­ã‚°ã‚¤ãƒ³ã—ã€å•†å“ã«é–¢ä¿‚ã®ãªã„アイテム数を減らã—ã¦ãã ã•ã„。
+ </string>
+ <string name="Marketplace Error Object Limit">
+ エラー:ã“ã®å•†å“ã«å«ã¾ã‚Œã‚‹ã‚ªãƒ–ジェクトãŒå¤šã™ãŽã¾ã™ã€‚オブジェクトをã„ãã¤ã‹ãƒœãƒƒã‚¯ã‚¹ã«ã¾ã¨ã‚ã€ã‚ªãƒ–ジェクト数を200以下ã«æ¸›ã‚‰ã—ã¦ãã ã•ã„。
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ エラー:ã“ã®å•†å“ã¯ãƒã‚¹ãƒˆå…¥ã‚Šãƒ•ã‚©ãƒ«ãƒ€ã®éšŽå±¤ãŒå¤šã™ãŽã¾ã™ã€‚ãƒã‚¹ãƒˆå…¥ã‚Šãƒ•ã‚©ãƒ«ãƒ€ã‚’ 3 階層以内ã«ã¾ã¨ã‚ç›´ã—ã¦ãã ã•ã„。
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ エラー:ã“ã®é …目をマーケットプレイスã§è²©å£²ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。
+ </string>
+ <string name="Marketplace Error Internal Import">
+ エラー:ã“ã®å•†å“ã«é–¢ã—ã¦å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ã—ã°ã‚‰ãã—ã¦ã‹ã‚‰ãŠè©¦ã—ãã ã•ã„。
</string>
<string name="no_transfer" value=" (å†è²©ãƒ»ãƒ—レゼントä¸å¯ï¼‰"/>
<string name="no_modify" value=" (編集ä¸å¯ï¼‰"/>
@@ -4185,8 +4254,8 @@ www.secondlife.com ã‹ã‚‰æœ€æ–°ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’ダウンロードã—ã¦ãã ã
<string name="Female - Wow">
女性 - Wow
</string>
- <string name="/bow">
- /ãŠã˜ãŽã™ã‚‹
+ <string name="/bow1">
+ /bow1
</string>
<string name="/clap">
/æ‹æ‰‹
diff --git a/indra/newview/skins/default/xui/pt/floater_about.xml b/indra/newview/skins/default/xui/pt/floater_about.xml
index 6ea2daced9..508635cd6e 100644
--- a/indra/newview/skins/default/xui/pt/floater_about.xml
+++ b/indra/newview/skins/default/xui/pt/floater_about.xml
@@ -41,15 +41,23 @@ Versão do servidor de voz: [VOICE_VERSION]
<button label="Copiar" name="copy_btn"/>
</panel>
<panel label="Créditos" name="credits_panel">
- <text_editor name="credits_editor">
- O Second Life é o resultado do trabalho de Philip, Tessa, Andrew, Cory, James, Ben, Char, Charlie, Colin, Dan, Daniel, Doug, Eric, Hamlet, Haney, Eve, Hunter, Ian, Jeff, Jennifer, Jim, John, Lee, Mark, Peter, Phoenix, Richard, Robin, Xenon, Steve, Tanya, Eddie, Avi, Frank, Bruce, Aaron, Alice, Bob, Debra, Eileen, Helen, Janet, Louie, Leviathania, Stefan, Ray, Kevin, Tom, Mikeb, MikeT, Burgess, Elena, Tracy, Bill, Todd, Ryan, Zach, Sarah, Nova, Tim, Stephanie, Michael, Evan, Nicolas, Catherine, Rachelle, Dave, Holly, Bub, Kelly, Magellan, Ramzi, Don, Sabin, Jill, Rheya, Jeska, Torley, Kona, Callum, Charity, Ventrella, Jack, Vektor, Iris, Chris, Nicole, Mick, Reuben, Blue, Babbage, Yedwab, Deana, Lauren, Brent, Pathfinder, Chadrick, Altruima, Jesse, Teeny, Monroe, Icculus, David, Tess, Lizzie, Patsy, Isaac, Lawrence, Cyn, Bo, Gia, Annette, Marius, Tbone, Jonathan, Karen, Ginsu, Satoko, Yuko, Makiko, Thomas, Harry, Seth, Alexei, Brian, Guy, Runitai, Ethan, Data, Cornelius, Kenny, Swiss, Zero, Natria, Wendy, Stephen, Teeple, Thumper, Lucy, Dee, Mia, Liana, Warren, Branka, Aura, beez, Milo, Hermia, Red, Thrax, Joe, Sally, Magenta, Mogura, Paul, Jose, Rejean, Henrik, Lexie, Amber, Logan, Xan, Nora, Morpheus, Donovan, Leyla, MichaelFrancis, Beast, Cube, Bucky, Joshua, Stryfe, Harmony, Teresa, Claudia, Walker, Glenn, Fritz, Fordak, June, Cleopetra, Jean, Ivy, Betsy, Roosevelt, Spike, Ken, Which, Tofu, Chiyo, Rob, Zee, dustin, George, Del, Matthew, Cat, Jacqui, Lightfoot, Adrian, Viola, Alfred, Noel, Irfan, Sunil, Yool, Rika, Jane, Xtreme, Frontier, a2, Neo, Siobhan, Yoz, Justin, Elle, Qarl, Benjamin, Isabel, Gulliver, Everett, Christopher, Izzy, Stephany, Garry, Sejong, Sean, Tobin, Iridium, Meta, Anthony, Jeremy, JP, Jake, Maurice, Madhavi, Leopard, Kyle, Joon, Kari, Bert, Belinda, Jon, Kristi, Bridie, Pramod, KJ, Socrates, Maria, Ivan, Aric, Yamasaki, Adreanne, Jay, MitchK, Ceren, Coco, Durl, Jenny, Periapse, Kartic, Storrs, Lotte, Sandy, Rohn, Colossus, Zen, BigPapi, Brad, Pastrami, Kurz, Mani, Neuro, Jaime, MJ, Rowan, Sgt, Elvis, Gecko, Samuel, Sardonyx, Leo, Bryan, Niko, Soft, Poppy, Rachel, Aki, Angelo, Banzai, Alexa, Sue, CeeLo, Bender, CG, Gillian, Pelle, Nick, Echo, Zara, Christine, Shamiran, Emma, Blake, Keiko, Plexus, Joppa, Sidewinder, Erica, Ashlei, Twilight, Kristen, Brett, Q, Enus, Simon, Bevis, Kraft, Kip, Chandler, Ron, LauraP, Ram, KyleJM, Scouse, Prospero, Melissa, Marty, Nat, Hamilton, Kend, Lordan, Jimmy, Kosmo, Seraph, Green, Ekim, Wiggo, JT, Rome, Doris, Miz, Benoc, Whump, Trinity, Patch, Kate, TJ, Bao, Joohwan, Christy, Sofia, Matias, Cogsworth, Johan, Oreh, Cheah, Angela, Brandy, Mango, Lan, Aleks, Gloria, Heidy, Mitchell, Space, Colton, Bambers, Einstein, Maggie, Malbers, Rose, Winnie, Stella, Milton, Rothman, Niall, Marin, Allison, Katie, Dawn, Katt, Dusty, Kalpana, Judy, Andrea, Ambroff, Infinity, Gail, Rico, Raymond, Yi, William, Christa, M, Teagan, Scout, Molly, Dante, Corr, Dynamike, Usi, Kaylee, Vidtuts, Lil, Danica, Sascha, Kelv, Jacob, Nya, Rodney, Brandon, Elsie, Blondin, Grant, Katrin, Nyx, Gabriel, Locklainn, Claire, Devin, Minerva, Monty, Austin, Bradford, Si, Keira, H, Caitlin, Dita, Makai, Jenn, Ann, Meredith, Clare, Joy, Praveen, Cody, Edmund, Ruthe, Sirena, Gayathri, Spider, FJ, Davidoff, Tian, Jennie, Louise, Oskar, Landon, Noelle, Jarv, Ingrid, Al, Sommer, Doc, Aria, Huin, Gray, Lili, Vir, DJ, Yang, T, Simone, Maestro, Scott, Charlene, Quixote, Amanda, Susan, Zed, Anne, Enkidu, Esbee, Joroan, Katelin, Roxie, Tay, Scarlet, Kevin, Johnny, Wolfgang, Andren, Bob, Howard, Merov, Rand, Ray, Michon, Newell, Galen, Dessie, Les e muitos mais.
-
-Agradecemos também aos seguintes residentes por sua colaboração na mais nova versão do Second Life: Drew Dwi, Zai Lynch, Latif Khalifa, Ellla McMahon, Harleen Gretzky, Squirrel Wood, Malarthi Behemoth, Dante Tucker, Buckaroo Mu, Eddi Decosta, Dirk, Talamasca, Torben Trautman, Irene Muni, Aralara Rajal, Aura Dirval, Cayu Cluny, Eva Rau, FreeSL Aeon, Frontera Thor, Inma Rau, Lunita Savira, Minerva Memel, Polo Gufler, Xiki Luik, Lilly Zenovka, Vick Forcella, Sasy Scarborough, Gentle Welinder, Elric Anatine, Techwolf Lupindo, Dusan Writer, WolfPup Lowenhar, Marianne McCann, Fiachra Lach, Sitearm Madonna, Sudane Erato, Sahkolihaa Contepomi, Sachi Vixen, Questar Utu, Dimitrio Lewis, Matto Destiny, Scrim Pinion, Radio Signals, Psi Merlin, Pixel Gausman, Mel Vanbeeck, Laurent Bechir, Lamorna Proctor, Lares Carter, Gwyneth Llewelyn, Hydra Shaftoe, Holger Gilruth, Gentle Heron, Carla Broek, Boroondas Gupte, Fury Rosewood, Flower Ducatillon, Colpo Wexler, gwampa Lomu, Borg Capalini, Beansy Twine, Ardy Lay, , 45ms Zhong, Adeon Writer, Aeonix Aeon, Ai Austin, Aiko Ying, Alexandrea Fride, Alliez Mysterio, Annie Milestone, Annika Genezzia, Ansariel Hiller, ArminasX Saiman, Arya Braveheart, Asaeda Meltingdots, Asturkon Jua, Avallyn Oakleaf, Avatar Quinzet, BabyA Littlething, Bacchus Ireto, Bazaar, Riva, Benjamin Bigdipper, Beth Walcher, Bezilon Kasei, Biancaluce Robbiani, Bill Walach, blakopal Galicia, Blitzckreed Levenque, Bryn Oh, Callipygian Christensen, Cap Carver, Carr Arbenlow, Chantal Harvey, Charles Courtois, Charlie Sazaland, Cherry Cheevers, ChickyBabes Zuzu, Christopher Organiser, Ciaran Laval, Clara Young, Celierra Darling, Corinne Helendale, Corro Moseley, Coughdrop Littlething, Darien Caldwell, Dartagan Shepherd, Debs Regent, Decro Schmooz, Denim Kamachi, DiJodi Dubratt, Dil Spitz, Edgware Marker, Egehan Dryke, Emma Portilo, Emmie Fairymeadow, Evangelista Emerald, Faelon Swordthain, Frenchimmo Sabra, Gaberoonie Zanzibar, Ganymedes Costagravas, Gene Frostbite, GeneJ Composer, Giggles Littlebird, Grady Echegaray, Guni Greenstein, Gypsy Tripsa, Hackshaven Harford, Ham Rambler, Han Shuffle, Hanglow Short, Hatzfeld Runo, herina Bode, Horatio Freund, Hypatia Callisto, Hypatia Pickens, Identity Euler, Imnotgoing Sideways, Innula Zenovka, Iyoba Tarantal, Jack Abraham, Jagga Meredith, Jennifer Boyle, Jeremy Marquez, Jessica Qin, Jinx Nordberg, Jo Bernandes, Jocial Sonnenkern, Joel Savard, Jondan Lundquist, Josef Munster, Josette Windlow, Juilan Tripsa, Juro Kothari, Justin RiversRunRed, Kagehi Kohn, Kaimen Takahe, Keklily Longfall, Ken Lavender, Kestral Karas, Khisme Nitely, Kimar Coba, Kithrak Kirkorian, Kitty Barnett, Kolor Fall, Komiko Okamoto, Korvel Noh, Larry Pixel, Leal Choche, len Starship, Lenae Munz, Lexi Frua, Lillie Cordeaux, Lizzy Macarthur, LSL Scientist, Luban Yiyuan, Luc Starsider, Maccus McCullough, Madison Blanc, Maggie Darwin, Mallory Destiny, Manx Wharton, Marc Claridge, Marc2 Sands, Matthew Anthony, Maxim RiversRunRed, Medhue Simoni, Melinda Latynina, Mencius Watts, Michi Lumin, Midian Farspire, Miles Glaz, Mindy Mathy, Mitch Wagner, Mo Hax, Mourna Biziou, Nao Noe, naofan Teardrop, Naomah Beaumont, Nathiel Siamendes, Nber Medici, Neko Link, Netpat Igaly, Neutron Chesnokov, Newfie Pendragon, Nicholai Laviscu, Nick Rhodes, Nicoladie Gymnast, Ollie Kubrick, Orenj Marat, Orion Delphis, Oryx Tempel, Parvati Silverweb, PeterPunk Mooney, Pixel Scientist, Pounce Teazle, Professor Noarlunga, Quantum Destiny, Quicksilver Hermes, Ralf Setsuko, RAT Quan, RedMokum Bravin, Revolution Perenti, Rezit Sideways, Rich Grainger, Rosco Teardrop, Rose Evans, Rudee Voom, RufusTT Horsefly, Saii Hallard, SaintLEOlions Zimer, Samm Larkham, Satanello Miami, SexySteven Morrisey, Sheet Spotter, Shnurui Troughton, sicarius Thorne, Sicarius Toxx, Sini Nubalo, SLB Wirefly, snowy Sidran, Soupa Segura, ST Mensing, Starshine Halasy, Stickman Ingmann, Synystyr Texan, Takeda Terrawyng, Tali Rosca, Templar Merlin, Tezcatlipoca Bisiani, Tiel Stonecutter, Tony Kembia, TouchaHoney Perhaps, Trey Reanimator, TriloByte Zanzibar, Trinity Dechou, Trinity Dejavu, Unlikely Quintessa, UsikuFarasi Kanarik, Veritas Raymaker, Vex Streeter, Viaticus Speculaas, Villain Baroque, Vixie Durant, Void Singer, Watty Berkson, Westley Schridde, Westley Streeter, Whimsy Winx, Winter Ventura, Wundur Primbee, xstorm Radek, YongYong Francois, Zak Westminster, Zana Kohime, Zaren Alexander, Zeja Pyle, ZenMondo Wormser, Zoex Flanagan e muitos mais.
-
-
-
-
-&quot;O trabalho continua, a causa vive, a esperança persiste, e os sonhos nunca morrem&quot; - Edward Kennedy
+ <text name="linden_intro">
+ O Second Life é trazido a você pela Lindens:
+ </text>
+ <text_editor name="linden_names">
+ Philip, Andrew, Doug, Richard, Phoenix, Ian, Mark, Robin, Dan, Char, Ryan, Eric, Jim, Lee, Jeff, Michael, Kelly, Steve, Catherine, Bub, Ramzi, Jill, Jeska, Don, Kona, Callum, Charity, Jack, Shawn, babbage, James, Lauren, Blue, Brent, Reuben, Pathfinder, Jesse, Patsy, Torley, Bo, Cyn, Jonathan, Gia, Annette, Ginsu, Harry, Lex, Runitai, Guy, Cornelius, Beth, Swiss, Thumper, Wendy, Teeple, Seth, Dee, Mia, Sally, Liana, Aura, Beez, Milo, Red, Gulliver, Marius, Joe, Jose, Dore, Justin, Nora, Morpheus, Lexie, Amber, Chris, Xan, Leyla, Walker, Sabin, Joshua, Hiromi, Tofu, Fritz, June, Jean, Ivy, Dez, Ken, Betsy, Which, Spike, Rob, Zee, Dustin, George, Claudia, del, Matthew, jane, jay, Adrian, Yool, Rika, Yoz, siobhan, Qarl, Benjamin, Beast, Everett, madhavi, Christopher, Izzy, stephany, Jeremy, sean, adreanne, Pramod, Tobin, sejong, Iridium, maurice, kj, Meta, kari, JP, bert, kyle, Jon, Socrates, Bridie, Ivan, maria, Aric, Coco, Periapse, sandy, Storrs, Lotte, Colossus, Brad, Pastrami, Zen, BigPapi, Banzai, Sardonyx, Mani, Garry, Jaime, Neuro, Samuel, Niko, CeeLo, Austin, Soft, Poppy, emma, tessa, angelo, kurz, alexa, Sue, CG, Blake, Erica, Brett, Bevis, kristen, Q, simon, Enus, MJ, laurap, Kip, Scouse, Ron, Ram, kend, Marty, Prospero, melissa, kraft, Nat, Seraph, Hamilton, Lordan, Green, miz, Ashlei, Trinity, Ekim, Echo, Charlie, Rowan, Rome, Jt, Doris, benoc, Christy, Bao, Kate, Tj, Patch, Cheah, Johan, Brandy, Angela, Oreh, Cogsworth, Lan, Mitchell, Space, Bambers, Einstein, Bender, Malbers, Matias, Maggie, Rothman, Milton, Niall, Marin, Allison, Mango, Andrea, Katt, Yi, Ambroff, Rico, Raymond, Gail, Christa, William, Dawn, Usi, Dynamike, M, Corr, Dante, Molly, kaylee, Danica, Kelv, Lil, jacob, Nya, Rodney, elsie, Blondin, Grant, Nyx, Devin, Monty, Minerva, Keira, Katie, Jenn, Makai, Clare, Joy, Cody, Gayathri, FJ, spider, Oskar, Landon, Jarv, Noelle, Al, Doc, Gray, Vir, t, Maestro, Simone, Shannon, yang, Courtney, Scott, charlene, Quixote, Susan, Zed, Amanda, Katelin, Esbee, JoRoan, Enkidu, roxie, Scarlet, Merov, Kevin, Judy, Rand, Newell, Les, Dessie, Galen, Michon, Geo, Siz, Calyle, Pete, Praveen, Callen, Sheldon, Pink, Nelson, jenelle, Terrence, Nathan, Juan, Sascha, Huseby, Karina, Kaye, Kotler, Lis, Darv, Charrell, Dakota, Kimmora, Theeba, Taka, Mae, Perry, Ducot, dana, Esther, Dough, gisele, Doten, Viale, Fisher, jessieann, ashley, Torres, delby, rountree, kurt, Slaton, Madison, Rue, Gino, Wen, Casssandra, Brodesky, Squid, Gez, Rakesh, Gecko, Ladan, Tony, Tatem, Squire, Falcon, BK, Crimp, Tiggs, Bacon, Coyot, Carmilla, Webb, Sea, Arch, Jillian, Jason, Bernard, Vogt, Peggy, dragon, Pup, xandix, Wallace, Bewest, Inoshiro, Rhett, AG, Aimee, Ghengis, Itiaes, Eli, Steffan, Epic, Grapes, Stone, Prep, Scobu, Robert, Alain, Carla, Vicky, Tia, Alec, Taras, Lisa, Oz, Ariane, Log, House, Kazu, Kim, Drofnas, Tyler, Campbell, Michele, Madeline, Nelly, Baron, Thor, Lori, Hele, Fredrik, Teddy, Pixie, Berry, Gabrielle, Alfonso, Brooke, Wolf, Ringo, Cru, Charlar, Rodvik, Gibson, Elise, Bagman, Greger, Leonidas, Jerm, Leslie, CB, Brenda, Durian, Carlo, mm, Zeeshan, Caleb, Max, Elikak, Mercille, Steph, Chase
+ </text_editor>
+ <text name="contrib_intro">
+ com contribuições de código aberto de:
+ </text>
+ <text_editor name="contrib_names">
+ Dummy Name substituído durante a execução
+ </text_editor>
+ <text name="trans_intro">
+ e traduções de:
+ </text>
+ <text_editor name="trans_names">
+ Dummy Name substituído durante a execução
</text_editor>
</panel>
<panel label="Licenças" name="licenses_panel">
diff --git a/indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml b/indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml
new file mode 100644
index 0000000000..3aaee2d4a7
--- /dev/null
+++ b/indra/newview/skins/default/xui/pt/floater_preferences_proxy.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<floater name="Proxy Settings Floater" title="Configurações de proxy">
+ <check_box initial_value="false" label="Use proxy HTTP para páginas da Web" name="web_proxy_enabled"/>
+ <text name="http_proxy_label">
+ Proxy HTTP:
+ </text>
+ <line_editor name="web_proxy_editor" tool_tip="O nome DNS ou endereço IP do proxy HTTP que você deseja usar."/>
+ <spinner label="Porta:" name="web_proxy_port" tool_tip="A porta do proxy HTTP que você deseja usar."/>
+ <check_box label="Use o proxy SOCKS 5 para tráfego de UDP" name="socks_proxy_enabled"/>
+ <text name="socks5_proxy_label">
+ Proxy SOCKS 5:
+ </text>
+ <line_editor name="socks_proxy_editor" tool_tip="O nome DNS ou endereço IP do proxy SOCKS 5 que você deseja usar."/>
+ <spinner label="Porta:" name="socks_proxy_port" tool_tip="A porta do proxy SOCKS 5 que você deseja usar."/>
+ <text name="socks_auth_label">
+ Autenticação SOCKS:
+ </text>
+ <radio_group name="socks5_auth_type">
+ <radio_item label="Sem autenticação" name="Socks5NoAuth" tool_tip="O proxy Socks5 não requer autenticação." value="Nenhum"/>
+ <radio_item label="Nome de usuário/senha" name="Socks5UserPass" tool_tip="O proxy Socks5 requer autenticação de nome de usuário/senha." value="UserPass"/>
+ </radio_group>
+ <text name="socks5_username_label">
+ Nome de usuário:
+ </text>
+ <text name="socks5_password_label">
+ Senha:
+ </text>
+ <line_editor name="socks5_username" tool_tip="O nome de usuário usado para autenticar seu servidor SOCKS 5"/>
+ <line_editor name="socks5_password" tool_tip="A senha usada para autenticar seu servidor SOCKS 5"/>
+ <text name="other_proxy_label">
+ Outro proxy de tráfego HTTP:
+ </text>
+ <radio_group name="other_http_proxy_type">
+ <radio_item label="Não enviar para proxy" name="OtherNoProxy" tool_tip="O tráfego HTTP que não seja da Web NÃO será enviado a qualquer proxy." value="Nenhum"/>
+ <radio_item label="Usar proxy HTTP" name="OtherHTTPProxy" tool_tip="O HTTP que não seja da Web será enviado por meio do proxy da Web configurado." value="Web"/>
+ <radio_item label="Usar proxy SOCKS 5" name="OtherSocksProxy" tool_tip="O HTTP que não seja da Web será enviado por meio do proxy Socks 5 configurado." value="Socks"/>
+ </radio_group>
+ <button label="OK" label_selected="OK" name="OK"/>
+ <button label="Cancelar" label_selected="Cancelar" name="Cancel"/>
+</floater>
diff --git a/indra/newview/skins/default/xui/pt/menu_inventory.xml b/indra/newview/skins/default/xui/pt/menu_inventory.xml
index 7aa3b836a4..ba3879b5a1 100644
--- a/indra/newview/skins/default/xui/pt/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/pt/menu_inventory.xml
@@ -83,5 +83,7 @@
<menu_item_call label="Editar" name="Wearable Edit"/>
<menu_item_call label="Adicionar" name="Wearable Add"/>
<menu_item_call label="Tirar" name="Take Off"/>
+ <menu_item_call label="Copiar para Caixa de saída do lojista" name="Merchant Copy"/>
+ <menu_item_call label="Mover para Caixa de saída do lojista" name="Merchant Move"/>
<menu_item_call label="--Sem opções--" name="--no options--"/>
</menu>
diff --git a/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml b/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml
index 44117c8865..ac84b02870 100644
--- a/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml
+++ b/indra/newview/skins/default/xui/pt/menu_media_ctrl.xml
@@ -3,4 +3,5 @@
<menu_item_call label="Cortar" name="Cut"/>
<menu_item_call label="Cortar" name="Copy"/>
<menu_item_call label="Colar" name="Paste"/>
+ <menu_item_call label="Abrir o Web Inspector" name="open_webinspector"/>
</context_menu>
diff --git a/indra/newview/skins/default/xui/pt/menu_mode_change.xml b/indra/newview/skins/default/xui/pt/menu_mode_change.xml
new file mode 100644
index 0000000000..314d3e409b
--- /dev/null
+++ b/indra/newview/skins/default/xui/pt/menu_mode_change.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<toggleable_menu name="Mode Change">
+ <menu_item_check label="Básico" name="BasicMode"/>
+ <menu_item_check label="Avançado" name="AdvancedMode"/>
+</toggleable_menu>
diff --git a/indra/newview/skins/default/xui/pt/menu_viewer.xml b/indra/newview/skins/default/xui/pt/menu_viewer.xml
index ea54afed5e..e1d066261a 100644
--- a/indra/newview/skins/default/xui/pt/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/pt/menu_viewer.xml
@@ -138,7 +138,6 @@
<menu_item_call label="Som (L$[COST])..." name="Upload Sound"/>
<menu_item_call label="Animação (L$[COST])..." name="Upload Animation"/>
<menu_item_call label="Modelar..." name="Upload Model"/>
- <menu_item_call label="Assistente de modelagem..." name="Upload Model Wizard"/>
<menu_item_call label="Volume (L$[COST] por arquivo)..." name="Bulk Upload"/>
</menu>
<menu_item_call label="Desfazer" name="Undo"/>
@@ -248,6 +247,7 @@
<menu_item_check label="Mostrar info da textura" name="Show Texture Info"/>
<menu_item_check label="Mostrar cor sob o cursor" name="Show Color Under Cursor"/>
<menu_item_check label="Mostrar memória" name="Show Memory"/>
+ <menu_item_check label="Exibir informações de memória privadas" name="Show Private Mem Info"/>
<menu_item_check label="Mostrar mudanças a objetos" name="Show Updates"/>
</menu>
<menu label="Force an Error" name="Force Errors">
diff --git a/indra/newview/skins/default/xui/pt/notifications.xml b/indra/newview/skins/default/xui/pt/notifications.xml
index 22de7edfdd..70d882822d 100644
--- a/indra/newview/skins/default/xui/pt/notifications.xml
+++ b/indra/newview/skins/default/xui/pt/notifications.xml
@@ -84,6 +84,19 @@ Verifique se a conexão à internet está funcionando.
Salvar modificações?
<usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Não salvar" yestext="Salvar"/>
</notification>
+ <notification name="ConfirmNoCopyToOutbox">
+ Você não tem permissão para copiar este item para a Caixa de saída do lojista. Tem certeza de que deseja mover o itens a seguir?
+ [ITEM_NAME]
+ <usetemplate name="okcancelbuttons" notext="Não" yestext="Sim"/>
+ </notification>
+ <notification name="OutboxUploadComplete">
+ Envio para Mercado concluído.
+ <usetemplate name="okbutton" yestext="Viva!"/>
+ </notification>
+ <notification name="OutboxUploadHadErrors">
+ Envio para Mercado concluído com erros! Corrija os problemas em sua caixa de saída e tente novamente. Obrigado.
+ <usetemplate name="okbutton" yestext="Tudo bem!"/>
+ </notification>
<notification name="CompileQueueSaveText">
Houve um problema com o carregamento do texto para um script devido à seguinte razão: [REASON]. Por favor, tente novamente mais tarde.
</notification>
@@ -2400,12 +2413,20 @@ Por favor, tente novamente em alguns instantes.
Nenhum lote válido foi encontrado.
</notification>
<notification name="ObjectGiveItem">
- Um objeto chamado &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, de [NAME_SLURL], lhe deu este(a) [OBJECTTYPE]:
+ Um objeto chamado &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, de [NAME_SLURL], obteve este(a) [OBJECTTYPE]:
&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
<form name="form">
<button name="Keep" text="Segure"/>
<button name="Discard" text="Descarte"/>
- <button name="Mute" text="Bloquear"/>
+ <button name="Mute" text="Bloquear proprietário"/>
+ </form>
+ </notification>
+ <notification name="OwnObjectGiveItem">
+ O objeto chamado &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, de [NAME_SLURL], obteve este(a) [OBJECTTYPE]:
+&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+ <form name="form">
+ <button name="Keep" text="Manter"/>
+ <button name="Discard" text="Descartar"/>
</form>
</notification>
<notification name="UserGiveItem">
@@ -2549,6 +2570,7 @@ Deseja aceitar?
&apos;&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; de [NAME]
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Bloquear"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -2556,6 +2578,7 @@ Deseja aceitar?
&lt;nolink&gt;[TITLE]&lt;/nolink&gt;&apos; de [GROUPNAME]&apos;
[MESSAGE]
<form name="form">
+ <button name="Mute" text="Bloquear"/>
<button name="Ignore" text="Ignorar"/>
</form>
</notification>
@@ -2883,6 +2906,12 @@ Se o botão Falar for ocultado, o recurso de voz será desabilitado.
<notification label="Você tem dólares Linden!" name="HintLindenDollar">
Seu saldo de L$ está aqui. Clique em Comprar L$ para trocar mais dólares Linden.
</notification>
+ <notification name="LowMemory">
+ Seu pool de memória está baixo. Algumas funções do SL foram desativadas para evitar falhas. Encerre os outros aplicativos. Reinicie o SL se o problema persistir.
+ </notification>
+ <notification name="ForceQuitDueToLowMemory">
+ O SL será encerrado em 30 segundos devido falta de memória.
+ </notification>
<notification name="PopupAttempt">
Um pop-up foi bloqueado.
<form name="form">
@@ -2890,6 +2919,54 @@ Se o botão Falar for ocultado, o recurso de voz será desabilitado.
<button name="open" text="Abrir pop-up"/>
</form>
</notification>
+ <notification name="SOCKS_NOT_PERMITTED">
+ O proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; recusou a conexão, não permitida pelo conjunto de regras.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_CONNECT_ERROR">
+ O proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; recusou a conexão. Não foi possível abrir o canal TCP.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_NOT_ACCEPTABLE">
+ O proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; recusou o sistema de autenticação selecionado.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_AUTH_FAIL">
+ O proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; informou que suas credenciais são inválidas.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UDP_FWD_NOT_GRANTED">
+ O proxy SOCKS 5 &quot;[HOST]:[PORT]&quot; recusou a solicitação de UDP ASSOCIATE.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_HOST_CONNECT_FAILED">
+ Não foi possível conectar-se ao servidor de proxy SOCKS 5 &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_UNKNOWN_STATUS">
+ Erro desconhecido de proxy com o servidor &quot;[HOST]:[PORT]&quot;.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_INVALID_HOST">
+ Endereço de proxy SOCKS ou porta &quot;[HOST]:[PORT]&quot; inválidos.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="SOCKS_BAD_CREDS">
+ Nome de usuário ou senha de SOCKS 5 inválidos.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_HTTP_HOST">
+ Endereço de proxy HTTP ou porta &quot;[HOST]:[PORT]&quot; inválidos.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="PROXY_INVALID_SOCKS_HOST">
+ Endereço de proxy SOCKS ou porta &quot;[HOST]:[PORT]&quot; inválidos.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
+ <notification name="ChangeProxySettings">
+ As configurações de proxy terão efeito depois que [APP_NAME] for reiniciado.
+ <usetemplate name="okbutton" yestext="OK"/>
+ </notification>
<notification name="AuthRequest">
O site em &apos;&lt;nolink&gt;[HOST_NAME]&lt;/nolink&gt;&apos; em &apos;[REALM]&apos; requer nome e senha.
<form name="form">
diff --git a/indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml b/indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml
new file mode 100644
index 0000000000..442622035a
--- /dev/null
+++ b/indra/newview/skins/default/xui/pt/panel_outbox_inventory.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<outbox_inventory_panel name="inventory_outbox" tool_tip="Arraste e solte os itens aqui para prepará-los para venda na frente da sua loja"/>
diff --git a/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml b/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml
index d8d4a8fc1c..9259c0ed56 100644
--- a/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml
+++ b/indra/newview/skins/default/xui/pt/panel_preferences_setup.xml
@@ -11,17 +11,6 @@
</text>
<check_box label="Personalizar porta" name="connection_port_enabled"/>
<spinner label="Número da porta:" name="connection_port"/>
- <text name="cache_size_label_l">
- Tamanho do cache
- </text>
- <text name="text_box5">
- MB
- </text>
- <text name="Cache location">
- Localização do cache:
- </text>
- <button label="Procurar" label_selected="Procurar" name="set_cache"/>
- <button label="Redefinir" label_selected="Redefinir" name="reset_cache"/>
<text name="Web:">
Web:
</text>
@@ -33,12 +22,6 @@
<check_box initial_value="true" label="Aceitar cookies" name="cookies_enabled"/>
<check_box initial_value="true" label="Habilitar Javascript" name="browser_javascript_enabled"/>
<check_box initial_value="falso" label="Ativar pop-ups no navegador de mídia" name="media_popup_enabled"/>
- <check_box initial_value="false" label="Ativar web proxy" name="web_proxy_enabled"/>
- <text name="Proxy location">
- Localização do proxy:
- </text>
- <line_editor name="web_proxy_editor" tool_tip="O nome ou endereço IP do proxy da sua preferência"/>
- <spinner label="Porta:" name="web_proxy_port"/>
<text name="Software updates:">
Atualizações de software:
</text>
@@ -46,4 +29,8 @@
<combo_box.item label="Instalar automaticamente" name="Install_automatically"/>
<combo_box.item label="Baixar e instalar atualizações manualmente" name="Install_manual"/>
</combo_box>
+ <text name="Proxy Settings:">
+ Configurações de proxy:
+ </text>
+ <button label="Ajustar configurações de proxy" label_selected="Procurar" name="set_proxy"/>
</panel>
diff --git a/indra/newview/skins/default/xui/pt/panel_status_bar.xml b/indra/newview/skins/default/xui/pt/panel_status_bar.xml
index f7890ae57d..0d0f8cbf19 100644
--- a/indra/newview/skins/default/xui/pt/panel_status_bar.xml
+++ b/indra/newview/skins/default/xui/pt/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domingo:Segunda-feira:Terça-feira:Quarta-feira:Quinta-feira:Sexta-feira:Sábado
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Janeiro:Fevereiro:Março:Abril:Maio:Junho:Julho:Agosto:Setembro:Outubro:Novembro:Dezembro
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perda de pacote
</panel.string>
@@ -25,6 +19,10 @@
<text name="balance" tool_tip="Atualizar saldo de L$" value="L$20"/>
<button label="Comprar L$" name="buyL" tool_tip="Comprar mais L$"/>
</panel>
+ <combo_box name="mode_combo" tool_tip="Selecione o modo. O modo Básico é mais rápido e ideal para explorar e conversar. Use o modo Avançado para acessar mais recursos.">
+ <combo_box.item label="Modo básico" name="Basic"/>
+ <combo_box.item label="Modo avançado" name="Advanced"/>
+ </combo_box>
<text name="TimeText" tool_tip="Hora atual (Pacífico)">
24:00 AM PST
</text>
diff --git a/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml b/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml
index 988e7c7076..77c552a852 100644
--- a/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/pt/sidepanel_inventory.xml
@@ -2,35 +2,47 @@
<panel label="Coisas" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<layout_stack name="inventory_layout_stack">
- <layout_panel name="inbox_layout_panel">
- <panel label="" name="marketplace_inbox">
- <string name="InboxLabelWithArg">
- Itens recebidos ([NUM])
- </string>
- <string name="InboxLabelNoArg">
- Itens recebidos
- </string>
- <button label="Itens recebidos" name="inbox_btn"/>
- <text name="inbox_fresh_new_count">
- [NUM] novos
- </text>
- <panel tool_tip="Drag and drop items to your inventory to manage and use them">
- <text name="inbox_inventory_placeholder">
- Compras do marketplace serão entregues aqui.
- </text>
- </panel>
- </panel>
- </layout_panel>
- <layout_panel name="outbox_layout_panel">
- <panel label="" name="marketplace_outbox">
- <button label="Caixa de saída de comerciante" name="outbox_btn"/>
- <button label="" name="outbox_sync_btn" tool_tip="Enviar para minha vitrine no Marketplace"/>
- <panel tool_tip="Drag and drop items here to prepare them for sale on your storefront">
- <text name="outbox_inventory_placeholder">
- Abra uma conta de comerciante para usar este recurso.
- </text>
- </panel>
- </panel>
+ <layout_panel name="inbox_outbox_layout_panel">
+ <layout_stack name="inbox_outbox_layout_stack">
+ <layout_panel name="inbox_layout_panel">
+ <panel label="" name="marketplace_inbox">
+ <string name="InboxLabelWithArg">
+ Itens recebidos ([NUM])
+ </string>
+ <string name="InboxLabelNoArg">
+ Itens recebidos
+ </string>
+ <button label="Itens recebidos" name="inbox_btn"/>
+ <text name="inbox_fresh_new_count">
+ [NUM] novo(s)
+ </text>
+ <panel tool_tip="Drag and drop items to your inventory to manage and use them">
+ <text name="inbox_inventory_placeholder">
+ Compras do marketplace serão entregues aqui.
+ </text>
+ </panel>
+ </panel>
+ </layout_panel>
+ <layout_panel name="outbox_layout_panel">
+ <panel label="" name="marketplace_outbox">
+ <string name="OutboxLabelWithArg">
+ Caixa de saída do lojista ([NUM])
+ </string>
+ <string name="OutboxLabelNoArg">
+ Caixa de saída do lojista
+ </string>
+ <button label="Caixa de saída do lojista" name="outbox_btn"/>
+ <button label="" name="outbox_sync_btn" tool_tip="Enviar para a frente do meu mercado"/>
+ <panel>
+ <panel name="outbox_inventory_placeholder_panel">
+ <text name="outbox_inventory_placeholder_title">
+ Carregando...
+ </text>
+ </panel>
+ </panel>
+ </panel>
+ </layout_panel>
+ </layout_stack>
</layout_panel>
</layout_stack>
<panel name="button_panel">
diff --git a/indra/newview/skins/default/xui/pt/strings.xml b/indra/newview/skins/default/xui/pt/strings.xml
index 2f3b438564..cffe92461b 100644
--- a/indra/newview/skins/default/xui/pt/strings.xml
+++ b/indra/newview/skins/default/xui/pt/strings.xml
@@ -288,6 +288,18 @@ Titulares de contas gratuitas não poderão acessar o Second Life para acomodar
Apenas um item único pode ser arrastado para este local
</string>
<string name="TooltipPrice" value="L$[AMOUNT]"/>
+ <string name="TooltipOutboxNoTransfer">
+ Um ou mais objetos não podem ser vendidos ou transferidos para outros usuário.
+ </string>
+ <string name="TooltipOutboxWorn">
+ Você está usando um ou mais desses objetos. Remova-os de seu avatar e tente movê-los novamente.
+ </string>
+ <string name="TooltipOutboxFolderLevels">
+ Esta pasta tem muitos níveis de subpastas. Reorganize as pastas internas em até 4 níveis no máximo (Pasta raiz contém A que contém B que contém C).
+ </string>
+ <string name="TooltipOutboxTooManyObjects">
+ Esta pasta contém mais de 200 objetos. Embale alguns dos itens para reduzir a contagem de objetos.
+ </string>
<string name="TooltipHttpUrl">
Clique para ver a página web
</string>
@@ -1144,8 +1156,65 @@ Titulares de contas gratuitas não poderão acessar o Second Life para acomodar
<string name="InventoryInboxNoItems">
Compras do marketplace serão entregues aqui.
</string>
+ <string name="MarketplaceURL">
+ http://marketplace.[DOMAIN_NAME]
+ </string>
+ <string name="MarketplaceURL_CreateStore">
+ http://marketplace.[DOMAIN_NAME]/create_store
+ </string>
+ <string name="MarketplaceURL_LearnMore">
+ http://marketplace.[DOMAIN_NAME]/learn_more
+ </string>
+ <string name="InventoryOutboxCreationErrorTitle">
+ Sua Caixa de saída do lojista não está configurada corretamente
+ </string>
+ <string name="InventoryOutboxCreationErrorTooltip">
+ Erro de configuração na Caixa de saída do lojista
+ </string>
+ <string name="InventoryOutboxCreationError">
+ Entre em contato com o Atendimento para corrigir o problema.
+ </string>
+ <string name="InventoryOutboxNotMerchantTitle">
+ Qualquer um pode vender itens no Mercado
+ </string>
+ <string name="InventoryOutboxNotMerchantTooltip">
+ Torne-se um lojista!
+ </string>
+ <string name="InventoryOutboxNotMerchant">
+ [[MARKETPLACE_URL] O Mercado do Second Life] oferece mais de um milhão de produtos virtuais para venda, todos criados pelos residentes. Você também pode vender os itens que você cria, além de alguns itens que comprou. É fácil e a configuração é gratuita. [[LEARN_MORE_URL] Saiba mais] ou [[CREATE_STORE_URL] crie uma loja] no Mercado para começar.
+ </string>
+ <string name="InventoryOutboxNoItemsTitle">
+ Uma nova maneira de vender os itens no Mercado
+ </string>
+ <string name="InventoryOutboxNoItemsTooltip">
+ Arraste e solte os itens aqui para prepará-los para venda no Mercado
+ </string>
<string name="InventoryOutboxNoItems">
- Arraste seus itens aqui para preparar sua listagem na sua vitrine do Marketplace.
+ Arraste os itens ou pastas que deseja vender para esta área. Será exibida uma cópia deles, deixando seu inventário inalterado, a menos que você arraste um item que não permita cópia. Quando estiver pronto para enviar os itens para o Mercado, clique no botão Enviar. Quando os itens tiverem sido movidos para seu Inventário de mercado, eles desaparecerão desta pasta.
+ </string>
+ <string name="Marketplace Error None">
+ Sem erros
+ </string>
+ <string name="Marketplace Error Not Merchant">
+ Erro: antes de enviar os itens para o Mercado, é necessário que você se defina como um lojista (sem custos).
+ </string>
+ <string name="Marketplace Error Empty Folder">
+ Erro: esta pasta está vazia.
+ </string>
+ <string name="Marketplace Error Unassociated Products">
+ Erro: ocorreu uma falha ao enviar este item, pois sua conta de lojista tem muitos itens não associados a produtos. Para corrigir esse erro, faça o login no site do mercado e reduza a contagem de itens não associados.
+ </string>
+ <string name="Marketplace Error Object Limit">
+ Erro: este item contém muitos objetos. Corrija esse erro unindo os objetos em caixa para reduzir a contagem total a menos de 200.
+ </string>
+ <string name="Marketplace Error Folder Depth">
+ Erro: este item contém muitos níveis de pastas aninhadas. Reorganize-o em até 3 níveis de pastas aninhadas, no máximo.
+ </string>
+ <string name="Marketplace Error Unsellable Item">
+ Erro: este item não pode ser vendido no mercado.
+ </string>
+ <string name="Marketplace Error Internal Import">
+ Erro: ocorreu um problema com este item. Tente novamente mais tarde.
</string>
<string name="no_transfer" value="(não transferível)"/>
<string name="no_modify" value="(não modificável)"/>
@@ -4046,7 +4115,7 @@ Denunciar abuso
<string name="Female - Wow">
Wow - feminino
</string>
- <string name="/bow">
+ <string name="/bow1">
/reverência
</string>
<string name="/clap">
diff --git a/indra/newview/skins/default/xui/zh/floater_about_land.xml b/indra/newview/skins/default/xui/zh/floater_about_land.xml
index e59a23fda0..2568d492f0 100644
--- a/indra/newview/skins/default/xui/zh/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/zh/floater_about_land.xml
@@ -90,19 +90,19 @@
群組:
</text>
<button label="設定" name="Set..."/>
- <check_box label="Allow Deed to Group" name="check deed" tool_tip="A group officer can deed this land to the group, so it will be supported by the group&apos;s land allocation."/>
- <button label="Deed" name="Deed..." tool_tip="You may only deed land if you are an officer in the selected group."/>
+ <check_box label="å…許讓渡給群組" name="check deed" tool_tip="A group officer can deed this land to the group, so it will be supported by the group&apos;s land allocation."/>
+ <button label="讓渡" name="Deed..." tool_tip="You may only deed land if you are an officer in the selected group."/>
<check_box label="Owner Makes Contribution With Deed" name="check contrib" tool_tip="When the land is deeded to the group, the former owner contributes enough land allocation to support it."/>
<text name="For Sale:">
出售:
</text>
<text name="Not for sale.">
- Not for sale
+ ä¸å‡ºå”®
</text>
<text name="For Sale: Price L$[PRICE].">
Price: L$[PRICE] (L$[PRICE_PER_SQM]/m²)
</text>
- <button label="Sell Land" name="Sell Land..."/>
+ <button label="出售土地" name="Sell Land..."/>
<text name="For sale to">
出售給:[BUYER]
</text>
@@ -134,7 +134,7 @@
<button label="購買土地" name="Buy Land..."/>
<button label="腳本資訊" name="Scripts..."/>
<button label="為群組購買" name="Buy For Group..."/>
- <button label="購買通行權" name="Buy Pass..." tool_tip="A pass gives you temporary access to this land."/>
+ <button label="購買通行權" name="Buy Pass..." tool_tip="通行權å…許你暫時å¯å‡ºå…¥é€™å¡ŠåœŸåœ°ã€‚"/>
<button label="放棄土地" name="Abandon Land..."/>
<button label="Reclaim Land" name="Reclaim Land..."/>
<button label="Linden Sale" name="Linden Sale..." tool_tip="Land must be owned, set content, and not already for auction."/>
@@ -212,31 +212,31 @@
Region Object Bonus Factor: [BONUS]
</text>
<text name="Simulator primitive usage:">
- Primitive usage:
+ 幾何元件使用:
</text>
<text name="objects_available">
- [COUNT] out of [MAX] ([AVAILABLE] available)
+ 使用 [MAX] 中的 [COUNT] (剩餘 [AVAILABLE] å¯ç”¨ï¼‰
</text>
<text name="Primitives parcel supports:">
- Prims parcel supports:
+ 地段所æ供的幾何元件數:
</text>
<text name="object_contrib_text">
[COUNT]
</text>
<text name="Primitives on parcel:">
- Prims on parcel:
+ 地段上的幾何元件數:
</text>
<text name="total_objects_text">
[COUNT]
</text>
<text name="Owned by parcel owner:">
- Owned by parcel owner:
+ 地段æ“有者所æ“有:
</text>
<text name="owner_objects_text">
[COUNT]
</text>
<button label="顯示" label_selected="顯示" name="ShowOwner"/>
- <button label="退回" name="ReturnOwner..." tool_tip="Return objects to their owners."/>
+ <button label="退回" name="ReturnOwner..." tool_tip="退回物件給它們的æ“有者。"/>
<text name="Set to group:">
設定群組:
</text>
@@ -244,15 +244,15 @@
[COUNT]
</text>
<button label="顯示" label_selected="顯示" name="ShowGroup"/>
- <button label="退回" name="ReturnGroup..." tool_tip="Return objects to their owners."/>
+ <button label="退回" name="ReturnGroup..." tool_tip="退回物件給它們的æ“有者。"/>
<text name="Owned by others:">
- Owned by others:
+ 其他人所æ“有:
</text>
<text name="other_objects_text">
[COUNT]
</text>
<button label="顯示" label_selected="顯示" name="ShowOther"/>
- <button label="退回" name="ReturnOther..." tool_tip="Return objects to their owners."/>
+ <button label="退回" name="ReturnOther..." tool_tip="退回物件給它們的æ“有者。"/>
<text name="Selected / sat upon:">
Selected / sat upon:
</text>
@@ -263,9 +263,9 @@
Auto return other Residents&apos; objects (minutes, 0 for off):
</text>
<text name="Object Owners:">
- Object Owners:
+ 物件æ“有者:
</text>
- <button name="Refresh List" tool_tip="Refresh Object List"/>
+ <button name="Refresh List" tool_tip="刷新物件清單"/>
<button label="退回物件" name="Return objects..."/>
<name_list name="owner list">
<name_list.columns label="Type" name="type"/>
@@ -276,14 +276,14 @@
</panel>
<panel label="é¸é …" name="land_options_panel">
<panel.string name="search_enabled_tooltip">
- Let people see this parcel in search results
+ 讓其他人å¯ä»¥åœ¨æœå°‹çµæžœä¸­çœ‹åˆ°é€™å¡Šåœ°æ®µ
</panel.string>
<panel.string name="search_disabled_small_tooltip">
This option is disabled because this parcel&apos;s area is 128 m² or smaller.
Only large parcels can be listed in search.
</panel.string>
<panel.string name="search_disabled_permissions_tooltip">
- This option is disabled because you cannot modify this parcel&apos;s options.
+ 這個é¸é …已關閉因為你ä¸èƒ½ä¿®æ”¹é€™å€‹åœ°æ®µçš„é¸é …。
</panel.string>
<panel.string name="mature_check_mature">
é©åº¦æˆäººå…§å®¹
@@ -331,35 +331,35 @@ Only large parcels can be listed in search.
</text>
<check_box label="安全(無傷害)" name="check safe" tool_tip="若勾é¸å‰‡è¨­æ‡‰åœŸåœ°ç‚ºå®‰å…¨çš„,傷害性的戰鬥將被關閉。清除勾é¸å¾Œæ‰èƒ½é€²è¡Œå‚·å®³æ€§çš„戰鬥。"/>
<check_box label="ç¦æ­¢æŽ¨æ’ž" name="PushRestrictCheck" tool_tip="防止使用腳本推撞。勾é¸é€™å€‹é¸é …å°‡å¯ä»¥æœ‰æ•ˆé˜²æ­¢ä½ åœŸåœ°ä¸Šçš„破壞行為。"/>
- <check_box label="將地點刊登顯示在æœå°‹ä¸­ï¼ˆL$30 / æ¯é€±ï¼‰" name="ShowDirectoryCheck" tool_tip="Let people see this parcel in search results"/>
+ <check_box label="將地點刊登顯示在æœå°‹ä¸­ï¼ˆL$30 / æ¯é€±ï¼‰" name="ShowDirectoryCheck" tool_tip="讓其他人å¯ä»¥åœ¨æœå°‹çµæžœä¸­çœ‹åˆ°é€™å¡Šåœ°æ®µ"/>
<combo_box name="land category with adult">
<combo_box.item label="任何類別" name="item0"/>
<combo_box.item label="Linden Location" name="item1"/>
<combo_box.item label="完全æˆäºº" name="item2"/>
- <combo_box.item label="Arts &amp; Culture" name="item3"/>
- <combo_box.item label="Business" name="item4"/>
- <combo_box.item label="Educational" name="item5"/>
- <combo_box.item label="Gaming" name="item6"/>
+ <combo_box.item label="è—術與文化" name="item3"/>
+ <combo_box.item label="商業" name="item4"/>
+ <combo_box.item label="教育" name="item5"/>
+ <combo_box.item label="éŠæˆ²" name="item6"/>
<combo_box.item label="èšæœƒæ‰€" name="item7"/>
- <combo_box.item label="Newcomer Friendly" name="item8"/>
- <combo_box.item label="Parks &amp; Nature" name="item9"/>
- <combo_box.item label="Residential" name="item10"/>
- <combo_box.item label="Shopping" name="item11"/>
+ <combo_box.item label="新手å‹å–„" name="item8"/>
+ <combo_box.item label="公園與自然" name="item9"/>
+ <combo_box.item label="ä½å®…" name="item10"/>
+ <combo_box.item label="採購" name="item11"/>
<combo_box.item label="Rental" name="item13"/>
<combo_box.item label="Other" name="item12"/>
</combo_box>
<combo_box name="land category">
<combo_box.item label="任何類別" name="item0"/>
<combo_box.item label="Linden Location" name="item1"/>
- <combo_box.item label="Arts &amp; Culture" name="item3"/>
- <combo_box.item label="Business" name="item4"/>
- <combo_box.item label="Educational" name="item5"/>
- <combo_box.item label="Gaming" name="item6"/>
+ <combo_box.item label="è—術與文化" name="item3"/>
+ <combo_box.item label="商業" name="item4"/>
+ <combo_box.item label="教育" name="item5"/>
+ <combo_box.item label="éŠæˆ²" name="item6"/>
<combo_box.item label="èšæœƒæ‰€" name="item7"/>
- <combo_box.item label="Newcomer Friendly" name="item8"/>
- <combo_box.item label="Parks &amp; Nature" name="item9"/>
- <combo_box.item label="Residential" name="item10"/>
- <combo_box.item label="Shopping" name="item11"/>
+ <combo_box.item label="新手å‹å–„" name="item8"/>
+ <combo_box.item label="公園與自然" name="item9"/>
+ <combo_box.item label="ä½å®…" name="item10"/>
+ <combo_box.item label="採購" name="item11"/>
<combo_box.item label="Rental" name="item13"/>
<combo_box.item label="Other" name="item12"/>
</combo_box>
@@ -367,7 +367,7 @@ Only large parcels can be listed in search.
<text name="Snapshot:">
快照:
</text>
- <texture_picker name="snapshot_ctrl" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker name="snapshot_ctrl" tool_tip="點擊以挑é¸åœ–åƒ"/>
<text name="landing_point">
登陸點:[LANDING]
</text>
@@ -398,7 +398,7 @@ Only large parcels can be listed in search.
<text name="Media texture:">
å–代æ質:
</text>
- <texture_picker name="media texture" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker name="media texture" tool_tip="點擊以挑é¸åœ–åƒ"/>
<text name="replace_texture_help">
Objects using this texture will show the movie or web page after you click the play arrow. Select the thumbnail to choose a different texture.
</text>
@@ -412,7 +412,7 @@ Only large parcels can be listed in search.
åƒç´ 
</text>
<text name="Options:">
- Options:
+ é¸é …:
</text>
<check_box label="Loop" name="media_loop" tool_tip="Play media in a loop. When the media has finished playing, it will restart from the beginning."/>
</panel>
@@ -442,14 +442,14 @@ Only large parcels can be listed in search.
One or more of these options is set at the estate level
</panel.string>
<text name="Limit access to this parcel to:">
- Access To This Parcel
+ 出入此地段
</text>
<text name="Only Allow">
Restrict Access to Residents verified by:
</text>
<check_box label="Payment Information on File [ESTATE_PAYMENT_LIMIT]" name="limit_payment" tool_tip="Ban unidentified Residents."/>
<check_box label="年齡驗證 [ESTATE_AGE_LIMIT]" name="limit_age_verified" tool_tip="Ban Residents who have not verified their age. See the [SUPPORT_SITE] for more information."/>
- <check_box label="å…許出入的群組:[GROUP]" name="GroupCheck" tool_tip="Set group in the General tab."/>
+ <check_box label="å…許出入的群組:[GROUP]" name="GroupCheck" tool_tip="設定群組於一般é ç±¤ã€‚"/>
<check_box label="出售通行權給:" name="PassCheck" tool_tip="å…許暫時出入這個地段"/>
<combo_box name="pass_combo">
<combo_box.item label="Anyone" name="Anyone"/>
diff --git a/indra/newview/skins/default/xui/zh/floater_animation_preview.xml b/indra/newview/skins/default/xui/zh/floater_animation_preview.xml
index baf68ffce6..c5e2eac446 100644
--- a/indra/newview/skins/default/xui/zh/floater_animation_preview.xml
+++ b/indra/newview/skins/default/xui/zh/floater_animation_preview.xml
@@ -173,8 +173,8 @@ Maximum animation length is [MAX_LENGTH] seconds.
</combo_box>
<spinner label="淡入(秒)" name="ease_in_time" tool_tip="Amount of time (in seconds) over which animations blends in"/>
<spinner label="淡出(秒)" name="ease_out_time" tool_tip="Amount of time (in seconds) over which animations blends out"/>
- <button name="play_btn" tool_tip="Play your animation"/>
- <button name="pause_btn" tool_tip="Pause your animation"/>
+ <button name="play_btn" tool_tip="播放你的動作"/>
+ <button name="pause_btn" tool_tip="æš«åœä½ çš„å‹•åš"/>
<button name="stop_btn" tool_tip="Stop animation playback"/>
<text name="bad_animation_text">
Unable to read animation file.
diff --git a/indra/newview/skins/default/xui/zh/floater_build_options.xml b/indra/newview/skins/default/xui/zh/floater_build_options.xml
index 95211b746c..b9d3b6b849 100644
--- a/indra/newview/skins/default/xui/zh/floater_build_options.xml
+++ b/indra/newview/skins/default/xui/zh/floater_build_options.xml
@@ -4,7 +4,7 @@
<spinner label="Grid Extents (meters)" name="GridDrawSize"/>
<check_box label="貼齊至å­å–®ä½" name="GridSubUnit"/>
<check_box label="View cross-sections" name="GridCrossSection"/>
- <text name="grid_opacity_label" tool_tip="Grid opacity">
- Opacity:
+ <text name="grid_opacity_label" tool_tip="格線ä¸é€æ˜Žåº¦">
+ ä¸é€æ˜Žåº¦ï¼š
</text>
</floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_bumps.xml b/indra/newview/skins/default/xui/zh/floater_bumps.xml
index 64c11af953..2d76a9f831 100644
--- a/indra/newview/skins/default/xui/zh/floater_bumps.xml
+++ b/indra/newview/skins/default/xui/zh/floater_bumps.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<floater name="floater_bumps" title="BUMPS, PUSHES &amp; HITS">
+<floater name="floater_bumps" title="碰撞ã€æŽ¨æ“ èˆ‡æ‰“æ“Š">
<floater.string name="none_detected">
未åµæ¸¬åˆ°
</floater.string>
diff --git a/indra/newview/skins/default/xui/zh/floater_buy_currency.xml b/indra/newview/skins/default/xui/zh/floater_buy_currency.xml
index f187a1ab40..d63e73c6f1 100644
--- a/indra/newview/skins/default/xui/zh/floater_buy_currency.xml
+++ b/indra/newview/skins/default/xui/zh/floater_buy_currency.xml
@@ -55,7 +55,7 @@
Confirming this purchase only buys L$, not the object.
</text>
<text name="purchase_warning_notenough">
- You aren&apos;t buying enough L$. Please increase the amount.
+ 你並未購買足夠的林登幣,請先添加一些數é‡ã€‚
</text>
<button label="ç«‹å³è³¼è²·" name="buy_btn"/>
<button label="å–消" name="cancel_btn"/>
diff --git a/indra/newview/skins/default/xui/zh/floater_buy_land.xml b/indra/newview/skins/default/xui/zh/floater_buy_land.xml
index c4a5d174ef..336d14747d 100644
--- a/indra/newview/skins/default/xui/zh/floater_buy_land.xml
+++ b/indra/newview/skins/default/xui/zh/floater_buy_land.xml
@@ -26,10 +26,10 @@ Try selecting a smaller area.
You do not have permission to buy land for your active group.
</floater.string>
<floater.string name="parcel_not_for_sale">
- The selected parcel is not for sale.
+ 所é¸æ“‡çš„地段ä¸å‡ºå”®ã€‚.
</floater.string>
<floater.string name="group_already_owns">
- The group already owns the parcel.
+ 這個群組已æ“有這個地段。
</floater.string>
<floater.string name="you_already_own">
你已經æ“有這個地段。
@@ -62,7 +62,7 @@ Try selecting a smaller area.
Cannot buy now:
</floater.string>
<floater.string name="not_for_sale">
- Not for sale:
+ ä¸å‡ºå”®ï¼š
</floater.string>
<floater.string name="none_needed">
none needed
diff --git a/indra/newview/skins/default/xui/zh/floater_critical.xml b/indra/newview/skins/default/xui/zh/floater_critical.xml
index da357bde56..7d08fe8af2 100644
--- a/indra/newview/skins/default/xui/zh/floater_critical.xml
+++ b/indra/newview/skins/default/xui/zh/floater_critical.xml
@@ -2,7 +2,7 @@
<floater name="modal container">
<button label="繼續" label_selected="繼續" name="Continue"/>
<text name="tos_heading">
- Please read the following message carefully.
+ 請仔細閱讀下列的訊æ¯ã€‚
</text>
<text_editor name="tos_text">
TOS_TEXT
diff --git a/indra/newview/skins/default/xui/zh/floater_day_cycle_options.xml b/indra/newview/skins/default/xui/zh/floater_day_cycle_options.xml
index 28d2ba6ed4..84186c5836 100644
--- a/indra/newview/skins/default/xui/zh/floater_day_cycle_options.xml
+++ b/indra/newview/skins/default/xui/zh/floater_day_cycle_options.xml
@@ -85,7 +85,7 @@
<text name="DayCycleText3">
é è¦½ï¼š
</text>
- <button label="Play" label_selected="Play" name="WLAnimSky"/>
+ <button label="播放" label_selected="播放" name="WLAnimSky"/>
<button label="åœæ­¢!" label_selected="åœæ­¢" name="WLStopAnimSky"/>
<button label="Use Estate Time" label_selected="Go to Estate Time" name="WLUseLindenTime"/>
<button label="Save Test Day" label_selected="Save Test Day" name="WLSaveDayCycle"/>
diff --git a/indra/newview/skins/default/xui/zh/floater_display_name.xml b/indra/newview/skins/default/xui/zh/floater_display_name.xml
index 39abfe0b8b..01b5088794 100644
--- a/indra/newview/skins/default/xui/zh/floater_display_name.xml
+++ b/indra/newview/skins/default/xui/zh/floater_display_name.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<floater name="Display Name" title="CHANGE DISPLAY NAME">
+<floater name="Display Name" title="變更顯示å稱">
<text name="info_text">
The name you give your avatar is called your Display Name. You can change it once a week.
</text>
@@ -7,12 +7,12 @@
You cannot change your Display Name until: [TIME].
</text>
<text name="set_name_label">
- New Display Name:
+ 新顯示å稱:
</text>
<text name="name_confirm_label">
Type your new name again to confirm:
</text>
- <button label="儲存" name="save_btn" tool_tip="Save your new Display Name"/>
+ <button label="儲存" name="save_btn" tool_tip="儲存你的新顯示å稱"/>
<button label="é‡è¨­" name="reset_btn" tool_tip="Make Display Name the same as Username"/>
<button label="å–消" name="cancel_btn"/>
</floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_image_preview.xml b/indra/newview/skins/default/xui/zh/floater_image_preview.xml
index d7e9a7704c..1260601f90 100644
--- a/indra/newview/skins/default/xui/zh/floater_image_preview.xml
+++ b/indra/newview/skins/default/xui/zh/floater_image_preview.xml
@@ -12,14 +12,14 @@
<combo_box label="æœè£é¡žåž‹" name="clothing_type_combo">
<item label="圖åƒ" name="Image" value="圖åƒ"/>
<item label="é ­é«®" name="Hair" value="é ­é«®"/>
- <item label="Female Head" name="FemaleHead" value="Female Head"/>
- <item label="Female Upper Body" name="FemaleUpperBody" value="Female Upper Body"/>
- <item label="Female Lower Body" name="FemaleLowerBody" value="Female Lower Body"/>
- <item label="Male Head" name="MaleHead" value="Male Head"/>
- <item label="Male Upper Body" name="MaleUpperBody" value="Male Upper Body"/>
- <item label="Male Lower Body" name="MaleLowerBody" value="Male Lower Body"/>
+ <item label="女性頭部" name="FemaleHead" value="女性頭部"/>
+ <item label="女性上åŠèº«" name="FemaleUpperBody" value="女性上åŠèº«"/>
+ <item label="女性下åŠèº«" name="FemaleLowerBody" value="女性下åŠèº«"/>
+ <item label="男性頭部" name="MaleHead" value="男性頭部"/>
+ <item label="男性上åŠèº«" name="MaleUpperBody" value="男性上åŠèº«"/>
+ <item label="男性下åŠèº«" name="MaleLowerBody" value="男性下åŠèº«"/>
<item label="裙å­" name="Skirt" value="裙å­"/>
- <item label="Sculpted Prim" name="SculptedPrim" value="Sculpted Prim"/>
+ <item label="雕刻的幾何元件" name="SculptedPrim" value="雕刻的幾何元件"/>
</combo_box>
<text name="bad_image_text">
無法讀å–圖åƒã€‚
diff --git a/indra/newview/skins/default/xui/zh/floater_incoming_call.xml b/indra/newview/skins/default/xui/zh/floater_incoming_call.xml
index 123cdd9f2c..a0f31fa11f 100644
--- a/indra/newview/skins/default/xui/zh/floater_incoming_call.xml
+++ b/indra/newview/skins/default/xui/zh/floater_incoming_call.xml
@@ -13,10 +13,10 @@
通話中。
</floater.string>
<floater.string name="VoiceInviteAdHoc">
- has joined a Voice Chat call with a conference chat.
+ 已加訴入會議交談中的語音èŠå¤©ã€‚
</floater.string>
<floater.string name="VoiceInviteGroup">
- just joined &apos;[GROUP]&apos; voice channel.
+ 剛加入 &apos;[GROUP]&apos; 語音頻é“。
</floater.string>
<floater.string name="VoiceInviteQuestionGroup">
Would you like to leave [CURRENT_CHAT] and join the call with &apos;[GROUP]&apos;?
diff --git a/indra/newview/skins/default/xui/zh/floater_inspect.xml b/indra/newview/skins/default/xui/zh/floater_inspect.xml
index 295538f797..ea3d9d0c3e 100644
--- a/indra/newview/skins/default/xui/zh/floater_inspect.xml
+++ b/indra/newview/skins/default/xui/zh/floater_inspect.xml
@@ -5,9 +5,9 @@
</floater.string>
<scroll_list name="object_list" tool_tip="Select an object from this list to highlight it in-world">
<scroll_list.columns label="物件å稱" name="object_name"/>
- <scroll_list.columns label="Owner Name" name="owner_name"/>
- <scroll_list.columns label="Creator Name" name="creator_name"/>
- <scroll_list.columns label="Creation Date" name="creation_date"/>
+ <scroll_list.columns label="æ“有者å稱" name="owner_name"/>
+ <scroll_list.columns label="創造者å稱" name="creator_name"/>
+ <scroll_list.columns label="創造日期" name="creation_date"/>
</scroll_list>
<button label="察看æ“有者檔案..." name="button owner" tool_tip="See profile of the highlighted object&apos;s owner"/>
<button label="察看創造者檔案..." name="button creator" tool_tip="See profile of the highlighted object&apos;s original creator"/>
diff --git a/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml b/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml
index 370ab32b9f..d698edf5e5 100644
--- a/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml
+++ b/indra/newview/skins/default/xui/zh/floater_inventory_view_finder.xml
@@ -5,7 +5,7 @@
<check_box label="æœè£" name="check_clothing"/>
<check_box label="姿勢" name="check_gesture"/>
<check_box label="地標" name="check_landmark"/>
- <check_box label="Notecards" name="check_notecard"/>
+ <check_box label="記事å¡" name="check_notecard"/>
<check_box label="Objects" name="check_object"/>
<check_box label="腳本" name="check_script"/>
<check_box label="Sounds" name="check_sound"/>
diff --git a/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml b/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml
index 8b15668e3b..63da47f4de 100644
--- a/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml
+++ b/indra/newview/skins/default/xui/zh/floater_outgoing_call.xml
@@ -4,10 +4,10 @@
5
</floater.string>
<floater.string name="localchat">
- Nearby Voice Chat
+ 附近的語音èŠå¤©
</floater.string>
<floater.string name="anonymous">
- anonymous
+ 匿å
</floater.string>
<floater.string name="VoiceInviteP2P">
通話中。
@@ -22,7 +22,7 @@
Calling [CALLEE_NAME]
</text>
<text name="noanswer">
- No Answer. Please try again later.
+ 無應答,請ç¨å€™å†è©¦ã€‚
</text>
<text name="nearby">
You have been disconnected from [VOICE_CHANNEL_NAME]. [RECONNECT_NEARBY]
diff --git a/indra/newview/skins/default/xui/zh/floater_preview_animation.xml b/indra/newview/skins/default/xui/zh/floater_preview_animation.xml
index ead8dc49a6..c435ddc0bd 100644
--- a/indra/newview/skins/default/xui/zh/floater_preview_animation.xml
+++ b/indra/newview/skins/default/xui/zh/floater_preview_animation.xml
@@ -6,6 +6,6 @@
<text name="desc txt">
æ述:
</text>
- <button label="Play Inworld" label_selected="åœæ­¢" name="Anim play btn" tool_tip="Play this animation so that others can see it"/>
- <button label="Play Locally" label_selected="åœæ­¢" name="Anim audition btn" tool_tip="Play this animation so that only you can see it"/>
+ <button label="播放於虛擬世界" label_selected="åœæ­¢" name="Anim play btn" tool_tip="Play this animation so that others can see it"/>
+ <button label="播放於本地" label_selected="åœæ­¢" name="Anim audition btn" tool_tip="Play this animation so that only you can see it"/>
</floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_preview_sound.xml b/indra/newview/skins/default/xui/zh/floater_preview_sound.xml
index d99d13669f..46844349de 100644
--- a/indra/newview/skins/default/xui/zh/floater_preview_sound.xml
+++ b/indra/newview/skins/default/xui/zh/floater_preview_sound.xml
@@ -6,6 +6,6 @@
<text name="desc txt">
æ述:
</text>
- <button label="Play Inworld" label_selected="Play Inworld" name="Sound play btn" tool_tip="Play this sound so that others can hear it"/>
- <button label="Play Locally" label_selected="Play Locally" name="Sound audition btn" tool_tip="Play this sound so that only you can hear it"/>
+ <button label="播放於虛擬世界" label_selected="播放於虛擬世界" name="Sound play btn" tool_tip="Play this sound so that others can hear it"/>
+ <button label="播放於本地" label_selected="播放於本地" name="Sound audition btn" tool_tip="Play this sound so that only you can hear it"/>
</floater>
diff --git a/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml b/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml
index fc00b0b4a2..01586ac153 100644
--- a/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml
+++ b/indra/newview/skins/default/xui/zh/floater_texture_ctrl.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<floater name="texture picker" title="PICK: TEXTURE">
<floater.string name="choose_picture">
- 點擊以挑é¸åœ–片
+ 點擊以挑é¸åœ–åƒ
</floater.string>
<floater.string name="pick title">
Pick:
diff --git a/indra/newview/skins/default/xui/zh/floater_tools.xml b/indra/newview/skins/default/xui/zh/floater_tools.xml
index c70e70451e..2db98eb3d7 100644
--- a/indra/newview/skins/default/xui/zh/floater_tools.xml
+++ b/indra/newview/skins/default/xui/zh/floater_tools.xml
@@ -48,7 +48,7 @@
Drag to move, shift-drag to copy
</text>
<radio_group name="focus_radio_group">
- <radio_item label="Zoom" name="radio zoom"/>
+ <radio_item label="縮放" name="radio zoom"/>
<radio_item label="環繞(Ctrl)" name="radio orbit"/>
<radio_item label="平移(Ctrl+Shift)" name="radio pan"/>
</radio_group>
@@ -75,10 +75,10 @@
</text>
<check_box initial_value="true" label="伸展æ質" name="checkbox stretch textures"/>
<check_box initial_value="true" label="貼齊格線" name="checkbox snap to grid"/>
- <combo_box name="combobox grid mode" tool_tip="Choose the type of grid ruler for positioning the object">
- <combo_box.item label="World grid" name="World"/>
- <combo_box.item label="Local grid" name="Local"/>
- <combo_box.item label="Reference grid" name="Reference"/>
+ <combo_box name="combobox grid mode" tool_tip="é¸æ“‡ç‰©ä»¶å®šä½åƒè€ƒçš„格線尺度類型">
+ <combo_box.item label="世界格線" name="World"/>
+ <combo_box.item label="地方格線" name="Local"/>
+ <combo_box.item label="åƒè€ƒæ ¼ç·š" name="Reference"/>
</combo_box>
<button name="Options..." tool_tip="察看更多格線é¸é …"/>
<button name="ToolCube" tool_tip="Cube"/>
@@ -125,15 +125,15 @@
物件: [COUNT]
</text>
<text name="prim_count">
- Prims: [COUNT]
+ 幾何元件: [COUNT]
</text>
<tab_container name="Object Info Tabs">
<panel label="一般" name="General">
<panel.string name="text deed continued">
- Deed
+ 讓渡
</panel.string>
<panel.string name="text deed">
- Deed
+ 讓渡
</panel.string>
<panel.string name="text modify info 1">
你能修改這個物件
@@ -183,7 +183,7 @@
<name_box initial_value="載入中..." name="Group Name Proxy"/>
<button name="button set group" tool_tip="é¸æ“‡ä¸€å€‹ç¾¤çµ„以分享這物件權é™"/>
<check_box label="分享" name="checkbox share with group" tool_tip="Allow all members of the set group to share your modify permissions for this object. You must Deed to enable role restrictions."/>
- <button label="Deed" label_selected="Deed" name="button deed" tool_tip="Deeding gives this item away with next owner permissions. Group shared objects can be deeded by a group officer."/>
+ <button label="讓渡" label_selected="讓渡" name="button deed" tool_tip="Deeding gives this item away with next owner permissions. Group shared objects can be deeded by a group officer."/>
<text name="label click action">
點擊以:
</text>
@@ -272,7 +272,7 @@
<combo_box.item label="Sculpted" name="Sculpted"/>
</combo_box>
<combo_box name="material">
- <combo_box.item label="Stone" name="Stone"/>
+ <combo_box.item label="石頭" name="Stone"/>
<combo_box.item label="金屬" name="Metal"/>
<combo_box.item label="玻璃" name="Glass"/>
<combo_box.item label="木頭" name="Wood"/>
@@ -340,7 +340,7 @@
<text name="text revolutions">
Revolutions
</text>
- <texture_picker label="Sculpt Texture" name="sculpt texture control" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="Sculpt Texture" name="sculpt texture control" tool_tip="點擊以挑é¸åœ–åƒ"/>
<check_box label="Mirror" name="sculpt mirror control" tool_tip="Flips sculpted prim along the X axis"/>
<check_box label="Inside-out" name="sculpt invert control" tool_tip="Inverts the sculpted prims normals, making it appear inside-out"/>
<text name="label sculpt type">
@@ -356,28 +356,28 @@
</panel>
<panel label="特性" name="Features">
<text name="select_single">
- Select only one primitive to edit features.
+ åªèƒ½é¸æ“‡ä¸€å€‹å¹¾ä½•å…ƒä»¶åŽ»ç·¨è¼¯ç´°ç¯€ã€‚
</text>
<text name="edit_object">
編輯物件特性:
</text>
- <check_box label="Flexible Path" name="Flexible1D Checkbox Ctrl" tool_tip="Allows object to flex about the Z axis (Client-side only)"/>
- <spinner label="Softness" name="FlexNumSections"/>
- <spinner label="Gravity" name="FlexGravity"/>
- <spinner label="Drag" name="FlexFriction"/>
- <spinner label="Wind" name="FlexWind"/>
- <spinner label="Tension" name="FlexTension"/>
- <spinner label="Force X" name="FlexForceX"/>
- <spinner label="Force Y" name="FlexForceY"/>
- <spinner label="Force Z" name="FlexForceZ"/>
- <check_box label="Light" name="Light Checkbox Ctrl" tool_tip="Causes object to emit light"/>
+ <check_box label="彈性路徑" name="Flexible1D Checkbox Ctrl" tool_tip="Allows object to flex about the Z axis (Client-side only)"/>
+ <spinner label="柔軟" name="FlexNumSections"/>
+ <spinner label="é‡åŠ›" name="FlexGravity"/>
+ <spinner label="拖曳" name="FlexFriction"/>
+ <spinner label="風力" name="FlexWind"/>
+ <spinner label="張力" name="FlexTension"/>
+ <spinner label="強制 X 軸" name="FlexForceX"/>
+ <spinner label="強制 Y 軸" name="FlexForceY"/>
+ <spinner label="強制 Z 軸" name="FlexForceZ"/>
+ <check_box label="å…‰æº" name="Light Checkbox Ctrl" tool_tip="導致物件發光"/>
<color_swatch name="colorswatch" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
<texture_picker label="" name="light texture control" tool_tip="Click to choose a projection image (only has effect with deferred rendering enabled)"/>
- <spinner label="Intensity" name="Light Intensity"/>
+ <spinner label="強度" name="Light Intensity"/>
<spinner label="FOV" name="Light FOV"/>
- <spinner label="Radius" name="Light Radius"/>
+ <spinner label="åŠå¾‘" name="Light Radius"/>
<spinner label="Focus" name="Light Focus"/>
- <spinner label="Falloff" name="Light Falloff"/>
+ <spinner label="衰減" name="Light Falloff"/>
<spinner label="Ambiance" name="Light Ambiance"/>
</panel>
<panel label="æ質" name="Texture">
@@ -387,7 +387,7 @@
<panel.string name="string repeats per face">
æ¯ä¸€é¢é‡è¦†æ¬¡æ•¸
</panel.string>
- <texture_picker label="æ質" name="texture control" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="texture control" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="é¡è‰²" name="colorswatch" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
<text name="color trans">
é€æ˜Žåº¦ %
diff --git a/indra/newview/skins/default/xui/zh/floater_url_entry.xml b/indra/newview/skins/default/xui/zh/floater_url_entry.xml
index 65f6a9cb95..9e3f3cd47d 100644
--- a/indra/newview/skins/default/xui/zh/floater_url_entry.xml
+++ b/indra/newview/skins/default/xui/zh/floater_url_entry.xml
@@ -3,7 +3,7 @@
<text name="media_label">
媒體 URL:
</text>
- <button label="" name="ok_btn"/>
+ <button label="確定" name="ok_btn"/>
<button label="å–消" name="cancel_btn"/>
<button label="清除" name="clear_btn"/>
<text name="loading_label">
diff --git a/indra/newview/skins/default/xui/zh/floater_voice_controls.xml b/indra/newview/skins/default/xui/zh/floater_voice_controls.xml
index c27b80e9c5..24b7efea4f 100644
--- a/indra/newview/skins/default/xui/zh/floater_voice_controls.xml
+++ b/indra/newview/skins/default/xui/zh/floater_voice_controls.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<floater name="floater_voice_controls" title="Voice Controls">
+<floater name="floater_voice_controls" title="語音控制">
<string name="title_nearby">
- NEARBY VOICE
+ 附近的語音
</string>
<string name="title_group">
與 [GROUP] 進行群組通話
@@ -13,7 +13,7 @@
與 [NAME] 進行通話
</string>
<string name="no_one_near">
- No one near has voice enabled
+ 附近沒有一人開啟語音
</string>
<layout_stack name="my_call_stack">
<layout_panel name="my_panel">
diff --git a/indra/newview/skins/default/xui/zh/menu_inventory.xml b/indra/newview/skins/default/xui/zh/menu_inventory.xml
index 49a50c97c6..87d769af0d 100644
--- a/indra/newview/skins/default/xui/zh/menu_inventory.xml
+++ b/indra/newview/skins/default/xui/zh/menu_inventory.xml
@@ -2,17 +2,17 @@
<menu name="Popup">
<menu_item_call label="分享" name="Share"/>
<menu_item_call label="購買" name="Task Buy"/>
- <menu_item_call label="Open" name="Task Open"/>
- <menu_item_call label="Play" name="Task Play"/>
- <menu_item_call label="Properties" name="Task Properties"/>
+ <menu_item_call label="é–‹å•Ÿ" name="Task Open"/>
+ <menu_item_call label="播放" name="Task Play"/>
+ <menu_item_call label="屬性" name="Task Properties"/>
<menu_item_call label="æ›´å" name="Task Rename"/>
<menu_item_call label="刪除" name="Task Remove"/>
<menu_item_call label="清空垃圾筒" name="Empty Trash"/>
- <menu_item_call label="Empty Lost And Found" name="Empty Lost And Found"/>
+ <menu_item_call label="清空 Lost And Found" name="Empty Lost And Found"/>
<menu_item_call label="新資料夾" name="New Folder"/>
- <menu_item_call label="New Script" name="New Script"/>
- <menu_item_call label="New Notecard" name="New Note"/>
- <menu_item_call label="New Gesture" name="New Gesture"/>
+ <menu_item_call label="新腳本" name="New Script"/>
+ <menu_item_call label="新記事å¡" name="New Note"/>
+ <menu_item_call label="新姿勢" name="New Gesture"/>
<menu label="æ–°è¡£æœ" name="New Clothes">
<menu_item_call label="新襯衫" name="New Shirt"/>
<menu_item_call label="新褲å­" name="New Pants"/>
@@ -52,11 +52,11 @@
<menu_item_call label="添加到目å‰è£æ‰®" name="Add To Outfit"/>
<menu_item_call label="由目å‰çš„è£æ‰®ç§»é™¤" name="Remove From Outfit"/>
<menu_item_call label="尋找原件" name="Find Original"/>
- <menu_item_call label="Purge Item" name="Purge Item"/>
- <menu_item_call label="Restore Item" name="Restore Item"/>
+ <menu_item_call label="清空物å“" name="Purge Item"/>
+ <menu_item_call label="æ¢å¾©ç‰©å“" name="Restore Item"/>
<menu_item_call label="é–‹å•Ÿ" name="Open"/>
- <menu_item_call label="Open Original" name="Open Original"/>
- <menu_item_call label="Properties" name="Properties"/>
+ <menu_item_call label="開啟原件" name="Open Original"/>
+ <menu_item_call label="屬性" name="Properties"/>
<menu_item_call label="æ›´å" name="Rename"/>
<menu_item_call label="覆製資產 UUID" name="Copy Asset UUID"/>
<menu_item_call label="覆製" name="Copy"/>
@@ -68,11 +68,11 @@
<menu_item_call label="Start Conference Chat" name="Conference Chat Folder"/>
<menu_item_call label="播放" name="Sound Play"/>
<menu_item_call label="添加地標" name="About Landmark"/>
- <menu_item_call label="Play Inworld" name="Animation Play"/>
- <menu_item_call label="Play Locally" name="Animation Audition"/>
+ <menu_item_call label="播放於虛擬世界" name="Animation Play"/>
+ <menu_item_call label="播放於本地" name="Animation Audition"/>
<menu_item_call label="é€å‡ºå³æ™‚訊æ¯" name="Send Instant Message"/>
<menu_item_call label="發給瞬間傳é€è«‹æ±‚..." name="Offer Teleport..."/>
- <menu_item_call label="Start Conference Chat" name="Conference Chat"/>
+ <menu_item_call label="開始會議交談" name="Conference Chat"/>
<menu_item_call label="Activate" name="Activate"/>
<menu_item_call label="Deactivate" name="Deactivate"/>
<menu_item_call label="å¦å­˜" name="Save As"/>
diff --git a/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml
index 74b90ada5e..8ad0e7324f 100644
--- a/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml
+++ b/indra/newview/skins/default/xui/zh/menu_inventory_gear_default.xml
@@ -6,7 +6,7 @@
<menu_item_check label="總是由å稱排åºè³‡æ–™å¤¾" name="sort_folders_by_name"/>
<menu_item_check label="系統資料夾排åºåˆ°æœ€ä¸Šæ–¹" name="sort_system_folders_to_top"/>
<menu_item_call label="顯示éŽæ¿¾å™¨" name="show_filters"/>
- <menu_item_call label="Reset Filters" name="reset_filters"/>
+ <menu_item_call label="é‡è¨­éŽæ¿¾å™¨" name="reset_filters"/>
<menu_item_call label="關閉全部資料夾" name="close_folders"/>
<menu_item_call label="清空 Lost and Found" name="empty_lostnfound"/>
<menu_item_call label="儲存æ質為" name="Save Texture As"/>
diff --git a/indra/newview/skins/default/xui/zh/menu_viewer.xml b/indra/newview/skins/default/xui/zh/menu_viewer.xml
index a51e26c3f4..f7be781cac 100644
--- a/indra/newview/skins/default/xui/zh/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/zh/menu_viewer.xml
@@ -139,45 +139,46 @@
<menu_item_check label="Disable Camera Constraints" name="Disable Camera Distance"/>
<menu_item_check label="高解æžåº¦å¿«ç…§" name="HighResSnapshot"/>
<menu_item_check label="éœéŸ³æ‹æ”快照到硬碟" name="QuietSnapshotsToDisk"/>
+ <menu_item_check label="壓縮快照存到硬碟" name="CompressSnapshotsToDisk"/>
<menu label="效能工具" name="Performance Tools">
<menu_item_call label="Lag Meter" name="Lag Meter"/>
<menu_item_check label="統計列" name="Statistics Bar"/>
<menu_item_check label="Show Avatar Rendering Cost" name="Avatar Rendering Cost"/>
</menu>
- <menu label="Highlighting and Visibility" name="Highlighting and Visibility">
+ <menu label="高亮顯示與å¯è¦‹åº¦" name="Highlighting and Visibility">
<menu_item_check label="Cheesy Beacon" name="Cheesy Beacon"/>
- <menu_item_check label="Hide Particles" name="Hide Particles"/>
- <menu_item_check label="Hide Selected" name="Hide Selected"/>
+ <menu_item_check label="éš±è—ç²’å­æ•ˆæžœ" name="Hide Particles"/>
+ <menu_item_check label="éš±è—所é¸æ“‡çš„" name="Hide Selected"/>
<menu_item_check label="高亮顯示é€æ˜Žç‰©ä»¶" name="Highlight Transparent"/>
<menu_item_check label="顯示 HUD 附件" name="Show HUD Attachments"/>
- <menu_item_check label="Show Mouselook Crosshairs" name="ShowCrosshairs"/>
+ <menu_item_check label="顯示第一人稱視角準星" name="ShowCrosshairs"/>
</menu>
<menu label="Rendering Types" name="Rendering Types">
- <menu_item_check label="Simple" name="Simple"/>
+ <menu_item_check label="ç°¡å–®" name="Simple"/>
<menu_item_check label="åŠé€æ˜Ž" name="Alpha"/>
- <menu_item_check label="Tree" name="Tree"/>
- <menu_item_check label="Avatars" name="Character"/>
- <menu_item_check label="SurfacePath" name="SurfacePath"/>
- <menu_item_check label="Sky" name="Sky"/>
- <menu_item_check label="Water" name="Water"/>
- <menu_item_check label="Ground" name="Ground"/>
- <menu_item_check label="Volume" name="Volume"/>
- <menu_item_check label="Grass" name="Grass"/>
- <menu_item_check label="Clouds" name="Clouds"/>
- <menu_item_check label="Particles" name="Particles"/>
- <menu_item_check label="Bump" name="Bump"/>
+ <menu_item_check label="樹木" name="Tree"/>
+ <menu_item_check label="化身" name="Character"/>
+ <menu_item_check label="地表" name="SurfacePath"/>
+ <menu_item_check label="天空" name="Sky"/>
+ <menu_item_check label="æ°´æ–‡" name="Water"/>
+ <menu_item_check label="地é¢" name="Ground"/>
+ <menu_item_check label="é«”ç©" name="Volume"/>
+ <menu_item_check label="è‰åœ°" name="Grass"/>
+ <menu_item_check label="雲彩" name="Clouds"/>
+ <menu_item_check label="ç²’å­æ•ˆæžœ" name="Particles"/>
+ <menu_item_check label="碰撞" name="Bump"/>
</menu>
<menu label="Rendering Features" name="Rendering Features">
<menu_item_check label="UI" name="UI"/>
<menu_item_check label="Selected" name="Selected"/>
<menu_item_check label="Highlighted" name="Highlighted"/>
<menu_item_check label="Dynamic Textures" name="Dynamic Textures"/>
- <menu_item_check label="Foot Shadows" name="Foot Shadows"/>
- <menu_item_check label="Fog" name="Fog"/>
+ <menu_item_check label="腳步陰影" name="Foot Shadows"/>
+ <menu_item_check label="霧氣" name="Fog"/>
<menu_item_check label="Test FRInfo" name="Test FRInfo"/>
- <menu_item_check label="Flexible Objects" name="Flexible Objects"/>
+ <menu_item_check label="彈性物件" name="Flexible Objects"/>
</menu>
- <menu_item_check label="Use Plugin Read Thread" name="Use Plugin Read Thread"/>
+ <menu_item_check label="使用外å¦è®€å–ç·’" name="Use Plugin Read Thread"/>
<menu_item_call label="清除群組快å–資料" name="ClearGroupCache"/>
<menu_item_check label="滑鼠平滑移動" name="Mouse Smoothing"/>
<menu label="快速éµ" name="Shortcuts">
@@ -213,13 +214,13 @@
<menu_item_check label="除錯控制å°" name="Debug Console"/>
<menu_item_call label="通知控制å°" name="Notifications"/>
<menu_item_check label="æ質尺寸控制å°" name="Texture Size"/>
- <menu_item_check label="Texture Category Console" name="Texture Category"/>
- <menu_item_check label="Fast Timers" name="Fast Timers"/>
+ <menu_item_check label="æ質分類控制å°" name="Texture Category"/>
+ <menu_item_check label="快速碼錶" name="Fast Timers"/>
<menu_item_check label="記憶體" name="Memory"/>
- <menu_item_call label="Region Info to Debug Console" name="Region Info to Debug Console"/>
+ <menu_item_call label="地å€è³‡è¨Šå‚³è‡³é™¤éŒ¯æŽ§åˆ¶å°" name="Region Info to Debug Console"/>
<menu_item_call label="群組資訊至除錯控制å°" name="Group Info to Debug Console"/>
<menu_item_call label="Capabilities Info to Debug Console" name="Capabilities Info to Debug Console"/>
- <menu_item_check label="Camera" name="Camera"/>
+ <menu_item_check label="æ”影機" name="Camera"/>
<menu_item_check label="風力" name="Wind"/>
<menu_item_check label="FOV" name="FOV"/>
<menu_item_check label="Badge" name="Badge"/>
@@ -244,7 +245,7 @@
<menu_item_call label="模擬記憶體ä¸è¶³" name="Memory Leaking Simulation"/>
</menu>
<menu label="Render Tests" name="Render Tests">
- <menu_item_check label="Camera Offset" name="Camera Offset"/>
+ <menu_item_check label="æ”影機ä½ç§»" name="Camera Offset"/>
<menu_item_check label="Randomize Framerate" name="Randomize Framerate"/>
<menu_item_check label="Periodic Slow Frame" name="Periodic Slow Frame"/>
<menu_item_check label="Frame Test" name="Frame Test"/>
@@ -275,12 +276,12 @@
<menu_item_check label="Shadows from Sun/Moon/Projectors" name="Shadows from Sun/Moon/Projectors"/>
<menu_item_check label="SSAO and Shadow Smoothing" name="SSAO and Shadow Smoothing"/>
<menu_item_check label="Global Illumination (experimental)" name="Global Illumination"/>
- <menu_item_check label="Debug GL" name="Debug GL"/>
- <menu_item_check label="Debug Pipeline" name="Debug Pipeline"/>
+ <menu_item_check label="GL 除錯" name="Debug GL"/>
+ <menu_item_check label="管線除錯" name="Debug Pipeline"/>
<menu_item_check label="自動åŠé€æ˜Žé®ç½©ï¼ˆéžå»¶ï¼‰" name="Automatic Alpha Masks (deferred)"/>
<menu_item_check label="自動åŠé€æ˜Žé®ç½©ï¼ˆéžéžå»¶ï¼‰" name="Automatic Alpha Masks (non-deferred)"/>
<menu_item_check label="Animation Textures" name="Animation Textures"/>
- <menu_item_check label="Disable Textures" name="Disable Textures"/>
+ <menu_item_check label="關閉æ質" name="Disable Textures"/>
<menu_item_check label="Full Res Textures" name="Rull Res Textures"/>
<menu_item_check label="Audit Textures" name="Audit Textures"/>
<menu_item_check label="Texture Atlas (experimental)" name="Texture Atlas"/>
@@ -297,30 +298,30 @@
<menu_item_call label="Drop a Packet" name="Drop a Packet"/>
</menu>
<menu_item_call label="Dump Scripted Camera" name="Dump Scripted Camera"/>
- <menu_item_call label="Bumps, Pushes &amp; Hits" name="Bumps, Pushes &amp;amp; Hits"/>
- <menu label="Recorder" name="Recorder">
- <menu_item_call label="Start Playback" name="Start Playback"/>
- <menu_item_call label="Stop Playback" name="Stop Playback"/>
- <menu_item_check label="Loop Playback" name="Loop Playback"/>
- <menu_item_call label="Start Record" name="Start Record"/>
- <menu_item_call label="Stop Record" name="Stop Record"/>
- </menu>
- <menu label="World" name="World">
- <menu_item_check label="Sim Sun Override" name="Sim Sun Override"/>
+ <menu_item_call label="碰撞ã€æŽ¨æ“ èˆ‡æ‰“æ“Š" name="Bumps, Pushes &amp;amp; Hits"/>
+ <menu label="錄製器" name="Recorder">
+ <menu_item_call label="開始播放" name="Start Playback"/>
+ <menu_item_call label="åœæ­¢æ’­æ”¾" name="Stop Playback"/>
+ <menu_item_check label="循環播放" name="Loop Playback"/>
+ <menu_item_call label="開始錄製" name="Start Record"/>
+ <menu_item_call label="åœæ­¢éŒ„製" name="Stop Record"/>
+ </menu>
+ <menu label="世界" name="World">
+ <menu_item_check label="模擬器太陽設定覆蓋" name="Sim Sun Override"/>
<menu_item_check label="Cheesy Beacon" name="Cheesy Beacon"/>
- <menu_item_check label="Fixed Weather" name="Fixed Weather"/>
+ <menu_item_check label="固定天氣" name="Fixed Weather"/>
<menu_item_call label="傾å°åœ°å€ç‰©ä»¶å¿«å–" name="Dump Region Object Cache"/>
</menu>
<menu label="UI" name="UI">
- <menu_item_call label="Media Browser Test" name="Web Browser Test"/>
- <menu_item_call label="Web Content Browser" name="Web Content Browser"/>
+ <menu_item_call label="測試媒體ç€è¦½å™¨" name="Web Browser Test"/>
+ <menu_item_call label="網é å…§å®¹ç€è¦½å™¨" name="Web Content Browser"/>
<menu_item_call label="Dump SelectMgr" name="Dump SelectMgr"/>
<menu_item_call label="傾å°æ”¶ç´å€" name="Dump Inventory"/>
- <menu_item_call label="Dump Timers" name="Dump Timers"/>
+ <menu_item_call label="傾å°ç¢¼éŒ¶" name="Dump Timers"/>
<menu_item_call label="Dump Focus Holder" name="Dump Focus Holder"/>
<menu_item_call label="Print Selected Object Info" name="Print Selected Object Info"/>
<menu_item_call label="Print Agent Info" name="Print Agent Info"/>
- <menu_item_call label="Memory Stats" name="Memory Stats"/>
+ <menu_item_call label="計憶體狀態" name="Memory Stats"/>
<menu_item_check label="Region Debug Console" name="Region Debug Console"/>
<menu_item_check label="Debug SelectMgr" name="Debug SelectMgr"/>
<menu_item_check label="Debug Clicks" name="Debug Clicks"/>
@@ -331,9 +332,9 @@
<menu_item_check label="Debug WindowProc" name="Debug WindowProc"/>
</menu>
<menu label="XUI" name="XUI">
- <menu_item_call label="Reload Color Settings" name="Reload Color Settings"/>
- <menu_item_call label="Show Font Test" name="Show Font Test"/>
- <menu_item_check label="Show XUI Names" name="Show XUI Names"/>
+ <menu_item_call label="é‡æ–°è¼‰å…¥é¡è‰²è¨­å®š" name="Reload Color Settings"/>
+ <menu_item_call label="顯示字型測試" name="Show Font Test"/>
+ <menu_item_check label="顯示 XUI å稱" name="Show XUI Names"/>
<menu_item_call label="é€å‡ºæ¸¬è©¦ IMs" name="Send Test IMs"/>
<menu_item_call label="æ²–æ´—å稱快å–資料" name="Flush Names Caches"/>
</menu>
@@ -348,12 +349,12 @@
<menu label="Character Tests" name="Character Tests">
<menu_item_call label="Appearance To XML" name="Appearance To XML"/>
<menu_item_call label="Toggle Character Geometry" name="Toggle Character Geometry"/>
- <menu_item_call label="Test Male" name="Test Male"/>
- <menu_item_call label="Test Female" name="Test Female"/>
- <menu_item_call label="Toggle PG" name="Toggle PG"/>
- <menu_item_check label="Allow Select Avatar" name="Allow Select Avatar"/>
+ <menu_item_call label="男性測試" name="Test Male"/>
+ <menu_item_call label="女性測試" name="Test Female"/>
+ <menu_item_call label="PG 切æ›" name="Toggle PG"/>
+ <menu_item_check label="å…許é¸æ“‡åŒ–身" name="Allow Select Avatar"/>
</menu>
- <menu_item_call label="Force Params to Default" name="Force Params to Default"/>
+ <menu_item_call label="強制åƒæ•¸ç‚ºé è¨­å€¼" name="Force Params to Default"/>
<menu_item_check label="動作資訊" name="Animation Info"/>
<menu_item_check label="慢動作" name="Slow Motion Animations"/>
<menu_item_check label="顯示注視在" name="Show Look At"/>
diff --git a/indra/newview/skins/default/xui/zh/mime_types.xml b/indra/newview/skins/default/xui/zh/mime_types.xml
index 89fe92fabc..8ac1bf6920 100644
--- a/indra/newview/skins/default/xui/zh/mime_types.xml
+++ b/indra/newview/skins/default/xui/zh/mime_types.xml
@@ -27,10 +27,10 @@
圖åƒ
</label>
<tooltip name="image_tooltip">
- There is an image at this location
+ 有一個圖åƒåœ¨æ­¤ä½ç½®
</tooltip>
<playtip name="image_playtip">
- View this location&apos;s image
+ 察看這個ä½ç½®çš„圖åƒ
</playtip>
</widgetset>
<widgetset name="audio">
@@ -38,10 +38,10 @@
音頻
</label>
<tooltip name="audio_tooltip">
- There is audio at this location
+ 有一個音頻在此ä½ç½®
</tooltip>
<playtip name="audio_playtip">
- Play this location&apos;s audio
+ 播放這個硾的音頻
</playtip>
</widgetset>
<scheme name="rtsp">
diff --git a/indra/newview/skins/default/xui/zh/mime_types_linux.xml b/indra/newview/skins/default/xui/zh/mime_types_linux.xml
index 08839abe6a..90f17b841c 100644
--- a/indra/newview/skins/default/xui/zh/mime_types_linux.xml
+++ b/indra/newview/skins/default/xui/zh/mime_types_linux.xml
@@ -30,7 +30,7 @@
There is an image at this location
</tooltip>
<playtip name="image_playtip">
- View this location&apos;s image
+ 察看這個ä½ç½®çš„圖åƒ
</playtip>
</widgetset>
<widgetset name="audio">
@@ -38,10 +38,10 @@
音頻
</label>
<tooltip name="audio_tooltip">
- There is audio at this location
+ 有一個音頻在此ä½ç½®
</tooltip>
<playtip name="audio_playtip">
- Play this location&apos;s audio
+ 播放這個ä½ç½®çš„音頻
</playtip>
</widgetset>
<scheme name="rtsp">
@@ -66,7 +66,7 @@
</mimetype>
<mimetype name="video/*">
<label name="video2_label">
- Video
+ 影片
</label>
</mimetype>
<mimetype name="image/*">
diff --git a/indra/newview/skins/default/xui/zh/mime_types_mac.xml b/indra/newview/skins/default/xui/zh/mime_types_mac.xml
index 7958f64219..b8105c145c 100644
--- a/indra/newview/skins/default/xui/zh/mime_types_mac.xml
+++ b/indra/newview/skins/default/xui/zh/mime_types_mac.xml
@@ -27,10 +27,10 @@
圖åƒ
</label>
<tooltip name="image_tooltip">
- 有一個影åƒåœ¨æ­¤ä½ç½®
+ 有一個圖åƒåœ¨æ­¤ä½ç½®
</tooltip>
<playtip name="image_playtip">
- 察看在此ä½ç½®çš„å½±åƒ
+ 察看在此ä½ç½®çš„圖åƒ
</playtip>
</widgetset>
<widgetset name="audio">
diff --git a/indra/newview/skins/default/xui/zh/notifications.xml b/indra/newview/skins/default/xui/zh/notifications.xml
index 1c89e9b522..2d309a2af0 100644
--- a/indra/newview/skins/default/xui/zh/notifications.xml
+++ b/indra/newview/skins/default/xui/zh/notifications.xml
@@ -758,16 +758,16 @@ No parcel selected.
No region selected.
</notification>
<notification name="CannotReleaseLandNothingSelected">
- Unable to abandon land:
-No parcel selected.
+ 無法放棄土地:
+無地段被é¸æ“‡ã€‚
</notification>
<notification name="CannotReleaseLandNoRegion">
無法放棄土地:
無法尋找地å€ã€‚
</notification>
<notification name="CannotBuyLandNothingSelected">
- Unable to buy land:
-No parcel selected.
+ 無法購買土地:
+無地段被é¸æ“‡ã€‚
</notification>
<notification name="CannotBuyLandNoRegion">
Unable to buy land:
@@ -777,121 +777,121 @@ Cannot find the region this land is in.
You cannot close the Buy Land window until [APP_NAME] estimates the price of this transaction.
</notification>
<notification name="CannotDeedLandNothingSelected">
- Unable to deed land:
+ 無法讓渡土地:
無地段被é¸å–。
</notification>
<notification name="CannotDeedLandNoGroup">
- Unable to deed land:
+ 無法讓渡土地:
無群組被é¸å–。
</notification>
<notification name="CannotDeedLandNoRegion">
- Unable to deed land:
-Cannot find the region this land is in.
+ 無法讓渡土地:
+無法發ç¾é€™å¡ŠåœŸåœ°æ‰€åœ¨çš„地å€ã€‚
</notification>
<notification name="CannotDeedLandMultipleSelected">
- Unable to deed land:
-Multiple parcels selected.
+ 無法讓渡土地:
+複數地段被é¸å–。
-Try selecting a single parcel.
+請試著é¸å–單一地段。
</notification>
<notification name="CannotDeedLandWaitingForServer">
- Unable to deed land:
-Waiting for server to report ownership.
+ 無法讓渡土地:
+等候伺æœå™¨å ±å‘Šæ“有權。
-Please try again.
+è«‹å†è©¦ä¸€æ¬¡ã€‚
</notification>
<notification name="CannotDeedLandNoTransfer">
- Unable to deed land:
-The region [REGION] does not allow transfer of land.
+ 無法讓渡土地:
+æ­¤ [REGION] 地å€ä¸¦ä¸å…許土地轉移。
</notification>
<notification name="CannotReleaseLandWatingForServer">
- Unable to abandon land:
-Waiting for server to update parcel information.
+ 無法放棄土地:
+等候伺æœå™¨æ›´æ–°åœ°æ®µè³‡è¨Šã€‚
-Try again in a few seconds.
+è«‹ç¨å¾Œå¹¾ç§’å†è©¦ä¸€æ¬¡ã€‚
</notification>
<notification name="CannotReleaseLandSelected">
- Unable to abandon land:
-You do not own all the parcels selected.
+ 無法放棄土地:
+你並ä½æ“有所é¸æ“‡çš„全部土地。
-Please select a single parcel.
+è«‹é¸æ“‡ä¸€å€‹å–®ä¸€åœ°æ®µã€‚
</notification>
<notification name="CannotReleaseLandDontOwn">
- Unable to abandon land:
-You don&apos;t have permission to release this parcel.
-Parcels you own appear in green.
+ 無法放棄土地:
+你並沒有權é™åŽ»é‡‹å‡ºé€™å€‹åœ°æ®µã€‚
+你所æ“有的地段將呈ç¾ç¶ è‰²ã€‚
</notification>
<notification name="CannotReleaseLandRegionNotFound">
- Unable to abandon land:
-Cannot find the region this land is in.
+ 無法放棄土地:
+無法發ç¾é€™å¿«åœŸåœ°æ‰€åœ¨çš„地å€ã€‚
</notification>
<notification name="CannotReleaseLandNoTransfer">
- Unable to abandon land:
-The region [REGION] does not allow transfer of land.
+ 無法放棄土地:
+æ­¤ [REGION] 地å€ä¸¦ä¸è¨±åœŸåœ°è½‰ç§»ã€‚
</notification>
<notification name="CannotReleaseLandPartialSelection">
- Unable to abandon land:
-You must select an entire parcel to release it.
+ 無法放棄土地:
+ä½ å¿…é ˆé¸å–一整個地段以釋出它。
-Select an entire parcel, or divide your parcel first.
+é¸å–一整個地段,或先進行分割。
</notification>
<notification name="ReleaseLandWarning">
- You are about to release [AREA] m² of land.
-Releasing this parcel will remove it from your land holdings, but will not grant any L$.
+ 你釋出約 [AREA] m² é¢ç©åœŸåœ°ã€‚
+釋出個地段將會由你所æŒæœ‰çš„土地中移除,但ä¸æœƒçµ¦äºˆä»»ä½• L$。
-Release this land?
+你確定è¦é‡‹å‡ºé€™å¡ŠåœŸåœ°ï¼Ÿ
<usetemplate name="okcancelbuttons" notext="å–消" yestext="確定"/>
</notification>
<notification name="CannotDivideLandNothingSelected">
- Unable to divide land:
+ 無法分割土地:
-No parcels selected.
+無地段被é¸å–。
</notification>
<notification name="CannotDivideLandPartialSelection">
- Unable to divide land:
+ 無法分割土地:
-You have an entire parcel selected.
-Try selecting a part of the parcel.
+ä½ ç¾åœ¨é¸å–整個地段。
+請試著é¸å–其中部分地段。
</notification>
<notification name="LandDivideWarning">
- Dividing this land will split this parcel into two and each parcel can have its own settings. Some settings will be reset to defaults after the operation.
+ 分割土地會將佌地段一分為二,æ¯ä¸€å€‹åœ°æ®µå°‡éƒ½å„自有其設定。 在這個æ“作之後,一些設定值將會回復到é è¨­å€¼ã€‚
-Divide land?
+進行分割土地?
<usetemplate name="okcancelbuttons" notext="å–消" yestext="確定"/>
</notification>
<notification name="CannotDivideLandNoRegion">
- Unable to divide land:
-Cannot find the region this land is in.
+ 無法分割土地:
+無法發ç¾é€™å¡ŠåœŸåœ°æ‰€åœ¨çš„地å€ã€‚
</notification>
<notification name="CannotJoinLandNoRegion">
- Unable to join land:
-Cannot find the region this land is in.
+ 無法åˆä½µåœŸåœ°ï¼š
+無法發ç¾é€™å¡ŠåœŸåœ°æ‰€åœ¨çš„地å€ã€‚
</notification>
<notification name="CannotJoinLandNothingSelected">
- Unable to join land:
-No parcels selected.
+ 無法åˆä½µåœŸåœ°ï¼š
+無地段被é¸å–。
</notification>
<notification name="CannotJoinLandEntireParcelSelected">
- Unable to join land:
-You only have one parcel selected.
+ 無法åˆä½µåœŸåœ°ï¼š
+ä½ åªæœ‰é¸å–一個地段。
-Select land across both parcels.
+請跨越兩個地段é¸å–土地。
</notification>
<notification name="CannotJoinLandSelection">
- Unable to join land:
-You must select more than one parcel.
+ 無法åˆä½µåœŸåœ°ï¼š
+ä½ å¿…é ˆé¸å–超éŽä¸€å€‹åœ°æ®µã€‚
-Select land across both parcels.
+請跨越兩個地段é¸å–土地。
</notification>
<notification name="JoinLandWarning">
- Joining this land will create one large parcel out of all parcels intersecting the selected rectangle.
-You will need to reset the name and options of the new parcel.
+ åˆä½µåœŸåœ°å°‡æœƒåœ¨é¸å–的全部地段範åœè£¡ç”¢ç”Ÿä¸€å€‹å·¨å¤§çš„地段。
+你將會需è¦é‡è¨­é€™å€‹æ–°åœ°æ®µçš„å稱與設定é¸é …。
-Join land?
+進行土地åˆä½µï¼Ÿ
<usetemplate name="okcancelbuttons" notext="å–消" yestext="確定"/>
</notification>
<notification name="ConfirmNotecardSave">
- This notecard needs to be saved before the item can be copied or viewed. Save notecard?
+ 在物å“能被覆製或察看å‰ï¼Œé€™è¨˜äº‹å¡å¿…須先進行儲存。儲存記事å¡ï¼Ÿ
<usetemplate name="okcancelbuttons" notext="å–消" yestext="確定"/>
</notification>
<notification name="ConfirmItemCopy">
@@ -1377,7 +1377,7 @@ We must restart [APP_NAME] to install the update.
<notification name="DeedObjectToGroup">
Deeding this object will cause the group to:
* Receive L$ paid into the object
- <usetemplate ignoretext="在我讓渡一個物件給群組å‰ç¢ºèª" name="okcancelignore" notext="å–消" yestext="Deed"/>
+ <usetemplate ignoretext="在我讓渡一個物件給群組å‰ç¢ºèª" name="okcancelignore" notext="å–消" yestext="讓渡"/>
</notification>
<notification name="WebLaunchExternalTarget">
你確定è¦é–‹å•Ÿç¶²é ç€è¦½å™¨åŽ»å¯Ÿçœ‹é€™å€‹å…§å®¹ï¼Ÿ
@@ -1457,7 +1457,7 @@ Chat and instant messages will be hidden. Instant messages will get your Busy mo
<notification name="JoinedTooManyGroupsMember">
You have reached your maximum number of groups. Please leave another group before joining this one, or decline the offer.
[NAME] has invited you to join a group as a member.
- <usetemplate name="okcancelbuttons" notext="Decline" yestext="加入"/>
+ <usetemplate name="okcancelbuttons" notext="è¬çµ•" yestext="加入"/>
</notification>
<notification name="JoinedTooManyGroups">
You have reached your maximum number of groups. Please leave some group before joining or creating a new one.
@@ -1509,12 +1509,12 @@ Chat and instant messages will be hidden. Instant messages will get your Busy mo
Just like in real life, it takes a while for everyone to learn about a new name. Please allow several days for [http://wiki.secondlife.com/wiki/Setting_your_display_name your name to update] in objects, scripts, search, etc.
</notification>
<notification name="SetDisplayNameBlocked">
- Sorry, you cannot change your display name. If you feel this is in error, please contact support.
+ 抱歉,你ä¸å¯ä»¥è®Šæ›´ä½ çš„顯示å稱。如果你覺得這是錯誤,請連繫支æ´å» å•†ã€‚
</notification>
<notification name="SetDisplayNameFailedLength">
- Sorry, that name is too long. Display names can have a maximum of [LENGTH] characters.
+ 抱歉,這å稱太長。顯示å稱最大長度為 [LENGTH] 字元。
-Please try a shorter name.
+請嘗試短一些的å稱。
</notification>
<notification name="SetDisplayNameFailedGeneric">
Sorry, we could not set your display name. Please try again later.
@@ -1890,7 +1890,7 @@ Move the inventory item(s)?
</notification>
<notification name="ConfirmQuit">
你確定你è¦çµæŸé€€å‡ºï¼Ÿ
- <usetemplate ignoretext="當我çµæŸé€€å‡ºæ™‚進行確èª" name="okcancelignore" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate ignoretext="當我çµæŸé€€å‡ºæ™‚進行確èª" name="okcancelignore" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification name="DeleteItems">
[QUESTION]
@@ -1941,11 +1941,11 @@ Linden Lab
The following required components are missing from [FLOATER]:
[COMPONENTS]
</notification>
- <notification label="Replace Existing Attachment" name="ReplaceAttachment">
+ <notification label="å–代ç¾æœ‰çš„附件" name="ReplaceAttachment">
There is already an object attached to this point on your body.
Do you want to replace it with the selected object?
<form name="form">
- <ignore name="ignore" text="Replace an existing attachment with the selected item"/>
+ <ignore name="ignore" text="以所é¸æ“‡çš„物å“å–代ç¾æœ‰çš„附加物"/>
<button ignore="自動å–代" name="Yes" text="確定"/>
<button ignore="絕ä¸å–代" name="No" text="å–消"/>
</form>
@@ -2109,10 +2109,10 @@ Link to this from a web page to give others easy access to this location, or try
Topic: [SUBJECT], Message: [MESSAGE]
</notification>
<notification name="FriendOnline">
- [NAME] is Online
+ [NAME] 上線
</notification>
<notification name="FriendOffline">
- [NAME] is Offline
+ [NAME] 離線
</notification>
<notification name="AddSelfFriend">
Although you&apos;re very nice, you can&apos;t add yourself as a friend.
@@ -2208,7 +2208,7 @@ Please select a single object.
[NAME] 接收到你æ供的收ç´å€ç‰©å“。
</notification>
<notification name="InventoryDeclined">
- [NAME] 拒絕你æ供的收ç´å€ç‰©å“。
+ [NAME] è¬çµ•ä½ æ供的收ç´å€ç‰©å“。
</notification>
<notification name="ObjectMessage">
[NAME]: [MESSAGE]
@@ -2418,7 +2418,7 @@ Please try again in a few moments.
</notification>
<notification name="ObjectGiveItem">
An object named &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; owned by [NAME_SLURL] has given you this [OBJECTTYPE]:
-&lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;
+[ITEM_SLURL]
<form name="form">
<button name="Keep" text="Keep"/>
<button name="Discard" text="Discard"/>
@@ -2443,7 +2443,7 @@ Please try again in a few moments.
[MESSAGE]
<form name="form">
<button name="Join" text="加入"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
<button name="Info" text="資訊"/>
</form>
</notification>
@@ -2475,7 +2475,7 @@ Please try again in a few moments.
(By default, you will be able to see each other&apos;s online status.)
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
</form>
</notification>
<notification name="FriendshipOffered">
@@ -2487,27 +2487,27 @@ Please try again in a few moments.
(By default, you will be able to see each other&apos;s online status.)
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
</form>
</notification>
<notification name="FriendshipAccepted">
[NAME] accepted your friendship offer.
</notification>
<notification name="FriendshipDeclined">
- [NAME] declined your friendship offer.
+ [NAME] è¬çµ•ä½ çš„交å‹é‚€è«‹ã€‚
</notification>
<notification name="FriendshipAcceptedByMe">
- Friendship offer accepted.
+ 交å‹é‚€è«‹è¢«æŽ¥å—。
</notification>
<notification name="FriendshipDeclinedByMe">
- Friendship offer declined.
+ 交å‹é‚€è«‹è¢«è¬çµ•ã€‚
</notification>
<notification name="OfferCallingCard">
[NAME] is offering their calling card.
This will add a bookmark in your inventory so you can quickly IM this Resident.
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
</form>
</notification>
<notification name="RegionRestartMinutes">
@@ -2559,7 +2559,7 @@ Grant this request?
<form name="form">
<button name="Grant" text="Grant"/>
<button name="Deny" text="Deny"/>
- <button name="Details" text="Details..."/>
+ <button name="Details" text="細節..."/>
</form>
</notification>
<notification name="ScriptDialog">
@@ -2602,7 +2602,7 @@ Things you build here will be deleted after you leave, so don&apos;t forget to r
Click Accept to join the call or Decline to decline the invitation. Click Block to block this caller.
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
<button name="Mute" text="Block"/>
</form>
</notification>
@@ -2620,7 +2620,7 @@ Click Accept to join the call or Decline to decline the invitation. Click Block
Click Accept to join the call or Decline to decline the invitation. Click Block to block this caller.
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
<button name="Mute" text="Block"/>
</form>
</notification>
@@ -2629,7 +2629,7 @@ Click Accept to join the call or Decline to decline the invitation. Click Block
Click Accept to join the call or Decline to decline the invitation. Click Block to block this caller.
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
<button name="Mute" text="Block"/>
</form>
</notification>
@@ -2638,7 +2638,7 @@ Click Accept to join the call or Decline to decline the invitation. Click Block
Click Accept to join the chat or Decline to decline the invitation. Click Block to block this caller.
<form name="form">
<button name="Accept" text="接å—"/>
- <button name="Decline" text="Decline"/>
+ <button name="Decline" text="è¬çµ•"/>
<button name="Mute" text="Block"/>
</form>
</notification>
@@ -2757,10 +2757,10 @@ With the following Residents:
<usetemplate name="okcancelbuttons" notext="å–消" yestext="確定"/>
</notification>
<notification name="ItemsShared">
- Items successfully shared.
+ 物å“å·²æˆåŠŸåˆ†äº«ã€‚
</notification>
<notification name="DeedToGroupFail">
- Deed to group failed.
+ 讓渡給群組失敗。
</notification>
<notification name="AvatarRezNotification">
( [EXISTENCE] seconds alive )
@@ -2822,7 +2822,7 @@ You uploaded a [RESOLUTION] baked texture for &apos;[BODYREGION]&apos; after [TI
You locally updated a [RESOLUTION] baked texture for &apos;[BODYREGION]&apos; after [TIME] seconds.
</notification>
<notification name="ConfirmLeaveCall">
- Are you sure you want to leave this call?
+ 你確定è¦é›¢é–‹é€™æ®µé€šè©±ï¼Ÿ
<usetemplate ignoretext="我çµæŸé€šè©±å‰é€²è¡Œç¢ºèª" name="okcancelignore" notext="å¦" yestext="是"/>
</notification>
<notification name="ConfirmMuteAll">
@@ -2846,7 +2846,7 @@ Click on the up arrow to see the voice control panel.
Hiding the Speak button will disable the voice feature.
</notification>
- <notification label="Explore the World" name="HintDestinationGuide">
+ <notification label="探索世界" name="HintDestinationGuide">
The Destination Guide contains thousands of new places to discover. Select a location and choose Teleport to start exploring.
</notification>
<notification label="å´é‚Šæ¬„" name="HintSidePanel">
@@ -2862,7 +2862,7 @@ Click anywhere on the ground to walk to that spot.
2. Click and Drag to Rotate View
Click and drag anywhere on the world to rotate your view
</notification>
- <notification label="Display Name" name="HintDisplayName">
+ <notification label="顯示å稱" name="HintDisplayName">
Set your customizable display name here. This is in addition to your unique username, which can&apos;t be changed. You can change how you see other people&apos;s names in your preferences.
</notification>
<notification label="View" name="HintView">
@@ -2871,7 +2871,7 @@ Click and drag anywhere on the world to rotate your view
<notification label="收ç´å€" name="HintInventory">
Check your inventory to find items. Newest items can be easily found in the Recent tab.
</notification>
- <notification label="You&apos;ve got Linden Dollars!" name="HintLindenDollar">
+ <notification label="你得到林登幣!" name="HintLindenDollar">
Here&apos;s your current balance of L$. Click Buy L$ to purchase more Linden Dollars.
</notification>
<notification name="PopupAttempt">
@@ -2892,38 +2892,38 @@ Click and drag anywhere on the world to rotate your view
</notification>
<notification label="" name="ModeChange">
改變劉覽器模å¼è¦æ±‚ä½ å¿…é ˆçµæŸé€€å‡ºä¸¦é‡æ–°å•Ÿå‹•ã€‚
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoClassifieds">
Creation and editing of Classifieds is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoGroupInfo">
Creation and editing of Groups is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoPicks">
Creation and editing of Picks is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoWorldMap">
Viewing of the world map is only available in Advanced mode. Would you like to quit and change modes? The mode selector can be found on the login screen.
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoVoiceCall">
Voice calls are only available in Advanced mode. Would you like to logout and change modes?
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoAvatarShare">
Sharing is only available in Advanced mode. Would you like to logout and change modes?
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<notification label="" name="NoAvatarPay">
Paying other residents is only available in Advanced mode. Would you like to logout and change modes?
- <usetemplate name="okcancelbuttons" notext="ä¸çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
+ <usetemplate name="okcancelbuttons" notext="ä¸è¦çµæŸé€€å‡º" yestext="çµæŸé€€å‡º"/>
</notification>
<global name="UnsupportedCPU">
- - Your CPU speed does not meet the minimum requirements.
+ - ä½ çš„ CPU é‹ç®—速度未é”到系統最低é…å‚™è¦æ±‚。
</global>
<global name="UnsupportedGLRequirements">
You do not appear to have the proper hardware requirements for [APP_NAME]. [APP_NAME] requires an OpenGL graphics card that has multitexture support. If this is the case, you may want to make sure that you have the latest drivers for your graphics card, and service packs and patches for your operating system.
@@ -2940,7 +2940,7 @@ If you continue to have problems, please visit the [SUPPORT_SITE].
- 你的顯示å¡æœªé”系統最低é…å‚™è¦æ±‚。
</global>
<global name="UnsupportedRAM">
- - Your system memory does not meet the minimum requirements.
+ - 你的系統記憶體å¡æœªé”系統最低é…å‚™è¦æ±‚。
</global>
<global name="You can only set your &apos;Home Location&apos; on your land or at a mainland Infohub.">
若你æ“有一塊土地,你å¯ä»¥æ¨™è¨˜å®ƒæˆç‚ºä½ çš„家的ä½ç½®ã€‚
diff --git a/indra/newview/skins/default/xui/zh/panel_bottomtray.xml b/indra/newview/skins/default/xui/zh/panel_bottomtray.xml
index 2b0cd7c0a6..734b83e6cc 100644
--- a/indra/newview/skins/default/xui/zh/panel_bottomtray.xml
+++ b/indra/newview/skins/default/xui/zh/panel_bottomtray.xml
@@ -16,7 +16,7 @@
<bottomtray_button label="移動" name="movement_btn" tool_tip="顯示 / éš±è— ç§»å‹•æŽ§åˆ¶"/>
</layout_panel>
<layout_panel name="cam_panel">
- <bottomtray_button label="View" name="camera_btn" tool_tip="顯示 / éš±è— æ”影機控制"/>
+ <bottomtray_button label="視角" name="camera_btn" tool_tip="顯示 / éš±è— æ”影機控制"/>
</layout_panel>
<layout_panel name="snapshot_panel">
<bottomtray_button name="snapshots" tool_tip="æ‹æ”å¿«ç…§"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml b/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml
index 6b17302bf1..eda4e99a13 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_alpha.xml
@@ -2,11 +2,11 @@
<panel name="edit_alpha_panel">
<scroll_container name="avatar_alpha_color_panel_scroll">
<panel name="avatar_alpha_color_panel">
- <texture_picker label="下åŠèº«åŠé€æ˜Ž" name="Lower Alpha" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="上åŠèº«åŠé€æ˜Ž" name="Upper Alpha" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="頭部åŠé€æ˜Ž" name="Head Alpha" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="眼ç›åŠé€æ˜Ž" name="Eye Alpha" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="é ­é«®åŠé€æ˜Ž" name="Hair Alpha" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="下åŠèº«åŠé€æ˜Ž" name="Lower Alpha" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="上åŠèº«åŠé€æ˜Ž" name="Upper Alpha" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="頭部åŠé€æ˜Ž" name="Head Alpha" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="眼ç›åŠé€æ˜Ž" name="Eye Alpha" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="é ­é«®åŠé€æ˜Ž" name="Hair Alpha" tool_tip="點擊以挑é¸åœ–åƒ"/>
</panel>
</scroll_container>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml b/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml
index 99e2874319..40dd61971a 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_eyes.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_eyes_panel">
<panel name="avatar_eye_color_panel">
- <texture_picker label="Iris" name="Iris" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="Iris" name="Iris" tool_tip="點擊以挑é¸åœ–åƒ"/>
</panel>
<panel name="accordion_panel">
<accordion name="wearable_accordion">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml b/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml
index 9c542366bc..7b39e33a9b 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_gloves.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_gloves_panel">
<panel name="avatar_gloves_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="Click to open color picker"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_hair.xml b/indra/newview/skins/default/xui/zh/panel_edit_hair.xml
index d9ddafac3b..a7440093bc 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_hair.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_hair.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_hair_panel">
<panel name="avatar_hair_color_panel">
- <texture_picker label="æ質" name="Texture" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Texture" tool_tip="點擊以挑é¸åœ–åƒ"/>
</panel>
<panel name="accordion_panel">
<accordion name="wearable_accordion">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml b/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml
index df85f7deb2..dcef070e2e 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_jacket.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_jacket_panel">
<panel name="avatar_jacket_color_panel">
- <texture_picker label="上åŠèº«æ質" name="Upper Fabric" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="下åŠèº«æ質" name="Lower Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="上åŠèº«æ質" name="Upper Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="下åŠèº«æ質" name="Lower Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="Click to open color picker"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_pants.xml b/indra/newview/skins/default/xui/zh/panel_edit_pants.xml
index 76560256f7..01b875f1bd 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_pants.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_pants.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_pants_panel">
<panel name="avatar_pants_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_profile.xml b/indra/newview/skins/default/xui/zh/panel_edit_profile.xml
index 2258e51b85..7734c3a417 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_profile.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_profile.xml
@@ -26,9 +26,9 @@
<scroll_container name="profile_scroll">
<panel name="scroll_content_panel">
<panel name="data_panel">
- <text name="display_name_label" value="Display Name:"/>
+ <text name="display_name_label" value="顯示å稱:"/>
<text name="solo_username_label" value="使用者å稱:"/>
- <button name="set_name" tool_tip="Set Display Name"/>
+ <button name="set_name" tool_tip="設定顯示å稱"/>
<text name="user_label" value="使用者å稱:"/>
<panel name="lifes_images_panel">
<panel name="second_life_image_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml
index ecfc1e2fad..f8ff76aa9b 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_shirt.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_shirt_panel">
<panel name="avatar_shirt_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml b/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml
index 675caf9e2e..97e43f5753 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_shoes.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_shoes_panel">
<panel name="avatar_shoes_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="é¡è‰²/色調" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_skin.xml b/indra/newview/skins/default/xui/zh/panel_edit_skin.xml
index 22f0279060..fdd6d05ca5 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_skin.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_skin.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_skin_panel">
<panel name="avatar_skin_color_panel">
- <texture_picker label="Head Tattoos" name="Head Tattoos" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="Upper Tattoos" name="Upper Tattoos" tool_tip="點擊以挑é¸åœ–片"/>
- <texture_picker label="Lower Tattoos" name="Lower Tattoos" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="Head Tattoos" name="Head Tattoos" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="Upper Tattoos" name="Upper Tattoos" tool_tip="點擊以挑é¸åœ–åƒ"/>
+ <texture_picker label="Lower Tattoos" name="Lower Tattoos" tool_tip="點擊以挑é¸åœ–åƒ"/>
</panel>
<panel name="accordion_panel">
<accordion name="wearable_accordion">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml
index 5c46f94fe9..10432c16b1 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_skirt.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_skirt_panel">
<panel name="avatar_skirt_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_socks.xml b/indra/newview/skins/default/xui/zh/panel_edit_socks.xml
index 09c888f226..6727781740 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_socks.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_socks.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_socks_panel">
<panel name="avatar_socks_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml b/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml
index 946f8b22dc..1b34a0e0ee 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_tattoo.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_tattoo_panel">
<panel name="avatar_tattoo_color_panel">
- <texture_picker label="頭部刺é’" name="Head Tattoo" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="頭部刺é’" name="Head Tattoo" tool_tip="點擊以挑é¸åœ–åƒ"/>
<texture_picker label="上åŠèº«åˆºé’" name="Upper Tattoo" tool_tip="點擊以挑é¸ç…§ç‰‡"/>
- <texture_picker label="下åŠèº«åˆºé’" name="Lower Tattoo" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="下åŠèº«åˆºé’" name="Lower Tattoo" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="點擊以開啟é¡è‰²æŒ‘é¸å™¨"/>
</panel>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml b/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml
index 82ab70bafc..15cae8d233 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_underpants.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_underpants_panel">
<panel name="avatar_underpants_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="Click to open color picker"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml b/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml
index b284668777..486175eb64 100644
--- a/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml
+++ b/indra/newview/skins/default/xui/zh/panel_edit_undershirt.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="edit_undershirt_panel">
<panel name="avatar_undershirt_color_panel">
- <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="æ質" name="Fabric" tool_tip="點擊以挑é¸åœ–åƒ"/>
<color_swatch label="Color/Tint" name="Color/Tint" tool_tip="Click to open Color Picker"/>
</panel>
<panel name="accordion_panel">
diff --git a/indra/newview/skins/default/xui/zh/panel_group_general.xml b/indra/newview/skins/default/xui/zh/panel_group_general.xml
index f70fbf22a8..55cbf5a617 100644
--- a/indra/newview/skins/default/xui/zh/panel_group_general.xml
+++ b/indra/newview/skins/default/xui/zh/panel_group_general.xml
@@ -12,7 +12,7 @@ Hover your mouse over the options for more help.
Retrieving member data
</panel.string>
<panel name="group_info_top">
- <texture_picker label="" name="insignia" tool_tip="點擊以挑é¸åœ–片"/>
+ <texture_picker label="" name="insignia" tool_tip="點擊以挑é¸åœ–åƒ"/>
<text name="prepend_founded_by">
創辦人:
</text>
@@ -52,6 +52,6 @@ Hover your mouse over the options for more help.
<combo_box.item label="é©åº¦æˆäººå…§å®¹" name="mature"/>
<combo_box.item label="一般普級內容" name="pg"/>
</combo_box>
- <check_box initial_value="true" label="顯示在æœå°‹ä¸­" name="show_in_group_list" tool_tip="Let people see this group in search results"/>
+ <check_box initial_value="true" label="顯示在æœå°‹ä¸­" name="show_in_group_list" tool_tip="讓其他人å¯ä»¥åœ¨æœå°‹çµæžœä¸­çœ‹åˆ°é€™å€‹ç¾¤çµ„"/>
</panel>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_group_land_money.xml b/indra/newview/skins/default/xui/zh/panel_group_land_money.xml
index 1bf3929683..5ac7410c8b 100644
--- a/indra/newview/skins/default/xui/zh/panel_group_land_money.xml
+++ b/indra/newview/skins/default/xui/zh/panel_group_land_money.xml
@@ -52,7 +52,7 @@
m²
</text>
<text name="your_contribution_max_value">
- ([AMOUNT] max)
+ ([AMOUNT] 最大)
</text>
<text name="group_over_limit_text">
More land credits are needed to support land in use
@@ -67,14 +67,14 @@
載入中...
</text_editor>
</panel>
- <panel label="DETAILS" name="group_money_details_tab">
+ <panel label="細節" name="group_money_details_tab">
<text_editor name="group_money_details_text">
載入中...
</text_editor>
<button name="earlier_details_button" tool_tip="Back"/>
<button name="later_details_button" tool_tip="Next"/>
</panel>
- <panel label="SALES" name="group_money_sales_tab">
+ <panel label="銷售" name="group_money_sales_tab">
<text_editor name="group_money_sales_text">
載入中...
</text_editor>
diff --git a/indra/newview/skins/default/xui/zh/panel_main_inventory.xml b/indra/newview/skins/default/xui/zh/panel_main_inventory.xml
index f7dada226f..53ecf3eb19 100644
--- a/indra/newview/skins/default/xui/zh/panel_main_inventory.xml
+++ b/indra/newview/skins/default/xui/zh/panel_main_inventory.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<panel label="Things" name="main inventory panel">
+<panel label="事物" name="main inventory panel">
<panel.string name="ItemcountFetching">
Fetching [ITEM_COUNT] Items... [FILTER]
</panel.string>
diff --git a/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml b/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml
index 3e44f2a584..321c003acd 100644
--- a/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml
+++ b/indra/newview/skins/default/xui/zh/panel_media_settings_general.xml
@@ -17,8 +17,8 @@
<button label="é‡è¨­" name="current_url_reset_btn"/>
<check_box initial_value="false" label="Auto Loop" name="auto_loop"/>
<check_box initial_value="false" label="First Click Interacts" name="first_click_interact"/>
- <check_box initial_value="false" label="Auto Zoom" name="auto_zoom"/>
- <check_box initial_value="false" label="Auto Play Media" name="auto_play"/>
+ <check_box initial_value="false" label="自動縮放" name="auto_zoom"/>
+ <check_box initial_value="false" label="自動播放媒體" name="auto_play"/>
<text name="media_setting_note">
Note: Residents can override this setting
</text>
diff --git a/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml b/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml
index ec62b61c54..173edc76f6 100644
--- a/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml
+++ b/indra/newview/skins/default/xui/zh/panel_media_settings_permissions.xml
@@ -14,16 +14,16 @@
<text name="owner_label">
æ“有者
</text>
- <check_box initial_value="false" label="Allow Navigation &amp; Interactivity" name="perms_owner_interact"/>
+ <check_box initial_value="false" label="å…許導航與互動" name="perms_owner_interact"/>
<check_box initial_value="false" label="顯示控制列" name="perms_owner_control"/>
<text name="group_label">
群組:
</text>
- <check_box initial_value="false" label="Allow Navigation &amp; Interactivity" name="perms_group_interact"/>
+ <check_box initial_value="false" label="å…許導航與互動" name="perms_group_interact"/>
<check_box initial_value="false" label="顯示控制列" name="perms_group_control"/>
<text name="anyone_label">
任何人
</text>
- <check_box initial_value="false" label="Allow Navigation &amp; Interactivity" name="perms_anyone_interact"/>
+ <check_box initial_value="false" label="å…許導航與互動" name="perms_anyone_interact"/>
<check_box initial_value="false" label="顯示控制列" name="perms_anyone_control"/>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_my_profile.xml b/indra/newview/skins/default/xui/zh/panel_my_profile.xml
index e26ccdef73..79817d7be9 100644
--- a/indra/newview/skins/default/xui/zh/panel_my_profile.xml
+++ b/indra/newview/skins/default/xui/zh/panel_my_profile.xml
@@ -31,7 +31,7 @@
User name
</text>
<text name="name_descr_text">
- Display Name
+ 顯示å稱
</text>
<button label="檔案" name="see_profile_btn" tool_tip="察看這ä½åŒ–身的檔案"/>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_notes.xml b/indra/newview/skins/default/xui/zh/panel_notes.xml
index 5d0e6760ff..875c6bb328 100644
--- a/indra/newview/skins/default/xui/zh/panel_notes.xml
+++ b/indra/newview/skins/default/xui/zh/panel_notes.xml
@@ -15,7 +15,7 @@
<layout_panel name="notes_buttons_panel">
<layout_stack name="bottom_bar_ls">
<layout_panel name="add_friend_btn_lp">
- <button label="加為朋å‹" name="add_friend" tool_tip="Offer friendship to the Resident"/>
+ <button label="加為朋å‹" name="add_friend" tool_tip="å‘這個居民æ出交å‹é‚€è«‹"/>
</layout_panel>
<layout_panel name="im_btn_lp">
<button label="IM" name="im" tool_tip="é–‹å•Ÿå³æ™‚訊æ¯æœƒè©±"/>
@@ -24,7 +24,7 @@
<button label="通話" name="call" tool_tip="與這ä½å±…民通話"/>
</layout_panel>
<layout_panel name="show_on_map_btn_lp">
- <button label="地圖" name="show_on_map_btn" tool_tip="Show the Resident on the map"/>
+ <button label="地圖" name="show_on_map_btn" tool_tip="在地圖上顯示這個居民"/>
</layout_panel>
<layout_panel name="teleport_btn_lp">
<button label="瞬間傳é€" name="teleport" tool_tip="發給瞬間傳é€è«‹æ±‚"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml b/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml
index dfd81a85cc..d9718d8294 100644
--- a/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml
+++ b/indra/newview/skins/default/xui/zh/panel_outfits_inventory.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<panel label="Things" name="Outfits">
+<panel label="事物" name="Outfits">
<panel.string name="wear_outfit_tooltip">
穿上所é¸æ“‡çš„è£æ‰®
</panel.string>
diff --git a/indra/newview/skins/default/xui/zh/panel_people.xml b/indra/newview/skins/default/xui/zh/panel_people.xml
index c97ff2ae96..9c265622fa 100644
--- a/indra/newview/skins/default/xui/zh/panel_people.xml
+++ b/indra/newview/skins/default/xui/zh/panel_people.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- Side tray panel -->
-<panel label="People" name="people_panel">
+<panel label="人群" name="people_panel">
<string name="no_recent_people" value="No recent people. Looking for people to hang out with? Try [secondlife:///app/search/people Search] or the [secondlife:///app/worldmap World Map]."/>
<string name="no_filtered_recent_people" value="Didn&apos;t find what you&apos;re looking for? Try [secondlife:///app/search/people/[SEARCH_TERM] Search]."/>
<string name="no_one_near" value="No one nearby. Looking for people to hang out with? Try [secondlife:///app/search/people Search] or the [secondlife:///app/worldmap World Map]."/>
diff --git a/indra/newview/skins/default/xui/zh/panel_place_profile.xml b/indra/newview/skins/default/xui/zh/panel_place_profile.xml
index d7bcb0d027..1772b65434 100644
--- a/indra/newview/skins/default/xui/zh/panel_place_profile.xml
+++ b/indra/newview/skins/default/xui/zh/panel_place_profile.xml
@@ -66,7 +66,7 @@
<text name="build_value" value="On"/>
<text name="scripts_label" value="腳本:"/>
<text name="scripts_value" value="On"/>
- <text name="damage_label" value="商害:"/>
+ <text name="damage_label" value="傷害:"/>
<text name="damage_value" value="Off"/>
<button label="關於土地" name="about_land_btn"/>
</panel>
@@ -102,11 +102,11 @@
<text name="sales_price_label" value="價格:"/>
<text name="area_label" value="é¢ç©ï¼š"/>
<text name="traffic_label" value="æµé‡ï¼š"/>
- <text name="primitives_label" value="Primitives:"/>
+ <text name="primitives_label" value="幾何元件:"/>
<text name="parcel_scripts_label" value="腳本:"/>
<text name="terraform_limits_label" value="土地變形é™åˆ¶ï¼š"/>
<text name="subdivide_label" value="分割土地/åˆä½µåœŸåœ°èƒ½åŠ›ï¼š"/>
- <text name="resale_label" value="ReSale ability:"/>
+ <text name="resale_label" value="轉售能力:"/>
<text name="sale_to_label" value="出售給:"/>
</panel>
</accordion_tab>
diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml
index ee8cd9794a..874fb6b218 100644
--- a/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml
+++ b/indra/newview/skins/default/xui/zh/panel_preferences_graphics1.xml
@@ -47,14 +47,14 @@
<text name="DrawDistanceMeterText2">
m
</text>
- <slider label="Max. particle count:" name="MaxParticleCount"/>
+ <slider label="最大粒å­æ•ˆæžœæ•¸é‡ï¼š" name="MaxParticleCount"/>
<slider label="Max. # of non-impostor avatars:" name="MaxNumberAvatarDrawn"/>
<slider label="後製å“質:" name="RenderPostProcess"/>
<text name="MeshDetailText">
網é¢ç´°ç¯€ï¼š
</text>
<slider label="物件:" name="ObjectMeshDetail"/>
- <slider label="Flexiprims:" name="FlexibleMeshDetail"/>
+ <slider label="彈性幾何元件:" name="FlexibleMeshDetail"/>
<slider label="樹木:" name="TreeMeshDetail"/>
<slider label="化身:" name="AvatarMeshDetail"/>
<slider label="地形:" name="TerrainMeshDetail"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_move.xml b/indra/newview/skins/default/xui/zh/panel_preferences_move.xml
index 57e3540b3d..ce176b1e3c 100644
--- a/indra/newview/skins/default/xui/zh/panel_preferences_move.xml
+++ b/indra/newview/skins/default/xui/zh/panel_preferences_move.xml
@@ -15,7 +15,7 @@
<check_box label="å轉" name="invert_mouse"/>
<check_box label="總是使用方å‘éµç§»å‹•" name="arrow_keys_move_avatar_check"/>
<check_box label="連點按ä½å¾Œè·‘æ­¥" name="tap_tap_hold_to_run"/>
- <check_box label="雙擊以D:" name="double_click_chkbox"/>
+ <check_box label="雙擊以:" name="double_click_chkbox"/>
<radio_group name="double_click_action">
<radio_item label="瞬間傳é€" name="radio_teleport"/>
<radio_item label="自動導航駕駛" name="radio_autopilot"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml
index bd6d465572..07fdfd87e3 100644
--- a/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml
+++ b/indra/newview/skins/default/xui/zh/panel_preferences_privacy.xml
@@ -8,7 +8,7 @@
(ä½ç½®ã€åœ–åƒã€ç¶²é ã€æœå°‹çš„æ­·å²ç´€éŒ„)
</text>
<check_box label="將我顯示在æœå°‹çš„çµæžœä¸­" name="online_searchresults"/>
- <check_box label="åªæœ‰æˆ‘的朋å‹å’Œç¾¤çµ„知é“我在線上" name="online_visibility"/>
+ <check_box label="åªæœ‰æˆ‘的朋å‹å’Œç¾¤çµ„知é“我上線" name="online_visibility"/>
<check_box label="åªæœ‰æˆ‘的朋å‹å’Œç¾¤çµ„å¯ä»¥ IM 或與我通話。" name="voice_call_friends_only_check"/>
<check_box label="當通話çµæŸæ™‚關閉麥克風" name="auto_disengage_mic_check"/>
<check_box label="登入時顯示我最愛的地標ä½ç½®ï¼ˆç¶“ç”± &apos;開始於&apos; 的下拉å¼é¸å–®ï¼‰" name="favorites_on_login_check"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml
index 8d0e2a6355..df1a1b73a1 100644
--- a/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml
+++ b/indra/newview/skins/default/xui/zh/panel_prim_media_controls.xml
@@ -37,28 +37,28 @@
<button name="fwd_btn" tool_tip="Navigate forward"/>
</layout_panel>
<layout_panel name="home">
- <button name="home_btn" tool_tip="Home page"/>
+ <button name="home_btn" tool_tip="首é "/>
</layout_panel>
<layout_panel name="media_stop">
<button name="media_stop_btn" tool_tip="åœæ­¢åª’é«”"/>
</layout_panel>
<layout_panel name="reload">
- <button name="reload_btn" tool_tip="Reload"/>
+ <button name="reload_btn" tool_tip="é‡æ–°è¼‰å…¥"/>
</layout_panel>
<layout_panel name="stop">
- <button name="stop_btn" tool_tip="Stop loading"/>
+ <button name="stop_btn" tool_tip="åœæ­¢è¼‰å…¥"/>
</layout_panel>
<layout_panel name="play">
- <button name="play_btn" tool_tip="Play media"/>
+ <button name="play_btn" tool_tip="播放媒體"/>
</layout_panel>
<layout_panel name="pause">
- <button name="pause_btn" tool_tip="Pause media"/>
+ <button name="pause_btn" tool_tip="æš«åœåª’é«”"/>
</layout_panel>
<layout_panel name="media_address">
- <line_editor name="media_address_url" tool_tip="Media URL"/>
+ <line_editor name="media_address_url" tool_tip="媒體網å€"/>
<layout_stack name="media_address_url_icons">
<layout_panel>
- <icon name="media_whitelist_flag" tool_tip="White List enabled"/>
+ <icon name="media_whitelist_flag" tool_tip="白å單已啟用"/>
</layout_panel>
<layout_panel>
<icon name="media_secure_lock_flag" tool_tip="Secured Browsing"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_profile_view.xml b/indra/newview/skins/default/xui/zh/panel_profile_view.xml
index 12fe776e45..2684287692 100644
--- a/indra/newview/skins/default/xui/zh/panel_profile_view.xml
+++ b/indra/newview/skins/default/xui/zh/panel_profile_view.xml
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="panel_target_profile">
<string name="status_online">
- Online
+ 上線
</string>
<string name="status_offline">
- Offline
+ 離線
</string>
- <text name="display_name_label" value="Display Name:"/>
+ <text name="display_name_label" value="顯示å稱:"/>
<text name="solo_username_label" value="使用者å稱:"/>
- <text name="status" value="Online"/>
+ <text name="status" value="上線"/>
<text name="user_name_small" value="Jack oh look at me this is a super duper long name"/>
<button name="copy_to_clipboard" tool_tip="覆製到剪貼簿"/>
<text name="user_label" value="使用者å稱:"/>
diff --git a/indra/newview/skins/default/xui/zh/panel_region_general.xml b/indra/newview/skins/default/xui/zh/panel_region_general.xml
index 38fde494aa..a441b8898d 100644
--- a/indra/newview/skins/default/xui/zh/panel_region_general.xml
+++ b/indra/newview/skins/default/xui/zh/panel_region_general.xml
@@ -24,7 +24,7 @@
<check_box label="é™åˆ¶æŽ¨æ’ž" name="restrict_pushobject"/>
<check_box label="å…許土地轉售" name="allow_land_resell_check"/>
<check_box label="å…許土地 åˆä½µ/分割" name="allow_parcel_changes_check"/>
- <check_box label="阻擋土地顯示於æœå°‹ä¸­" name="block_parcel_search_check" tool_tip="Let people see this region and its parcels in search results"/>
+ <check_box label="阻擋土地顯示於æœå°‹ä¸­" name="block_parcel_search_check" tool_tip="讓其他人å¯ä»¥åœ¨æœå°‹çµæžœä¸­çœ‹åˆ°é€™å€‹åœ°å€èˆ‡å…¶ä¸­çš„地段"/>
<spinner label="人數上é™" name="agent_limit_spin"/>
<spinner label="Object Bonus" name="object_bonus_spin"/>
<text label="Maturity" name="access_text">
diff --git a/indra/newview/skins/default/xui/zh/panel_region_terrain.xml b/indra/newview/skins/default/xui/zh/panel_region_terrain.xml
index 0622cb4e73..7cae8fe8cf 100644
--- a/indra/newview/skins/default/xui/zh/panel_region_terrain.xml
+++ b/indra/newview/skins/default/xui/zh/panel_region_terrain.xml
@@ -6,14 +6,14 @@
<text name="region_text">
未知
</text>
- <spinner label="Water Height" name="water_height_spin"/>
- <spinner label="Terrain Raise Limit" name="terrain_raise_spin"/>
- <spinner label="Terrain Lower Limit" name="terrain_lower_spin"/>
- <check_box label="Use Estate Sun" name="use_estate_sun_check"/>
- <check_box label="Fixed Sun" name="fixed_sun_check"/>
+ <spinner label="水文高度" name="water_height_spin"/>
+ <spinner label="地形æå‡é™åˆ¶" name="terrain_raise_spin"/>
+ <spinner label="地形é™ä½Žé™åˆ¶" name="terrain_lower_spin"/>
+ <check_box label="使用領地的太陽設定" name="use_estate_sun_check"/>
+ <check_box label="固定太陽" name="fixed_sun_check"/>
<slider label="Phase" name="sun_hour_slider"/>
<button label="套用" name="apply_btn"/>
- <button label="Download RAW terrain..." name="download_raw_btn" tool_tip="Available only to estate owners, not managers"/>
- <button label="上傳 RAW 地形檔..." name="upload_raw_btn" tool_tip="Available only to estate owners, not managers"/>
+ <button label="下載 RAW 地形..." name="download_raw_btn" tool_tip="åªå…許領地æ“有者而éžç®¡ç†è€…進行æ“作"/>
+ <button label="上傳 RAW 地形檔..." name="upload_raw_btn" tool_tip="åªå…許領地æ“有者而éžç®¡ç†è€…進行æ“作"/>
<button label="Bake Terrain" name="bake_terrain_btn" tool_tip="Set current terrain as mid-point for raise/lower limits"/>
</panel>
diff --git a/indra/newview/skins/default/xui/zh/panel_script_ed.xml b/indra/newview/skins/default/xui/zh/panel_script_ed.xml
index 1dc7c1e089..cc2b0fc673 100644
--- a/indra/newview/skins/default/xui/zh/panel_script_ed.xml
+++ b/indra/newview/skins/default/xui/zh/panel_script_ed.xml
@@ -4,7 +4,7 @@
載入中...
</panel.string>
<panel.string name="can_not_view">
- ä½ ä¸å¯Ÿçœ‹æˆ–編輯此腳本,自從它被設定為 &quot;no copy&quot; 後。你需è¦å®Œæ•´æ¬Šé™åŽ»å¯Ÿçœ‹æˆ–編輯有包å«è…³æœ¬åœ¨å…§çš„物件。
+ ä½ ä¸èƒ½å¯Ÿçœ‹æˆ–編輯此腳本,自從它被設定為 &quot;no copy&quot; 後。你需è¦å®Œæ•´æ¬Šé™åŽ»å¯Ÿçœ‹æˆ–編輯有包å«è…³æœ¬åœ¨å…§çš„物件。
</panel.string>
<panel.string name="public_objects_can_not_run">
公開物件ä¸èƒ½åŸ·è¡Œè…³æœ¬
diff --git a/indra/newview/skins/default/xui/zh/panel_side_tray.xml b/indra/newview/skins/default/xui/zh/panel_side_tray.xml
index b706f1839a..e5c7deb7d6 100644
--- a/indra/newview/skins/default/xui/zh/panel_side_tray.xml
+++ b/indra/newview/skins/default/xui/zh/panel_side_tray.xml
@@ -11,7 +11,7 @@
<panel label="自己" name="panel_me"/>
</panel_container>
</sidetray_tab>
- <sidetray_tab description="Find your friends, contacts and people nearby." name="sidebar_people" tab_title="People">
+ <sidetray_tab description="Find your friends, contacts and people nearby." name="sidebar_people" tab_title="人群">
<panel_container name="panel_container">
<panel label="群組檔案" name="panel_group_info_sidetray"/>
<panel label="Blocked Residents &amp; Objects" name="panel_block_list_sidetray"/>
diff --git a/indra/newview/skins/default/xui/zh/role_actions.xml b/indra/newview/skins/default/xui/zh/role_actions.xml
index d5c3096b22..32bf0d22d8 100644
--- a/indra/newview/skins/default/xui/zh/role_actions.xml
+++ b/indra/newview/skins/default/xui/zh/role_actions.xml
@@ -18,7 +18,7 @@
<action description="Change Charter, Insignia, and &apos;Show in search&apos;" longdescription="Change Charter, Insignia, and &apos;Show in search&apos;. This is done in the General section." name="group change identity" value="11"/>
</action_set>
<action_set description="These Abilities include powers to deed, modify, and sell land in this group&apos;s land holdings. To get to the About Land window, right-click the ground and select &apos;About Land&apos;, or click the &apos;i&apos; icon in the Navigation Bar." name="Parcel Management">
- <action description="Deed land and buy land for group" longdescription="Deed land and buy land for group. This is done in About Land &gt; General tab." name="land deed" value="12"/>
+ <action description="讓渡土地或購買土地給群組" longdescription="Deed land and buy land for group. This is done in About Land &gt; General tab." name="land deed" value="12"/>
<action description="Abandon land to Governor Linden" longdescription="Abandon land to Governor Linden. *WARNING* Any Member in a Role with this Ability can abandon group-owned land in About Land &gt; General tab, reverting it to Linden ownership without a sale! Be sure you know what you&apos;re doing before assigning this Ability." name="land release" value="13"/>
<action description="Set land for sale info" longdescription="Set land for sale info. *WARNING* Any Member in a Role with this Ability can sell group-owned land in About Land &gt; General tab as they wish! Be sure you know what you&apos;re doing before assigning this Ability." name="land set sale info" value="14"/>
<action description="Subdivide and join parcels" longdescription="Subdivide and join parcels. This is done by right-clicking the ground, &apos;Edit Terrain&apos;, and dragging your mouse on the land to make a selection. To subdivide, select what you want to split and click &apos;Subdivide&apos;. To join, select two or more contiguous parcels and click &apos;Join&apos;." name="land divide join" value="15"/>
@@ -54,7 +54,7 @@
<action description="Landscaping using Linden plants" longdescription="Landscaping ability to place and move Linden trees, plants, and grasses. These items can be found in your inventory&apos;s Library &gt; Objects folder, or they can be created via the Build menu." name="land gardening" value="35"/>
</action_set>
<action_set description="These Abilities include powers to deed, modify, and sell group-owned objects. These changes are done in the Build Tools &gt; General tab. Right-click an object and Edit to see its settings." name="Object Management">
- <action description="Deed objects to group" longdescription="Deed objects to group in the Build Tools &gt; General tab." name="object deed" value="36"/>
+ <action description="讓渡物件給群組" longdescription="Deed objects to group in the Build Tools &gt; General tab." name="object deed" value="36"/>
<action description="Manipulate (move, copy, modify) group-owned objects" longdescription="Manipulate (move, copy, modify) group-owned objects in the Build Tools &gt; General tab." name="object manipulate" value="38"/>
<action description="Set group-owned objects for sale" longdescription="Set group-owned objects for sale in the Build Tools &gt; General tab." name="object set sale" value="39"/>
</action_set>
diff --git a/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml b/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml
index 4cc16ed250..7abe95a402 100644
--- a/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/zh/sidepanel_inventory.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<panel label="Things" name="objects panel">
+<panel label="事物" name="objects panel">
<panel label="" name="sidepanel__inventory_panel">
<panel name="button_panel">
<layout_stack name="button_panel_ls">
@@ -11,8 +11,8 @@
</layout_panel>
<layout_panel name="shop_btn_lp">
<button label="Shop" name="shop_btn" tool_tip="Open Marketplace webpage"/>
- <button label="Wear" name="wear_btn" tool_tip="穿上所é¸æ“‡çš„è£æ‰®"/>
- <button label="Play" name="play_btn"/>
+ <button label="穿上" name="wear_btn" tool_tip="穿上所é¸æ“‡çš„è£æ‰®"/>
+ <button label="播放" name="play_btn"/>
<button label="瞬間傳é€" name="teleport_btn" tool_tip="瞬間傳é€åˆ°æ‰€é¸çš„å€åŸŸ"/>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml b/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml
index 5aad4568bd..3d46e52726 100644
--- a/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml
+++ b/indra/newview/skins/default/xui/zh/sidepanel_task_info.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="object properties" title="物件檔案">
<panel.string name="text deed continued">
- Deed
+ 讓渡
</panel.string>
<panel.string name="text deed">
- Deed
+ 讓渡
</panel.string>
<panel.string name="text modify info 1">
ä½ å¯ä»¥ä¿®æ”¹é€™å€‹ç‰©ä»¶
@@ -56,7 +56,7 @@
</text>
<button name="button set group" tool_tip="é¸æ“‡ä¸€å€‹ç¾¤çµ„以分享這個物件的權é™"/>
<name_box initial_value="載入中..." name="Group Name Proxy"/>
- <button label="Deed" label_selected="Deed" name="button deed" tool_tip="Deeding gives this item away with next owner permissions. Group shared objects can be deeded by a group officer."/>
+ <button label="讓渡" label_selected="讓渡" name="button deed" tool_tip="Deeding gives this item away with next owner permissions. Group shared objects can be deeded by a group officer."/>
<text name="label click action">
點擊以:
</text>
@@ -85,16 +85,16 @@
</text>
<check_box label="修改" name="checkbox next owner can modify"/>
<check_box label="覆製" name="checkbox next owner can copy"/>
- <check_box label="轉移" name="checkbox next owner can transfer" tool_tip="Next owner can give away or resell this object"/>
+ <check_box label="轉移" name="checkbox next owner can transfer" tool_tip="下一個æ“有者å¯ä»¥é€å‡ºæˆ–轉售這個物件"/>
</panel>
<check_box label="出售" name="checkbox for sale"/>
<combo_box name="sale type">
- <combo_box.item label="Copy" name="Copy"/>
- <combo_box.item label="Contents" name="Contents"/>
- <combo_box.item label="Original" name="Original"/>
+ <combo_box.item label="副本" name="Copy"/>
+ <combo_box.item label="內容" name="Contents"/>
+ <combo_box.item label="原件" name="Original"/>
</combo_box>
<spinner label="價格: L$" name="Edit Cost"/>
- <check_box label="顯示在æœå°‹ä¸­" name="search_check" tool_tip="Let people see this object in search results"/>
+ <check_box label="顯示在æœå°‹ä¸­" name="search_check" tool_tip="讓其他人å¯ä»¥åœ¨æœå°‹çµæžœä¸­å¯Ÿçœ‹åˆ°æ­¤ç‰©ä»¶"/>
<text name="B:">
B:
</text>
diff --git a/indra/newview/skins/default/xui/zh/strings.xml b/indra/newview/skins/default/xui/zh/strings.xml
index 0949e61fa1..6dbe44d32e 100644
--- a/indra/newview/skins/default/xui/zh/strings.xml
+++ b/indra/newview/skins/default/xui/zh/strings.xml
@@ -1042,10 +1042,10 @@
按下 ESC éµå›žå¾©åˆ°ä¸–界的視角
</string>
<string name="InventoryNoMatchingItems">
- Didn&apos;t find what you&apos;re looking for? Try [secondlife:///app/search/all/[SEARCH_TERM] Search].
+ 沒有發ç¾ä½ æƒ³è¦æ‰¾çš„嗎?試試 [secondlife:///app/search/all/[SEARCH_TERM] æœå°‹]。
</string>
<string name="PlacesNoMatchingItems">
- Didn&apos;t find what you&apos;re looking for? Try [secondlife:///app/search/places/[SEARCH_TERM] Search].
+ 沒有發ç¾ä½ æƒ³è¦æ‰¾çš„嗎?試試 [secondlife:///app/search/places/[SEARCH_TERM] æœå°‹]。
</string>
<string name="FavoritesNoMatchingItems">
Drag a landmark here to add it to your favorites.
@@ -1190,25 +1190,25 @@
Buy for L$
</string>
<string name="Stone">
- Stone
+ 石頭
</string>
<string name="Metal">
- Metal
+ 金屬
</string>
<string name="Glass">
- Glass
+ 玻璃
</string>
<string name="Wood">
- Wood
+ 木頭
</string>
<string name="Flesh">
- Flesh
+ 肌肉
</string>
<string name="Plastic">
- Plastic
+ 塑膠
</string>
<string name="Rubber">
- Rubber
+ 橡膠
</string>
<string name="Light">
Light
@@ -1385,7 +1385,7 @@
Charter Member
</string>
<string name="AcctTypeEmployee">
- Linden Lab Employee
+ 林登實驗室員工
</string>
<string name="PaymentInfoUsed">
Payment Info Used
@@ -1433,7 +1433,7 @@
伺æœå™¨ä¸Šæœªç™¼ç¾è…³æœ¬ã€‚
</string>
<string name="CompileQueueProblemDownloading">
- Problem downloading
+ å•é¡Œä¸‹è¼‰ä¸­
</string>
<string name="CompileQueueInsufficientPermDownload">
Insufficient permissions to download a script.
@@ -1491,7 +1491,7 @@
(未知)
</string>
<string name="SummaryForTheWeek" value="Summary for this week, beginning on"/>
- <string name="NextStipendDay" value="The next stipend day is"/>
+ <string name="NextStipendDay" value="下一個發薪日為"/>
<string name="GroupIndividualShare" value="Group Individual Share"/>
<string name="GroupColumn" value="群組"/>
<string name="Balance">
@@ -1507,7 +1507,7 @@
Total
</string>
<string name="NoGroupDataFound">
- No group data found for group
+ 無群組資料發ç¾
</string>
<string name="IMParentEstate">
parent estate
@@ -1540,13 +1540,13 @@
地段腳本記憶體
</string>
<string name="ScriptLimitsParcelsOwned">
- Parcels Listed: [PARCELS]
+ 地段清單:[PARCELS]
</string>
<string name="ScriptLimitsMemoryUsed">
- Memory used: [COUNT] kb out of [MAX] kb; [AVAILABLE] kb available
+ 計憶體用é‡ï¼šä½¿ç”¨ [MAX] kb 中的 [COUNT] kb ;剩餘 [AVAILABLE] kb å¯ç”¨
</string>
<string name="ScriptLimitsMemoryUsedSimple">
- Memory used: [COUNT] kb
+ 記憶體用é‡ï¼š[COUNT] kb
</string>
<string name="ScriptLimitsParcelScriptURLs">
地段腳本 URLs
@@ -1573,7 +1573,7 @@
You do not have permission to examine this parcel
</string>
<string name="SITTING_ON">
- Sitting On
+ å在
</string>
<string name="ATTACH_CHEST">
胸部
@@ -1759,7 +1759,7 @@
é è¦½
</string>
<string name="MultiPropertiesTitle">
- Properties
+ 屬性
</string>
<string name="InvOfferAnObjectNamed">
An object named
@@ -1889,40 +1889,40 @@
PDT
</string>
<string name="Direction_Forward">
- Forward
+ å‘å‰
</string>
<string name="Direction_Left">
- Left
+ å‘å·¦
</string>
<string name="Direction_Right">
- Right
+ å‘å³
</string>
<string name="Direction_Back">
- Back
+ å‘後
</string>
<string name="Direction_North">
- North
+ 北
</string>
<string name="Direction_South">
- South
+ å—
</string>
<string name="Direction_West">
- West
+ 西
</string>
<string name="Direction_East">
- East
+ æ±
</string>
<string name="Direction_Up">
- Up
+ å‘上
</string>
<string name="Direction_Down">
- Down
+ å‘下
</string>
<string name="Any Category">
任何類別
</string>
<string name="Shopping">
- Shopping
+ 採購
</string>
<string name="Land Rental">
Land Rental
@@ -1958,28 +1958,28 @@
完全æˆäºº
</string>
<string name="Arts&amp;Culture">
- Arts &amp; Culture
+ è—術與文化
</string>
<string name="Business">
- Business
+ 商業
</string>
<string name="Educational">
- Educational
+ 教育
</string>
<string name="Gaming">
- Gaming
+ éŠæˆ²
</string>
<string name="Hangout">
èšæœƒæ‰€
</string>
<string name="Newcomer Friendly">
- Newcomer Friendly
+ 新手å‹å–„
</string>
<string name="Parks&amp;Nature">
- Parks &amp; Nature
+ 公園與自然
</string>
<string name="Residential">
- Residential
+ ä½å®…
</string>
<string name="Stage">
Stage
@@ -2024,36 +2024,36 @@
---
</string>
<string name="Multiple Media">
- Multiple Media
+ 多媒體
</string>
<string name="Play Media">
- Play/Pause Media
+ 播放ï¼æš«åœ 媒體
</string>
<string name="MBCmdLineError">
- An error was found parsing the command line.
-Please see: http://wiki.secondlife.com/wiki/Client_parameters
-Error:
+ 解æžå‘½ä»¤åˆ—時發ç¾éŒ¯èª¤ã€‚
+è«‹åƒé–±ï¼š http://wiki.secondlife.com/wiki/Client_parameters
+錯誤:
</string>
<string name="MBCmdLineUsg">
- [APP_NAME] Command line usage:
+ [APP_NAME] 命令列用法:
</string>
<string name="MBUnableToAccessFile">
- [APP_NAME] is unable to access a file that it needs.
+ [APP_NAME] 無法存å–它所需è¦çš„檔案。
This can be because you somehow have multiple copies running, or your system incorrectly thinks a file is open.
If this message persists, restart your computer and try again.
If it continues to persist, you may need to completely uninstall [APP_NAME] and reinstall it.
</string>
<string name="MBFatalError">
- Fatal Error
+ 致命錯誤
</string>
<string name="MBRequiresAltiVec">
[APP_NAME] requires a processor with AltiVec (G4 or later).
</string>
<string name="MBAlreadyRunning">
- [APP_NAME] is already running.
-Check your task bar for a minimized copy of the program.
-If this message persists, restart your computer.
+ [APP_NAME] 已經在執行中。
+請檢查你的工作列裡是å¦æœ‰å…¶ä»–最å°åŒ–的相åŒç¨‹å¼ã€‚
+如果這個訊æ¯æŒçºŒå‡ºç¾ï¼Œè«‹é‡æ–°å•Ÿå‹•ä½ çš„電腦。
</string>
<string name="MBFrozenCrashed">
[APP_NAME] appears to have frozen or crashed on the previous run.
@@ -2082,8 +2082,8 @@ Please download the latest version from www.secondlife.com.
錯誤
</string>
<string name="MBFullScreenErr">
- Unable to run fullscreen at [WIDTH] x [HEIGHT].
-Running in window.
+ 無法執行全螢幕於 [WIDTH] x [HEIGHT].
+執行於視窗中。
</string>
<string name="MBDestroyWinFailed">
Shutdown Error while destroying window (DestroyWindow() failed)
@@ -2111,7 +2111,7 @@ Also be sure your monitor is set to True Color (32-bit) in Control Panels &gt; D
If you continue to receive this message, contact the [SUPPORT_SITE].
</string>
<string name="MBPixelFmtSetErr">
- Can&apos;t set pixel format
+ 無法設定åƒç´ æ ¼å¼
</string>
<string name="MBGLContextErr">
Can&apos;t create GL rendering context
@@ -2920,7 +2920,7 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
Middle Part
</string>
<string name="More">
- More
+ 更多
</string>
<string name="More Blush">
More Blush
@@ -3559,7 +3559,7 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
購買這塊土地
</string>
<string name="LocationCtrlVoiceTooltip">
- Voice not available here
+ 此地並ä¸å…許語音
</string>
<string name="LocationCtrlFlyTooltip">
ä¸å…許飛行
@@ -3568,13 +3568,13 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
ç¦æ­¢æŽ¨æ’ž
</string>
<string name="LocationCtrlBuildTooltip">
- Building/dropping objects not allowed
+ 建造ï¼ä¸Ÿæ£„ 物件ä¸è¢«å…許
</string>
<string name="LocationCtrlScriptsTooltip">
- Scripts not allowed
+ 腳本ä¸è¢«å…許
</string>
<string name="LocationCtrlDamageTooltip">
- Health
+ å¥åº·
</string>
<string name="LocationCtrlAdultIconTooltip">
完全æˆäººåœ°å€
@@ -3628,7 +3628,7 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
[NAME] 正在輸入...
</string>
<string name="Unnamed">
- (Unnamed)
+ (未命å)
</string>
<string name="IM_moderated_chat_label">
(Moderated: Voices off by default)
@@ -3670,10 +3670,10 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
Connected, click Leave Call to hang up
</string>
<string name="hang_up-im">
- Left voice call
+ 離開語音通話
</string>
<string name="answering-im">
- Connecting...
+ è¯æŽ¥ä¸­...
</string>
<string name="conference-title">
Ad-hoc Conference
@@ -3715,10 +3715,10 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
此會話ä¸å†å­˜åœ¨
</string>
<string name="no_ability_error">
- You do not have that ability.
+ 你並ä¸å…·æœ‰é€™å€‹èƒ½åŠ›ã€‚
</string>
<string name="no_ability">
- You do not have that ability.
+ 你並ä¸å…·æœ‰é€™å€‹èƒ½åŠ›ã€‚
</string>
<string name="not_a_mod_error">
You are not a session moderator.
@@ -3903,7 +3903,7 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
內容
</string>
<string name="Gesture">
- Gesture
+ 姿勢
</string>
<string name="Male Gestures">
男性姿勢
@@ -4048,7 +4048,7 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
US$ [AMOUNT]
</string>
<string name="Membership">
- Membership
+ æˆå“¡è³‡æ ¼
</string>
<string name="Roles">
角色
@@ -4057,13 +4057,13 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
Group Identity
</string>
<string name="Parcel Management">
- Parcel Management
+ 地段管ç†
</string>
<string name="Parcel Identity">
Parcel Identity
</string>
<string name="Parcel Settings">
- Parcel Settings
+ 地段設定
</string>
<string name="Parcel Powers">
Parcel Powers
@@ -4075,10 +4075,10 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
Parcel Content
</string>
<string name="Object Management">
- Object Management
+ 物件管ç†
</string>
<string name="Accounting">
- Accounting
+ 會計
</string>
<string name="Notices">
通知
@@ -4087,16 +4087,16 @@ If you continue to receive this message, contact the [SUPPORT_SITE].
èŠå¤©
</string>
<string name="DeleteItems">
- Delete selected items?
+ 刪除所é¸å–的物å“?
</string>
<string name="DeleteItem">
- Delete selected item?
+ 刪除所é¸å–的物å“?
</string>
<string name="EmptyOutfitText">
沒有任何物å“在這個è£æ‰®å…§
</string>
<string name="ExternalEditorNotSet">
- Select an editor using the ExternalEditor setting.
+ é¸æ“‡ä¸€å€‹ç·¨è¼¯å™¨ä½¿ç”¨ ExternalEditor 設定。
</string>
<string name="ExternalEditorNotFound">
Cannot find the external editor you specified.
@@ -4107,7 +4107,7 @@ Try enclosing path to the editor with double quotes.
Error parsing the external editor command.
</string>
<string name="ExternalEditorFailedToRun">
- External editor failed to run.
+ 執行外部編輯器失敗。
</string>
<string name="Esc">
Esc
diff --git a/indra/newview/skins/minimal/xui/de/notifications.xml b/indra/newview/skins/minimal/xui/de/notifications.xml
index 9abf8cdbb9..195d5105c5 100644
--- a/indra/newview/skins/minimal/xui/de/notifications.xml
+++ b/indra/newview/skins/minimal/xui/de/notifications.xml
@@ -9,7 +9,7 @@
</form>
</notification>
<notification name="ObjectGiveItem">
- Ein Objekt namens &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, das [NAME_SLURL] gehört, bietet Ihnen &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt; an. Zur Verwendung dieses Artikels müssen Sie in den erweiterten Modus umschalten, wo Sie den Artikel in Ihrem Inventar finden werden. Um in den erweiterten Modus umzuschalten, beenden Sie die Anwendung, starten Sie sie neu und ändern Sie die Moduseinstellung auf dem Anmeldebildschirm.
+ Ein Objekt namens &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, das [NAME_SLURL] gehört, bietet Ihnen &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt; an. Zur Verwendung dieses Artikels müssen Sie in den erweiterten Modus umschalten, wo Sie den Artikel in Ihrem Inventar finden werden. Um in den erweiterten Modus zu wechseln, beenden Sie die Anwendung, starten Sie sie neu und ändern Sie die Moduseinstellung auf dem Anmeldebildschirm.
<form name="form">
<button name="Keep" text="Artikel behalten"/>
<button name="Discard" text="Artikel ablehnen"/>
diff --git a/indra/newview/skins/minimal/xui/de/panel_status_bar.xml b/indra/newview/skins/minimal/xui/de/panel_status_bar.xml
index 04ed58f944..2f8dc938c5 100644
--- a/indra/newview/skins/minimal/xui/de/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/de/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Sonntag:Montag:Dienstag:Mittwoch:Donnerstag:Freitag:Samstag
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Januar:Februar:März:April:Mai:Juni:Juli:August:September:Oktober:November:Dezember
- </panel.string>
<panel.string name="packet_loss_tooltip">
Paketverlust
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
[AMT] L$
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="Klicken, um L$-Guthaben zu aktualisieren" value="20 L$"/>
- <button label="L$ kaufen" name="buyL" tool_tip="Hier klicken, um mehr L$ zu kaufen"/>
- </panel>
- <text name="TimeText" tool_tip="Aktuelle Zeit (Pazifik)">
- 24:00 H PST
- </text>
+ <combo_box name="mode_combo" tool_tip="Wählen Sie den gewünschten Modus aus. Basismodus: Second Life schnell und einfach erkunden und chatten. Erweiterter Modus: Zugriff auf zusätzliche Funktionen.">
+ <combo_box.item label="Basismodus" name="Basic"/>
+ <combo_box.item label="Erweiterter Modus" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="Alle Medien starten/stoppen (Musik, Video, Webseiten)"/>
<button name="volume_btn" tool_tip="Steuerung der Gesamtlautstärke"/>
</panel>
diff --git a/indra/newview/skins/minimal/xui/es/panel_status_bar.xml b/indra/newview/skins/minimal/xui/es/panel_status_bar.xml
index ab76d3f994..f3db35e8ec 100644
--- a/indra/newview/skins/minimal/xui/es/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/es/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domingo:Lunes:Martes:Miércoles:Jueves:Viernes:Sábado
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Enero:Febrero:Marzo:Abril:Mayo:Junio:Julio:Agosto:Septiembre:Octubre:Noviembre:Diciembre
- </panel.string>
<panel.string name="packet_loss_tooltip">
Pérdida de paquetes
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
[AMT] L$
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="Haz clic para actualizar tu saldo en L$" value="20 L$"/>
- <button label="COMPRAR L$" name="buyL" tool_tip="Pulsa para comprar más L$"/>
- </panel>
- <text name="TimeText" tool_tip="Hora actual (Pacífico)">
- 24:00 AM PST
- </text>
+ <combo_box name="mode_combo" tool_tip="Selecciona el modo. Elige Básico para una exploración rápida y fácil y para chatear. Elige Avanzado para tener acceso a más funciones.">
+ <combo_box.item label="Modo Básico" name="Basic"/>
+ <combo_box.item label="Modo Avanzado" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="Iniciar/Parar todos los media (música, vídeo, páginas web)"/>
<button name="volume_btn" tool_tip="Control general del volumen"/>
</panel>
diff --git a/indra/newview/skins/minimal/xui/fr/panel_status_bar.xml b/indra/newview/skins/minimal/xui/fr/panel_status_bar.xml
index 69aec99e1d..9e814ee7ab 100644
--- a/indra/newview/skins/minimal/xui/fr/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/fr/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Sunday:Monday:Tuesday:Wednesday:Thursday:Friday:Saturday
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- January:February:March:April:May:June:July:August:September:October:November:December
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perte de paquets
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
[AMT] L$
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="Cliquer sur ce bouton pour actualiser votre solde en L$." value="20 L$"/>
- <button label="ACHETER L$" name="buyL" tool_tip="Cliquer pour acheter plus de L$"/>
- </panel>
- <text name="TimeText" tool_tip="Heure actuelle (Pacifique)">
- 00h00 PST
- </text>
+ <combo_box name="mode_combo" tool_tip="Sélectionnez un mode. Pour une exploration facile et rapide avec chat, choisissez Basique. Pour accéder à plus de fonctionnalités, choisissez Avancé.">
+ <combo_box.item label="Mode basique" name="Basic"/>
+ <combo_box.item label="Mode avancé" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="Arrêter tous les médias (musique, vidéo, pages web)"/>
<button name="volume_btn" tool_tip="Contrôle du volume global"/>
</panel>
diff --git a/indra/newview/skins/minimal/xui/it/notifications.xml b/indra/newview/skins/minimal/xui/it/notifications.xml
index 998e38ff5a..cf24d6cbf5 100644
--- a/indra/newview/skins/minimal/xui/it/notifications.xml
+++ b/indra/newview/skins/minimal/xui/it/notifications.xml
@@ -2418,7 +2418,7 @@ Riprova tra qualche istante.
Non è stato trovato nessun territorio valido.
</notification>
<notification name="ObjectGiveItem">
- Un oggetto denominato &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; di proprietà di &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt; ti ha offerto [ITEM_SLURL]: Per usare questo oggetto è necessario passare alla modalità Avanzata e cercarlo nell&apos;Inventario. Per passare alla modalità Avanzata, esci e riavvia l&apos;applicazione e cambia le impostazioni della modalità nella schermata di accesso.
+ Un oggetto denominato &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt; di proprietà di [NAME_SLURL] ti ha offerto &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;. Per usare questo oggetto è necessario passare alla modalità Avanzata e cercarlo nell&apos;Inventario. Per passare alla modalità Avanzata, esci e riavvia l&apos;applicazione e cambia le impostazioni della modalità nella schermata di accesso.
<form name="form">
<button name="Keep" text="Mantieni oggetto"/>
<button name="Discard" text="Rifiuta oggetto"/>
diff --git a/indra/newview/skins/minimal/xui/it/panel_status_bar.xml b/indra/newview/skins/minimal/xui/it/panel_status_bar.xml
index 4353eb9d50..cde495ba97 100644
--- a/indra/newview/skins/minimal/xui/it/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/it/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domenica:Lunedì:Martedì:Mercoledì:Giovedì:Venerdì:Sabato
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Gennaio:Febbraio:Marzo:Aprile:Maggio:Giugno:Luglio:Agosto:Settembre:Ottobre:Novembre:Dicembre
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perdita di pacchetti
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
L$ [AMT]
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="Clicca per aggiornare il tuo saldo in L$" value="L$ 20"/>
- <button label="ACQUISTA L$" name="buyL" tool_tip="Clicca per acquistare più L$"/>
- </panel>
- <text name="TimeText" tool_tip="Orario attuale (Pacifico)">
- 24:00, ora del Pacifico
- </text>
+ <combo_box name="mode_combo" tool_tip="Seleziona la modalità. Seleziona Di base per esplorare facilmente e rapidamente e per la chat. Seleziona Avanzata per accedere ad altre funzionalità.">
+ <combo_box.item label="Modalità di base" name="Basic"/>
+ <combo_box.item label="Modalità Avanzata" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="Attiva/ferma tutti i media (musica, video, pagine Web)"/>
<button name="volume_btn" tool_tip="Regolazione del volume globale"/>
</panel>
diff --git a/indra/newview/skins/minimal/xui/ja/panel_status_bar.xml b/indra/newview/skins/minimal/xui/ja/panel_status_bar.xml
index 163064484b..7d1298c6c0 100644
--- a/indra/newview/skins/minimal/xui/ja/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/ja/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- 日曜日:月曜日:ç«æ›œæ—¥:水曜日:木曜日:金曜日:土曜日
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- 1月:2月:3月:4月:5月:6月:7月:8月:9月:10月:11月:12月
- </panel.string>
<panel.string name="packet_loss_tooltip">
パケットæ失
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
L$ [AMT]
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="クリックã—㦠L$ 残高を更新" value="L$20"/>
- <button label="L$ ã®è³¼å…¥" name="buyL" tool_tip="クリックã—㦠L$ を購入ã—ã¾ã™"/>
- </panel>
- <text name="TimeText" tool_tip="ç¾åœ¨æ™‚刻(太平洋)">
- 24:00 AM PST
- </text>
+ <combo_box name="mode_combo" tool_tip="モードをé¸æŠžã—ã¾ã™ã€‚ベーシックモードã§ã¯æŽ¢ç´¢ã‚„ãƒãƒ£ãƒƒãƒˆã‚’ã™ã°ã‚„ãç°¡å˜ã«å®Ÿè¡Œã§ãã€ã‚¢ãƒ‰ãƒãƒ³ã‚¹ãƒ¢ãƒ¼ãƒ‰ã§ã¯ã€ã‚ˆã‚Šå¤šãã®æ©Ÿèƒ½ãŒåˆ©ç”¨ã§ãã¾ã™ã€‚">
+ <combo_box.item label="ベーシックモード" name="Basic"/>
+ <combo_box.item label="アドãƒãƒ³ã‚¹ãƒ¢ãƒ¼ãƒ‰" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="ã™ã¹ã¦ã®ãƒ¡ãƒ‡ã‚£ã‚¢ã‚’開始・åœæ­¢ï¼ˆéŸ³æ¥½ã€ãƒ“デオã€Web ページ)"/>
<button name="volume_btn" tool_tip="グローãƒãƒ«éŸ³é‡è¨­å®š"/>
</panel>
diff --git a/indra/newview/skins/minimal/xui/pt/notifications.xml b/indra/newview/skins/minimal/xui/pt/notifications.xml
index 9e5ff6fe60..69c4cb3b3e 100644
--- a/indra/newview/skins/minimal/xui/pt/notifications.xml
+++ b/indra/newview/skins/minimal/xui/pt/notifications.xml
@@ -9,7 +9,7 @@
</form>
</notification>
<notification name="ObjectGiveItem">
- Um objeto chamado &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, de [NAME_SLURL], está lhe oferecendo &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt;. Esta ação requer o modo Avançado. Passe para o modo Avançado e você verá o item em seu Inventário. Para passar para o modo Avançado, feche e reinicialize esse aplicativo e mude o modo (indicado na tela de login).
+ Um objeto chamado &lt;nolink&gt;[OBJECTFROMNAME]&lt;/nolink&gt;, de [NAME_SLURL], está oferecendo &lt;nolink&gt;[ITEM_SLURL]&lt;/nolink&gt; a você. Esta ação requer o modo Avançado. Passe para o modo Avançado e você verá o item em seu Inventário. Para passar para o modo Avançado, feche e reinicialize esse aplicativo e mude o modo (indicado na tela de login).
<form name="form">
<button name="Keep" text="Guardar item"/>
<button name="Discard" text="Recusar item"/>
diff --git a/indra/newview/skins/minimal/xui/pt/panel_status_bar.xml b/indra/newview/skins/minimal/xui/pt/panel_status_bar.xml
index f7890ae57d..db564d2aaa 100644
--- a/indra/newview/skins/minimal/xui/pt/panel_status_bar.xml
+++ b/indra/newview/skins/minimal/xui/pt/panel_status_bar.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<panel name="status">
- <panel.string name="StatBarDaysOfWeek">
- Domingo:Segunda-feira:Terça-feira:Quarta-feira:Quinta-feira:Sexta-feira:Sábado
- </panel.string>
- <panel.string name="StatBarMonthsOfYear">
- Janeiro:Fevereiro:Março:Abril:Maio:Junho:Julho:Agosto:Setembro:Outubro:Novembro:Dezembro
- </panel.string>
<panel.string name="packet_loss_tooltip">
Perda de pacote
</panel.string>
@@ -21,13 +15,10 @@
<panel.string name="buycurrencylabel">
L$ [AMT]
</panel.string>
- <panel name="balance_bg">
- <text name="balance" tool_tip="Atualizar saldo de L$" value="L$20"/>
- <button label="Comprar L$" name="buyL" tool_tip="Comprar mais L$"/>
- </panel>
- <text name="TimeText" tool_tip="Hora atual (Pacífico)">
- 24:00 AM PST
- </text>
+ <combo_box name="mode_combo" tool_tip="Selecione o modo. O modo Básico é mais rápido e ideal para explorar e conversar. Use o modo Avançado para acessar mais recursos.">
+ <combo_box.item label="Modo básico" name="Basic"/>
+ <combo_box.item label="Modo avançado" name="Advanced"/>
+ </combo_box>
<button name="media_toggle_btn" tool_tip="Tocar/Pausar todas mídias (música, vídeo, páginas web)"/>
<button name="volume_btn" tool_tip="Volume geral"/>
</panel>
diff --git a/indra/newview/tests/gpus_results.txt b/indra/newview/tests/gpus_results.txt
index 7e9a064921..68e2e688cb 100644
--- a/indra/newview/tests/gpus_results.txt
+++ b/indra/newview/tests/gpus_results.txt
@@ -1,6 +1,6 @@
GPU String Supported? Class Recognizer
------------------------------------------------------------------------------------------------------ ----------- ----- ------------------------------------
-ATI UNRECOGNIZED
+ATI NO MATCH
ATI 3D-Analyze unsupported 0 ATI 3D-Analyze
ATI ASUS A9xxx supported 1 ATI ASUS A9xxx
ATI ASUS AH24xx supported 1 ATI ASUS AH24xx
@@ -25,8 +25,8 @@ ATI All-in-Wonder X1800
ATI All-in-Wonder X1900 supported 3 ATI All-in-Wonder X1900
ATI All-in-Wonder X600 supported 1 ATI All-in-Wonder X600
ATI All-in-Wonder X800 supported 2 ATI All-in-Wonder X800
-ATI Diamond X1xxx supported 0 ATI Radeon X1xxx
-ATI Display Adapter UNRECOGNIZED
+ATI Diamond X1xxx supported 1 ATI Radeon X1xxx
+ATI Display Adapter supported 0 ATI Display Adapter
ATI FireGL supported 0 ATI FireGL
ATI FireGL 5200 supported 0 ATI FireGL
ATI FireGL 5xxx supported 0 ATI FireGL
@@ -40,7 +40,7 @@ ATI M56
ATI M71 supported 1 ATI M71
ATI M72 supported 1 ATI M72
ATI M76 supported 3 ATI M76
-ATI Mobility Radeon supported 0 ATI Mobility Radeon
+ATI Mobility Radeon supported 0 ATI Radeon
ATI Mobility Radeon 7xxx supported 0 ATI Mobility Radeon 7xxx
ATI Mobility Radeon 9600 supported 0 ATI Mobility Radeon 9600
ATI Mobility Radeon 9700 supported 1 ATI Mobility Radeon 9700
@@ -57,14 +57,14 @@ ATI Mobility Radeon HD 4300
ATI Mobility Radeon HD 4500 supported 3 ATI Mobility Radeon HD 4500
ATI Mobility Radeon HD 4600 supported 3 ATI Mobility Radeon HD 4600
ATI Mobility Radeon HD 4800 supported 3 ATI Mobility Radeon HD 4800
-ATI Mobility Radeon HD 5400 supported 2 ATI Mobility Radeon HD 5400
-ATI Mobility Radeon HD 5600 supported 2 ATI Mobility Radeon HD 5600
-ATI Mobility Radeon X1xxx supported 0 ATI Radeon X1xxx
-ATI Mobility Radeon X2xxx supported 0 ATI Mobility Radeon X2xxx
-ATI Mobility Radeon X3xx supported 1 ATI Mobility Radeon X3xx
-ATI Mobility Radeon X6xx supported 1 ATI Mobility Radeon X6xx
-ATI Mobility Radeon X7xx supported 1 ATI Mobility Radeon X7xx
-ATI Mobility Radeon Xxxx supported 0 ATI Mobility Radeon Xxxx
+ATI Mobility Radeon HD 5400 supported 3 ATI Mobility Radeon HD 5400
+ATI Mobility Radeon HD 5600 supported 3 ATI Mobility Radeon HD 5600
+ATI Mobility Radeon X1xxx supported 1 ATI Radeon X1xxx
+ATI Mobility Radeon X2xxx supported 1 ATI Radeon X2xxx
+ATI Mobility Radeon X3xx supported 0 ATI Radeon X300
+ATI Mobility Radeon X6xx supported 1 ATI Radeon X600
+ATI Mobility Radeon X7xx supported 1 ATI Radeon X700
+ATI Mobility Radeon Xxxx supported 0 ATI Radeon
ATI RV380 supported 0 ATI RV380
ATI RV530 supported 1 ATI RV530
ATI Radeon 2100 supported 0 ATI Radeon 2100
@@ -86,7 +86,7 @@ ATI Radeon HD 2600
ATI Radeon HD 2900 supported 3 ATI Radeon HD 2900
ATI Radeon HD 3000 supported 0 ATI Radeon HD 3000
ATI Radeon HD 3100 supported 1 ATI Radeon HD 3100
-ATI Radeon HD 3200 supported 0 ATI Radeon HD 3200
+ATI Radeon HD 3200 supported 1 ATI Radeon HD 3200
ATI Radeon HD 3300 supported 1 ATI Radeon HD 3300
ATI Radeon HD 3400 supported 1 ATI Radeon HD 3400
ATI Radeon HD 3600 supported 3 ATI Radeon HD 3600
@@ -103,29 +103,29 @@ ATI Radeon HD 5600
ATI Radeon HD 5700 supported 3 ATI Radeon HD 5700
ATI Radeon HD 5800 supported 3 ATI Radeon HD 5800
ATI Radeon HD 5900 supported 3 ATI Radeon HD 5900
-ATI Radeon HD 6200 supported 2 ATI Radeon HD 6200
-ATI Radeon HD 6300 supported 2 ATI Radeon HD 6300
+ATI Radeon HD 6200 supported 3 ATI Radeon HD 6200
+ATI Radeon HD 6300 supported 3 ATI Radeon HD 6300
ATI Radeon HD 6500 supported 3 ATI Radeon HD 6500
ATI Radeon HD 6800 supported 3 ATI Radeon HD 6800
ATI Radeon HD 6900 supported 3 ATI Radeon HD 6900
-ATI Radeon OpenGL supported 0 ATI Radeon
+ATI Radeon OpenGL unsupported 0 ATI Radeon OpenGL
ATI Radeon RV250 supported 0 ATI Radeon RV250
ATI Radeon RV600 supported 1 ATI Radeon RV600
ATI Radeon RX9550 supported 1 ATI Radeon RX9550
ATI Radeon VE unsupported 0 ATI Radeon VE
-ATI Radeon X1000 supported 0 ATI Radeon X1xxx
-ATI Radeon X1200 supported 0 ATI Radeon X1xxx
-ATI Radeon X1300 supported 0 ATI Radeon X1xxx
-ATI Radeon X13xx supported 0 ATI Radeon X1xxx
-ATI Radeon X1400 supported 0 ATI Radeon X1xxx
-ATI Radeon X1500 supported 0 ATI Radeon X1xxx
-ATI Radeon X1600 supported 0 ATI Radeon X1xxx
-ATI Radeon X16xx supported 0 ATI Radeon X1xxx
-ATI Radeon X1700 supported 0 ATI Radeon X1xxx
-ATI Radeon X1800 supported 0 ATI Radeon X1xxx
-ATI Radeon X1900 supported 0 ATI Radeon X1xxx
-ATI Radeon X19xx supported 0 ATI Radeon X1xxx
-ATI Radeon X1xxx supported 0 ATI Radeon X1xxx
+ATI Radeon X1000 supported 1 ATI Radeon X1xxx
+ATI Radeon X1200 supported 1 ATI Radeon X1xxx
+ATI Radeon X1300 supported 1 ATI Radeon X13xx
+ATI Radeon X13xx supported 1 ATI Radeon X13xx
+ATI Radeon X1400 supported 1 ATI Radeon X1xxx
+ATI Radeon X1500 supported 2 ATI Radeon X15xx
+ATI Radeon X1600 supported 2 ATI Radeon X16xx
+ATI Radeon X16xx supported 2 ATI Radeon X16xx
+ATI Radeon X1700 supported 2 ATI Radeon X17xx
+ATI Radeon X1800 supported 3 ATI Radeon X18xx
+ATI Radeon X1900 supported 3 ATI Radeon X19xx
+ATI Radeon X19xx supported 3 ATI Radeon X19xx
+ATI Radeon X1xxx supported 1 ATI Radeon X1xxx
ATI Radeon X300 supported 0 ATI Radeon X300
ATI Radeon X500 supported 0 ATI Radeon X500
ATI Radeon X600 supported 1 ATI Radeon X600
@@ -138,56 +138,74 @@ ATI Technologies Inc.
ATI Technologies Inc. x86 supported 0 ATI Technologies
ATI Technologies Inc. x86/SSE2 supported 0 ATI Technologies
ATI Technologies Inc. (Vista) ATI Mobility Radeon HD 5730 supported 3 ATI Mobility Radeon HD 5700
-ATI Technologies Inc. 256MB ATI Radeon X1300PRO x86/SSE2 supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. 128MB ATI Radeon X1300 x86/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. 256MB ATI Radeon X1300PRO x86/SSE2 supported 1 ATI Radeon X13xx
ATI Technologies Inc. AMD 760G supported 1 ATI 760G/Radeon 3000
ATI Technologies Inc. AMD 760G (Microsoft WDDM 1.1) supported 1 ATI 760G/Radeon 3000
ATI Technologies Inc. AMD 780L supported 1 ATI 780L/Radeon 3000
ATI Technologies Inc. AMD FirePro 2270 supported 1 ATI FirePro 2000
-ATI Technologies Inc. AMD M860G with ATI Mobility Radeon 4100 supported 0 ATI Mobility Radeon 4100
+ATI Technologies Inc. AMD M860G with ATI Mobility Radeon 4100 supported 1 ATI Mobility Radeon 4100
ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4200 supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4250 supported 2 ATI Mobility Radeon HD 4200
+ATI Technologies Inc. AMD RADEON HD 6350 supported 3 ATI Radeon HD 6300
ATI Technologies Inc. AMD RADEON HD 6450 supported 3 ATI Radeon HD 6400
-ATI Technologies Inc. AMD Radeon HD 6200 series Graphics supported 2 ATI Radeon HD 6200
-ATI Technologies Inc. AMD Radeon HD 6250 Graphics supported 2 ATI Radeon HD 6200
-ATI Technologies Inc. AMD Radeon HD 6300 series Graphics supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6300M Series supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6310 Graphics supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6310M supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6330M supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6350 supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6370M supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. AMD Radeon HD 6400M Series supported 3 ATI Radeon HD 6400
+ATI Technologies Inc. AMD RADEON HD 6670 supported 3 ATI Radeon HD 6600
+ATI Technologies Inc. AMD Radeon 6600M and 6700M Series supported 0 ATI Technologies
+ATI Technologies Inc. AMD Radeon HD 6200 series Graphics supported 3 ATI Radeon HD 6200
+ATI Technologies Inc. AMD Radeon HD 6250 Graphics supported 3 ATI Radeon HD 6200
+ATI Technologies Inc. AMD Radeon HD 6290 Graphics supported 3 ATI Radeon HD 6200
+ATI Technologies Inc. AMD Radeon HD 6300 series Graphics supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6300M Series supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6310 Graphics supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6310M supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6330M supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6350 supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6370M supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. AMD Radeon HD 6400M Series supported 3 ATI Radeon HD 64xx
ATI Technologies Inc. AMD Radeon HD 6450 supported 3 ATI Radeon HD 6400
-ATI Technologies Inc. AMD Radeon HD 6470M supported 3 ATI Radeon HD 6400
-ATI Technologies Inc. AMD Radeon HD 6490M supported 3 ATI Radeon HD 6400
-ATI Technologies Inc. AMD Radeon HD 6500M/5600/5700 Series supported 3 ATI Radeon HD 6500
-ATI Technologies Inc. AMD Radeon HD 6530M supported 3 ATI Radeon HD 6500
-ATI Technologies Inc. AMD Radeon HD 6550M supported 3 ATI Radeon HD 6500
+ATI Technologies Inc. AMD Radeon HD 6470M supported 3 ATI Radeon HD 64xx
+ATI Technologies Inc. AMD Radeon HD 6490M supported 3 ATI Radeon HD 64xx
+ATI Technologies Inc. AMD Radeon HD 6500 Series supported 3 ATI Radeon HD 6500
+ATI Technologies Inc. AMD Radeon HD 6500M Series supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon HD 6500M/5600/5700 Series supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon HD 6530M supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon HD 6550M supported 3 ATI Radeon HD 65xx
ATI Technologies Inc. AMD Radeon HD 6570 supported 3 ATI Radeon HD 6500
-ATI Technologies Inc. AMD Radeon HD 6570M supported 3 ATI Radeon HD 6500
-ATI Technologies Inc. AMD Radeon HD 6570M/5700 Series supported 3 ATI Radeon HD 6500
+ATI Technologies Inc. AMD Radeon HD 6570M supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon HD 6570M/5700 Series supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon HD 6600 Series supported 3 ATI Radeon HD 6600
ATI Technologies Inc. AMD Radeon HD 6600M Series supported 3 ATI Radeon HD 66xx
+ATI Technologies Inc. AMD Radeon HD 6630M supported 3 ATI Radeon HD 66xx
ATI Technologies Inc. AMD Radeon HD 6650M supported 3 ATI Radeon HD 66xx
-ATI Technologies Inc. AMD Radeon HD 6670 supported 3 ATI Radeon HD 66xx
+ATI Technologies Inc. AMD Radeon HD 6670 supported 3 ATI Radeon HD 6600
ATI Technologies Inc. AMD Radeon HD 6700 Series supported 3 ATI Radeon HD 6700
ATI Technologies Inc. AMD Radeon HD 6750 supported 3 ATI Radeon HD 6700
ATI Technologies Inc. AMD Radeon HD 6750M supported 3 ATI Radeon HD 6700
ATI Technologies Inc. AMD Radeon HD 6770 supported 3 ATI Radeon HD 6700
+ATI Technologies Inc. AMD Radeon HD 6770M supported 3 ATI Radeon HD 6700
ATI Technologies Inc. AMD Radeon HD 6800 Series supported 3 ATI Radeon HD 6800
+ATI Technologies Inc. AMD Radeon HD 6800M Series supported 3 ATI Radeon HD 6800
+ATI Technologies Inc. AMD Radeon HD 6850 supported 3 ATI Radeon HD 6800
ATI Technologies Inc. AMD Radeon HD 6850M supported 3 ATI Radeon HD 6800
ATI Technologies Inc. AMD Radeon HD 6870 supported 3 ATI Radeon HD 6800
ATI Technologies Inc. AMD Radeon HD 6870M supported 3 ATI Radeon HD 6800
ATI Technologies Inc. AMD Radeon HD 6900 Series supported 3 ATI Radeon HD 6900
+ATI Technologies Inc. AMD Radeon HD 6900M Series supported 3 ATI Radeon HD 6900
ATI Technologies Inc. AMD Radeon HD 6970M supported 3 ATI Radeon HD 6900
ATI Technologies Inc. AMD Radeon HD 6990 supported 3 ATI Radeon HD 6900
-ATI Technologies Inc. AMD Radeon(TM) HD 6470M supported 0 ATI Technologies
+ATI Technologies Inc. AMD Radeon(TM) HD 6470M supported 3 ATI Radeon HD 64xx
+ATI Technologies Inc. AMD Radeon(TM) HD 6480G supported 3 ATI Radeon HD 64xx
+ATI Technologies Inc. AMD Radeon(TM) HD 6520G supported 3 ATI Radeon HD 65xx
+ATI Technologies Inc. AMD Radeon(TM) HD 6620G supported 3 ATI Radeon HD 66xx
+ATI Technologies Inc. AMD Radeon(TM) HD 6630M supported 3 ATI Radeon HD 66xx
ATI Technologies Inc. ASUS 5870 Eyefinity 6 supported 0 ATI Technologies
+ATI Technologies Inc. ASUS A9550 Series supported 1 ATI ASUS A9xxx
ATI Technologies Inc. ASUS AH2600 Series supported 3 ATI ASUS AH26xx
ATI Technologies Inc. ASUS AH3450 Series supported 1 ATI ASUS AH34xx
ATI Technologies Inc. ASUS AH3650 Series supported 3 ATI ASUS AH36xx
ATI Technologies Inc. ASUS AH4650 Series supported 3 ATI ASUS AH46xx
-ATI Technologies Inc. ASUS ARES supported 0 ATI Technologies
-ATI Technologies Inc. ASUS EAH2900 Series supported 0 ATI Technologies
+ATI Technologies Inc. ASUS ARES supported 3 ATI ASUS ARES
+ATI Technologies Inc. ASUS EAH2900 Series supported 3 ATI ASUS EAH29xx
ATI Technologies Inc. ASUS EAH3450 Series supported 1 ATI ASUS AH34xx
ATI Technologies Inc. ASUS EAH3650 Series supported 3 ATI ASUS AH36xx
ATI Technologies Inc. ASUS EAH4350 series supported 1 ATI ASUS EAH43xx
@@ -208,10 +226,13 @@ ATI Technologies Inc. ASUS EAH5830 Series
ATI Technologies Inc. ASUS EAH5850 Series supported 3 ATI ASUS EAH58xx
ATI Technologies Inc. ASUS EAH5870 Series supported 3 ATI ASUS EAH58xx
ATI Technologies Inc. ASUS EAH5970 Series supported 0 ATI Technologies
-ATI Technologies Inc. ASUS EAH6850 Series supported 0 ATI Technologies
-ATI Technologies Inc. ASUS EAH6870 Series supported 0 ATI Technologies
-ATI Technologies Inc. ASUS EAH6950 Series supported 0 ATI Technologies
-ATI Technologies Inc. ASUS EAH6970 Series supported 0 ATI Technologies
+ATI Technologies Inc. ASUS EAH6450 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6570 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6670 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6850 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6870 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6950 Series supported 3 ATI ASUS EAH6xxx
+ATI Technologies Inc. ASUS EAH6970 Series supported 3 ATI ASUS EAH6xxx
ATI Technologies Inc. ASUS EAHG4670 series supported 0 ATI Technologies
ATI Technologies Inc. ASUS Extreme AX600 Series supported 0 ATI Technologies
ATI Technologies Inc. ASUS Extreme AX600XT-TD supported 0 ATI Technologies
@@ -232,19 +253,23 @@ ATI Technologies Inc. ATI FirePro V4800
ATI Technologies Inc. ATI FirePro V4800 (FireGL) supported 0 ATI FireGL
ATI Technologies Inc. ATI FirePro V5800 supported 3 ATI FirePro 5000
ATI Technologies Inc. ATI FirePro V7800 supported 3 ATI FirePro 7000
-ATI Technologies Inc. ATI MOBILITY RADEON 9XXX x86/SSE2 supported 0 ATI Mobility Radeon Xxxx
+ATI Technologies Inc. ATI MOBILITY RADEON 9600/9700 Series supported 1 ATI Mobility Radeon 9700
+ATI Technologies Inc. ATI MOBILITY RADEON 9XXX x86/SSE2 supported 0 ATI Technologies
+ATI Technologies Inc. ATI MOBILITY RADEON HD 2300 supported 1 ATI Mobility Radeon HD 2300
ATI Technologies Inc. ATI MOBILITY RADEON HD 3450 supported 2 ATI Mobility Radeon HD 3400
-ATI Technologies Inc. ATI MOBILITY RADEON X1600 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI MOBILITY RADEON X2300 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI MOBILITY RADEON X2300 HD x86/SSE2 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/MMX/3DNow!/SSE2 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/SSE2 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI MOBILITY RADEON X300 supported 1 ATI Mobility Radeon X3xx
-ATI Technologies Inc. ATI MOBILITY RADEON X600 supported 1 ATI Mobility Radeon X6xx
-ATI Technologies Inc. ATI MOBILITY RADEON XPRESS 200 supported 0 ATI Mobility Radeon Xxxx
+ATI Technologies Inc. ATI MOBILITY RADEON HD 3650 supported 3 ATI Mobility Radeon HD 3600
+ATI Technologies Inc. ATI MOBILITY RADEON X1600 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. ATI MOBILITY RADEON X2300 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI MOBILITY RADEON X2300 HD x86/SSE2 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/SSE2 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI MOBILITY RADEON X300 supported 0 ATI Radeon X300
+ATI Technologies Inc. ATI MOBILITY RADEON X600 supported 1 ATI Radeon X600
+ATI Technologies Inc. ATI MOBILITY RADEON X700 supported 1 ATI Radeon X700
+ATI Technologies Inc. ATI MOBILITY RADEON XPRESS 200 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Mobility FireGL V5700 supported 1 ATI FireGL 5xxx
-ATI Technologies Inc. ATI Mobility Radeon 4100 supported 0 ATI Mobility Radeon 4100
-ATI Technologies Inc. ATI Mobility Radeon Graphics supported 0 ATI Mobility Radeon
+ATI Technologies Inc. ATI Mobility Radeon 4100 supported 1 ATI Mobility Radeon 4100
+ATI Technologies Inc. ATI Mobility Radeon Graphics supported 0 ATI Technologies
ATI Technologies Inc. ATI Mobility Radeon HD 2300 supported 1 ATI Mobility Radeon HD 2300
ATI Technologies Inc. ATI Mobility Radeon HD 2400 supported 1 ATI Mobility Radeon HD 2400
ATI Technologies Inc. ATI Mobility Radeon HD 2400 XT supported 1 ATI Mobility Radeon HD 2400
@@ -252,17 +277,20 @@ ATI Technologies Inc. ATI Mobility Radeon HD 2600
ATI Technologies Inc. ATI Mobility Radeon HD 2600 XT supported 3 ATI Mobility Radeon HD 2600
ATI Technologies Inc. ATI Mobility Radeon HD 2700 supported 3 ATI Mobility Radeon HD 2700
ATI Technologies Inc. ATI Mobility Radeon HD 3400 Series supported 2 ATI Mobility Radeon HD 3400
+ATI Technologies Inc. ATI Mobility Radeon HD 3410 supported 2 ATI Mobility Radeon HD 3400
ATI Technologies Inc. ATI Mobility Radeon HD 3430 supported 2 ATI Mobility Radeon HD 3400
ATI Technologies Inc. ATI Mobility Radeon HD 3450 supported 2 ATI Mobility Radeon HD 3400
ATI Technologies Inc. ATI Mobility Radeon HD 3470 supported 2 ATI Mobility Radeon HD 3400
ATI Technologies Inc. ATI Mobility Radeon HD 3470 Hybrid X2 supported 2 ATI Mobility Radeon HD 3400
ATI Technologies Inc. ATI Mobility Radeon HD 3650 supported 3 ATI Mobility Radeon HD 3600
+ATI Technologies Inc. ATI Mobility Radeon HD 3670 supported 3 ATI Mobility Radeon HD 3600
ATI Technologies Inc. ATI Mobility Radeon HD 4200 supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4200 Series supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4225 supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4225 Series supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4250 supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4250 Graphics supported 2 ATI Mobility Radeon HD 4200
+ATI Technologies Inc. ATI Mobility Radeon HD 4250 Series supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4270 supported 2 ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4300 Series supported 2 ATI Mobility Radeon HD 4300
ATI Technologies Inc. ATI Mobility Radeon HD 4300/4500 Series supported 2 ATI Mobility Radeon HD 4300
@@ -283,53 +311,55 @@ ATI Technologies Inc. ATI Mobility Radeon HD 4670
ATI Technologies Inc. ATI Mobility Radeon HD 4830 Series supported 3 ATI Mobility Radeon HD 4800
ATI Technologies Inc. ATI Mobility Radeon HD 4850 supported 3 ATI Mobility Radeon HD 4800
ATI Technologies Inc. ATI Mobility Radeon HD 4870 supported 3 ATI Mobility Radeon HD 4800
-ATI Technologies Inc. ATI Mobility Radeon HD 5000 supported 0 ATI Mobility Radeon
-ATI Technologies Inc. ATI Mobility Radeon HD 5000 Series supported 0 ATI Mobility Radeon
-ATI Technologies Inc. ATI Mobility Radeon HD 5145 supported 2 ATI Mobility Radeon HD 5100
-ATI Technologies Inc. ATI Mobility Radeon HD 5165 supported 2 ATI Mobility Radeon HD 5100
+ATI Technologies Inc. ATI Mobility Radeon HD 5000 supported 0 ATI Technologies
+ATI Technologies Inc. ATI Mobility Radeon HD 5000 Series supported 0 ATI Technologies
+ATI Technologies Inc. ATI Mobility Radeon HD 5145 supported 3 ATI Mobility Radeon HD 5100
+ATI Technologies Inc. ATI Mobility Radeon HD 5165 supported 3 ATI Mobility Radeon HD 5100
ATI Technologies Inc. ATI Mobility Radeon HD 530v supported 1 ATI Mobility Radeon HD 530v
-ATI Technologies Inc. ATI Mobility Radeon HD 5400 Series supported 2 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI Mobility Radeon HD 5400 Series supported 3 ATI Mobility Radeon HD 5400
ATI Technologies Inc. ATI Mobility Radeon HD 540v supported 2 ATI Mobility Radeon HD 540v
-ATI Technologies Inc. ATI Mobility Radeon HD 5430 supported 2 ATI Mobility Radeon HD 5400
-ATI Technologies Inc. ATI Mobility Radeon HD 5450 supported 2 ATI Mobility Radeon HD 5400
-ATI Technologies Inc. ATI Mobility Radeon HD 5450 Series supported 2 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI Mobility Radeon HD 5430 supported 3 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI Mobility Radeon HD 5450 supported 3 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI Mobility Radeon HD 5450 Series supported 3 ATI Mobility Radeon HD 5400
ATI Technologies Inc. ATI Mobility Radeon HD 545v supported 2 ATI Mobility Radeon HD 545v
-ATI Technologies Inc. ATI Mobility Radeon HD 5470 supported 2 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI Mobility Radeon HD 5470 supported 3 ATI Mobility Radeon HD 5400
ATI Technologies Inc. ATI Mobility Radeon HD 550v supported 2 ATI Mobility Radeon HD 550v
-ATI Technologies Inc. ATI Mobility Radeon HD 5600/5700 Series supported 2 ATI Mobility Radeon HD 5600
+ATI Technologies Inc. ATI Mobility Radeon HD 5600/5700 Series supported 3 ATI Mobility Radeon HD 5600
ATI Technologies Inc. ATI Mobility Radeon HD 560v supported 2 ATI Mobility Radeon HD 560v
-ATI Technologies Inc. ATI Mobility Radeon HD 5650 supported 2 ATI Mobility Radeon HD 5600
+ATI Technologies Inc. ATI Mobility Radeon HD 5650 supported 3 ATI Mobility Radeon HD 5600
ATI Technologies Inc. ATI Mobility Radeon HD 5700 Series supported 3 ATI Mobility Radeon HD 5700
ATI Technologies Inc. ATI Mobility Radeon HD 5730 supported 3 ATI Mobility Radeon HD 5700
-ATI Technologies Inc. ATI Mobility Radeon HD 5800 Series supported 0 ATI Mobility Radeon
-ATI Technologies Inc. ATI Mobility Radeon HD 5850 supported 0 ATI Mobility Radeon
-ATI Technologies Inc. ATI Mobility Radeon HD 5870 supported 0 ATI Mobility Radeon
-ATI Technologies Inc. ATI Mobility Radeon HD 6300 series supported 2 ATI Mobility Radeon HD 6300
-ATI Technologies Inc. ATI Mobility Radeon HD 6370 supported 2 ATI Mobility Radeon HD 6300
+ATI Technologies Inc. ATI Mobility Radeon HD 5800 Series supported 3 ATI Radeon HD 5800
+ATI Technologies Inc. ATI Mobility Radeon HD 5830 Series supported 3 ATI Radeon HD 5800
+ATI Technologies Inc. ATI Mobility Radeon HD 5850 supported 3 ATI Radeon HD 5800
+ATI Technologies Inc. ATI Mobility Radeon HD 5870 supported 3 ATI Radeon HD 5800
+ATI Technologies Inc. ATI Mobility Radeon HD 6300 series supported 3 ATI Mobility Radeon HD 6300
+ATI Technologies Inc. ATI Mobility Radeon HD 6370 supported 3 ATI Mobility Radeon HD 6300
ATI Technologies Inc. ATI Mobility Radeon HD 6470M supported 3 ATI Mobility Radeon HD 6400M
ATI Technologies Inc. ATI Mobility Radeon HD 6550 supported 3 ATI Mobility Radeon HD 6500M
ATI Technologies Inc. ATI Mobility Radeon HD 6570 supported 3 ATI Mobility Radeon HD 6500M
-ATI Technologies Inc. ATI Mobility Radeon X1300 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1300 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1300 x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1350 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1350 x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1400 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1400 x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1600 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1600 x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X1700 x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Mobility Radeon X2300 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2300 (Omega 3.8.442) supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2300 x86 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2300 x86/MMX/3DNow!/SSE2 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2300 x86/SSE2 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2500 supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. ATI Mobility Radeon X2500 x86/SSE2 supported 0 ATI Mobility Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X1300 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Mobility Radeon X1300 x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Mobility Radeon X1300 x86/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Mobility Radeon X1350 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Mobility Radeon X1350 x86/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Mobility Radeon X1400 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Mobility Radeon X1400 x86/SSE2 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Mobility Radeon X1600 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. ATI Mobility Radeon X1600 x86/SSE2 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. ATI Mobility Radeon X1700 x86/SSE2 supported 2 ATI Radeon X17xx
+ATI Technologies Inc. ATI Mobility Radeon X2300 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2300 (Omega 3.8.442) supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86/SSE2 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2500 supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. ATI Mobility Radeon X2500 x86/SSE2 supported 1 ATI Radeon X2xxx
ATI Technologies Inc. ATI Mobility Radeon. HD 530v supported 1 ATI Mobility Radeon HD 530v
-ATI Technologies Inc. ATI Mobility Radeon. HD 5470 supported 2 ATI Mobility Radeon HD 5400
-ATI Technologies Inc. ATI RADEON HD 3200 T25XX by CAMILO supported 0 ATI Radeon HD 3200
+ATI Technologies Inc. ATI Mobility Radeon. HD 5470 supported 3 ATI Mobility Radeon HD 5400
+ATI Technologies Inc. ATI RADEON HD 3200 T25XX by CAMILO supported 1 ATI Radeon HD 3200
ATI Technologies Inc. ATI RADEON XPRESS 1100 supported 0 ATI Radeon Xpress
+ATI Technologies Inc. ATI RADEON XPRESS 1100 x86/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI RADEON XPRESS 200 Series supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI RADEON XPRESS 200 Series x86/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI RADEON XPRESS 200M SERIES supported 0 ATI Radeon Xpress
@@ -341,14 +371,15 @@ ATI Technologies Inc. ATI Radeon 3000
ATI Technologies Inc. ATI Radeon 3000 Graphics supported 0 ATI Radeon 3000
ATI Technologies Inc. ATI Radeon 3100 Graphics supported 1 ATI Radeon 3100
ATI Technologies Inc. ATI Radeon 5xxx series supported 3 ATI Radeon 5xxx
-ATI Technologies Inc. ATI Radeon 9550 / X1050 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon 9550 / X1050 Series x86/MMX/3DNow!/SSE supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon 9550 / X1050 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon 9550 / X1050 Series(Microsoft - WDDM) supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon 9600 / X1050 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon 9600/9550/X1050 Series supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon 9550 / X1050 Series supported 0 ATI Radeon 9500
+ATI Technologies Inc. ATI Radeon 9550 / X1050 Series x86/MMX/3DNow!/SSE supported 0 ATI Radeon 9500
+ATI Technologies Inc. ATI Radeon 9550 / X1050 Series x86/SSE2 supported 0 ATI Radeon 9500
+ATI Technologies Inc. ATI Radeon 9550 / X1050 Series(Microsoft - WDDM) supported 0 ATI Radeon 9500
+ATI Technologies Inc. ATI Radeon 9600 / X1050 Series supported 0 ATI Radeon 9600
+ATI Technologies Inc. ATI Radeon 9600/9550/X1050 Series supported 0 ATI Radeon 9600
ATI Technologies Inc. ATI Radeon BA Prototype OpenGL Engine supported 0 ATI Technologies
ATI Technologies Inc. ATI Radeon BB Prototype OpenGL Engine supported 0 ATI Technologies
+ATI Technologies Inc. ATI Radeon Broadway XT Prototype OpenGL Engine supported 0 ATI Technologies
ATI Technologies Inc. ATI Radeon Cedar PRO Prototype OpenGL Engine supported 2 AMD CEDAR (HD 5450)
ATI Technologies Inc. ATI Radeon Cypress PRO Prototype OpenGL Engine supported 3 AMD CYPRESS (HD 5800)
ATI Technologies Inc. ATI Radeon Graphics Processor supported 0 ATI Technologies
@@ -370,7 +401,7 @@ ATI Technologies Inc. ATI Radeon HD 2600 Series
ATI Technologies Inc. ATI Radeon HD 2600 XT supported 2 ATI Radeon HD 2600
ATI Technologies Inc. ATI Radeon HD 2900 GT supported 3 ATI Radeon HD 2900
ATI Technologies Inc. ATI Radeon HD 2900 XT supported 3 ATI Radeon HD 2900
-ATI Technologies Inc. ATI Radeon HD 3200 Graphics supported 0 ATI Radeon HD 3200
+ATI Technologies Inc. ATI Radeon HD 3200 Graphics supported 1 ATI Radeon HD 3200
ATI Technologies Inc. ATI Radeon HD 3300 Graphics supported 1 ATI Radeon HD 3300
ATI Technologies Inc. ATI Radeon HD 3400 Series supported 1 ATI Radeon HD 3400
ATI Technologies Inc. ATI Radeon HD 3450 supported 1 ATI Radeon HD 3400
@@ -392,6 +423,7 @@ ATI Technologies Inc. ATI Radeon HD 4250
ATI Technologies Inc. ATI Radeon HD 4250 Graphics supported 1 ATI Radeon HD 4200
ATI Technologies Inc. ATI Radeon HD 4270 supported 1 ATI Radeon HD 4200
ATI Technologies Inc. ATI Radeon HD 4290 supported 1 ATI Radeon HD 4200
+ATI Technologies Inc. ATI Radeon HD 4290 (Engineering Sample) supported 1 ATI Radeon HD 4200
ATI Technologies Inc. ATI Radeon HD 4300 Series supported 1 ATI Radeon HD 4300
ATI Technologies Inc. ATI Radeon HD 4300/4500 Series supported 1 ATI Radeon HD 4300
ATI Technologies Inc. ATI Radeon HD 4350 supported 1 ATI Radeon HD 4300
@@ -418,9 +450,11 @@ ATI Technologies Inc. ATI Radeon HD 4870 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 4870 X2 supported 3 ATI Radeon HD 4800
ATI Technologies Inc. ATI Radeon HD 5400 Series supported 3 ATI Radeon HD 5400
ATI Technologies Inc. ATI Radeon HD 5450 supported 3 ATI Radeon HD 5400
+ATI Technologies Inc. ATI Radeon HD 5470 supported 3 ATI Radeon HD 5400
ATI Technologies Inc. ATI Radeon HD 5500 Series supported 3 ATI Radeon HD 5500
ATI Technologies Inc. ATI Radeon HD 5570 supported 3 ATI Radeon HD 5500
ATI Technologies Inc. ATI Radeon HD 5600 Series supported 3 ATI Radeon HD 5600
+ATI Technologies Inc. ATI Radeon HD 5600/5700 supported 3 ATI Radeon HD 5600
ATI Technologies Inc. ATI Radeon HD 5630 supported 3 ATI Radeon HD 5600
ATI Technologies Inc. ATI Radeon HD 5670 supported 3 ATI Radeon HD 5600
ATI Technologies Inc. ATI Radeon HD 5670 OpenGL Engine supported 3 ATI Radeon HD 5600
@@ -435,13 +469,14 @@ ATI Technologies Inc. ATI Radeon HD 5870
ATI Technologies Inc. ATI Radeon HD 5870 OpenGL Engine supported 3 ATI Radeon HD 5800
ATI Technologies Inc. ATI Radeon HD 5900 Series supported 3 ATI Radeon HD 5900
ATI Technologies Inc. ATI Radeon HD 5970 supported 3 ATI Radeon HD 5900
-ATI Technologies Inc. ATI Radeon HD 6230 supported 2 ATI Radeon HD 6200
-ATI Technologies Inc. ATI Radeon HD 6250 supported 2 ATI Radeon HD 6200
-ATI Technologies Inc. ATI Radeon HD 6350 supported 2 ATI Radeon HD 6300
-ATI Technologies Inc. ATI Radeon HD 6390 supported 2 ATI Radeon HD 6300
+ATI Technologies Inc. ATI Radeon HD 6230 supported 3 ATI Radeon HD 6200
+ATI Technologies Inc. ATI Radeon HD 6250 supported 3 ATI Radeon HD 6200
+ATI Technologies Inc. ATI Radeon HD 6350 supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. ATI Radeon HD 6390 supported 3 ATI Radeon HD 6300
ATI Technologies Inc. ATI Radeon HD 6490M OpenGL Engine supported 3 ATI Radeon HD 6400
ATI Technologies Inc. ATI Radeon HD 6510 supported 3 ATI Radeon HD 6500
ATI Technologies Inc. ATI Radeon HD 6570M supported 3 ATI Radeon HD 6500
+ATI Technologies Inc. ATI Radeon HD 6630M OpenGL Engine supported 3 ATI Radeon HD 6600
ATI Technologies Inc. ATI Radeon HD 6750 supported 3 ATI Radeon HD 6700
ATI Technologies Inc. ATI Radeon HD 6750M OpenGL Engine supported 3 ATI Radeon HD 6700
ATI Technologies Inc. ATI Radeon HD 6770 supported 3 ATI Radeon HD 6700
@@ -459,21 +494,21 @@ ATI Technologies Inc. ATI Radeon RV790 Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Redwood PRO Prototype OpenGL Engine supported 3 AMD REDWOOD (HD 5500/5600)
ATI Technologies Inc. ATI Radeon Redwood XT Prototype OpenGL Engine supported 3 AMD REDWOOD (HD 5500/5600)
ATI Technologies Inc. ATI Radeon Whistler PRO/LP Prototype OpenGL Engine supported 0 ATI Technologies
-ATI Technologies Inc. ATI Radeon X1050 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1050 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1200 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1200 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1200 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1250 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1250 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1270 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1270 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1300/X1550 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1550 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1600 OpenGL Engine supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1900 OpenGL Engine supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X1950 GT supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. ATI Radeon X300/X550/X1050 Series supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1050 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1050 Series supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1200 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1200 Series supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1200 Series x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1250 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1250 x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1270 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1270 x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X1xxx
+ATI Technologies Inc. ATI Radeon X1300/X1550 Series supported 1 ATI Radeon X13xx
+ATI Technologies Inc. ATI Radeon X1550 Series supported 2 ATI Radeon X15xx
+ATI Technologies Inc. ATI Radeon X1600 OpenGL Engine supported 2 ATI Radeon X16xx
+ATI Technologies Inc. ATI Radeon X1900 OpenGL Engine supported 3 ATI Radeon X19xx
+ATI Technologies Inc. ATI Radeon X1950 GT supported 3 ATI Radeon X19xx
+ATI Technologies Inc. ATI Radeon X300/X550/X1050 Series supported 0 ATI Radeon X300
ATI Technologies Inc. ATI Radeon Xpress 1100 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress 1150 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress 1150 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
@@ -482,18 +517,21 @@ ATI Technologies Inc. ATI Radeon Xpress 1200 Series
ATI Technologies Inc. ATI Radeon Xpress 1200 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress 1200 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress 1250 supported 0 ATI Radeon Xpress
+ATI Technologies Inc. ATI Radeon Xpress 1250 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress 1250 x86/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Radeon Xpress Series supported 0 ATI Radeon Xpress
+ATI Technologies Inc. ATI Radeon Xpress Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. ATI Yamaha HD 9000 supported 0 ATI Technologies
ATI Technologies Inc. ATi RS880M supported 1 ATI RS880M
ATI Technologies Inc. Carte graphique VGA standard supported 0 ATI Technologies
-ATI Technologies Inc. Diamond Radeon X1550 Series supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. Diamond Radeon X1550 Series supported 2 ATI Radeon X15xx
ATI Technologies Inc. EG JUNIPER supported 3 AMD JUNIPER (HD 5700)
ATI Technologies Inc. EG PARK supported 3 AMD PARK
ATI Technologies Inc. FireGL V3100 Pentium 4 (SSE2) supported 0 ATI FireGL
ATI Technologies Inc. FireMV 2400 PCI DDR x86 supported 0 ATI FireMV
ATI Technologies Inc. FireMV 2400 PCI DDR x86/SSE2 supported 0 ATI FireMV
-ATI Technologies Inc. GeCube Radeon X1550 supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. GeCube Radeon X1550 supported 2 ATI Radeon X15xx
+ATI Technologies Inc. GeForce 9600 GT x86/SSE2 supported 2 ATI Geforce 9600 GT
ATI Technologies Inc. Geforce 9500 GT supported 2 ATI Geforce 9500 GT
ATI Technologies Inc. Geforce 9500GT supported 2 ATI Geforce 9500 GT
ATI Technologies Inc. Geforce 9800 GT supported 2 ATI Geforce 9800 GT
@@ -502,18 +540,22 @@ ATI Technologies Inc. HIGHTECH EXCALIBUR RADEON 9550SE Series
ATI Technologies Inc. HIGHTECH EXCALIBUR X700 PRO supported 0 ATI Technologies
ATI Technologies Inc. M21 x86/MMX/3DNow!/SSE2 supported 0 ATI Technologies
ATI Technologies Inc. M76M supported 3 ATI M76
-ATI Technologies Inc. MOBILITY RADEON 7500 DDR x86/SSE2 supported 0 ATI Mobility Radeon
-ATI Technologies Inc. MOBILITY RADEON 9000 DDR x86/SSE2 supported 0 ATI Mobility Radeon
-ATI Technologies Inc. MOBILITY RADEON 9000 IGPRADEON 9100 IGP DDR x86/SSE2 supported 0 ATI Mobility Radeon
+ATI Technologies Inc. MOBILITY RADEON 7500 DDR x86/SSE2 supported 0 ATI Mobility Radeon 7xxx
+ATI Technologies Inc. MOBILITY RADEON 9000 DDR x86/SSE2 supported 0 ATI Radeon 9000
+ATI Technologies Inc. MOBILITY RADEON 9000 IGPRADEON 9100 IGP DDR x86/SSE2 supported 0 ATI Radeon 9000
+ATI Technologies Inc. MOBILITY RADEON 9100 IGP DDR x86/SSE2 supported 0 ATI Radeon 9100
ATI Technologies Inc. MOBILITY RADEON 9600 x86/SSE2 supported 0 ATI Mobility Radeon 9600
ATI Technologies Inc. MOBILITY RADEON 9700 x86/SSE2 supported 1 ATI Mobility Radeon 9700
-ATI Technologies Inc. MOBILITY RADEON X300 x86/SSE2 supported 1 ATI Mobility Radeon X3xx
-ATI Technologies Inc. MOBILITY RADEON X600 x86/SSE2 supported 1 ATI Mobility Radeon X6xx
-ATI Technologies Inc. MOBILITY RADEON X700 SE x86 supported 1 ATI Mobility Radeon X7xx
-ATI Technologies Inc. MOBILITY RADEON X700 x86/SSE2 supported 1 ATI Mobility Radeon X7xx
+ATI Technologies Inc. MOBILITY RADEON X300 x86/SSE2 supported 0 ATI Radeon X300
+ATI Technologies Inc. MOBILITY RADEON X600 x86/SSE2 supported 1 ATI Radeon X600
+ATI Technologies Inc. MOBILITY RADEON X700 SE x86 supported 1 ATI Radeon X700
+ATI Technologies Inc. MOBILITY RADEON X700 x86/SSE2 supported 1 ATI Radeon X700
+ATI Technologies Inc. MOBILITY RADEON Xpress 200 Series SW TCL x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. MSI RX9550SE supported 1 ATI Radeon RX9550
-ATI Technologies Inc. Mobility Radeon X2300 HD supported 0 ATI Mobility Radeon X2xxx
-ATI Technologies Inc. Mobility Radeon X2300 HD x86/SSE2 supported 0 ATI Mobility Radeon X2xxx
+ATI Technologies Inc. MSI Radeon X1550 Series supported 2 ATI Radeon X15xx
+ATI Technologies Inc. Mobility Radeon HD 6000 series supported 0 ATI Technologies
+ATI Technologies Inc. Mobility Radeon X2300 HD supported 1 ATI Radeon X2xxx
+ATI Technologies Inc. Mobility Radeon X2300 HD x86/SSE2 supported 1 ATI Radeon X2xxx
ATI Technologies Inc. RADEON 7000 DDR x86/MMX/3DNow!/SSE supported 0 ATI Radeon 7xxx
ATI Technologies Inc. RADEON 7000 DDR x86/SSE2 supported 0 ATI Radeon 7xxx
ATI Technologies Inc. RADEON 7500 DDR x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon 7xxx
@@ -535,6 +577,7 @@ ATI Technologies Inc. RADEON 9500
ATI Technologies Inc. RADEON 9550 x86/SSE2 supported 0 ATI Radeon 9500
ATI Technologies Inc. RADEON 9600 SERIES supported 0 ATI Radeon 9600
ATI Technologies Inc. RADEON 9600 SERIES x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon 9600
+ATI Technologies Inc. RADEON 9600 SERIES x86/SSE2 supported 0 ATI Radeon 9600
ATI Technologies Inc. RADEON 9600 TX x86/SSE2 supported 0 ATI Radeon 9600
ATI Technologies Inc. RADEON 9600 x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon 9600
ATI Technologies Inc. RADEON 9600 x86/SSE2 supported 0 ATI Radeon 9600
@@ -549,8 +592,10 @@ ATI Technologies Inc. RADEON X550 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON X550 x86/SSE2 supported 0 ATI Radeon X500
ATI Technologies Inc. RADEON X600 Series supported 1 ATI Radeon X600
ATI Technologies Inc. RADEON X600 x86/SSE2 supported 1 ATI Radeon X600
+ATI Technologies Inc. RADEON X600/X550 Series supported 1 ATI Radeon X600
ATI Technologies Inc. RADEON X700 PRO x86/SSE2 supported 1 ATI Radeon X700
ATI Technologies Inc. RADEON X800 SE x86/MMX/3DNow!/SSE2 supported 2 ATI Radeon X800
+ATI Technologies Inc. RADEON X800 XT supported 2 ATI Radeon X800
ATI Technologies Inc. RADEON X800GT supported 2 ATI Radeon X800
ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon Xpress
ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/SSE2 supported 0 ATI Radeon Xpress
@@ -569,7 +614,10 @@ ATI Technologies Inc. RV410 Pro x86/SSE2
ATI Technologies Inc. RV790 supported 3 AMD RV790 (HD 4800)
ATI Technologies Inc. Radeon (TM) HD 6470M supported 0 ATI Technologies
ATI Technologies Inc. Radeon (TM) HD 6490M supported 0 ATI Technologies
+ATI Technologies Inc. Radeon (TM) HD 6750M supported 0 ATI Technologies
ATI Technologies Inc. Radeon (TM) HD 6770M supported 0 ATI Technologies
+ATI Technologies Inc. Radeon (TM) HD 6850M supported 0 ATI Technologies
+ATI Technologies Inc. Radeon 7000 DDR x86/SSE supported 0 ATI Radeon 7xxx
ATI Technologies Inc. Radeon 7000 DDR x86/SSE2 supported 0 ATI Radeon 7xxx
ATI Technologies Inc. Radeon 7000 SDR x86/SSE2 supported 0 ATI Radeon 7xxx
ATI Technologies Inc. Radeon 7500 DDR x86/SSE2 supported 0 ATI Radeon 7xxx
@@ -577,37 +625,43 @@ ATI Technologies Inc. Radeon 9000 DDR x86/SSE2
ATI Technologies Inc. Radeon DDR x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon DDR
ATI Technologies Inc. Radeon DDR x86/SSE supported 0 ATI Radeon DDR
ATI Technologies Inc. Radeon DDR x86/SSE2 supported 0 ATI Radeon DDR
-ATI Technologies Inc. Radeon HD 6310 supported 2 ATI Radeon HD 6300
+ATI Technologies Inc. Radeon HD 6310 supported 3 ATI Radeon HD 6300
+ATI Technologies Inc. Radeon HD 6470M supported 3 ATI Radeon HD 6400
+ATI Technologies Inc. Radeon HD 6490M supported 3 ATI Radeon HD 6400
ATI Technologies Inc. Radeon HD 6800 Series supported 3 ATI Radeon HD 6800
ATI Technologies Inc. Radeon SDR x86/SSE2 supported 0 ATI Technologies
-ATI Technologies Inc. Radeon X1300 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1300 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1300 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1300/X1550 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1300/X1550 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1550 64-bit (Microsoft - WDDM) supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1550 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1550 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1600 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1600 Pro / X1300XT x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1600 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1600/X1650 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1650 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1650 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1650 Series x86/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1900 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1950 Pro supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1950 Pro x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1950 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X1950 Series (Microsoft - WDDM) supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. Radeon X300/X550/X1050 Series supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. Radeon X1300 Series supported 1 ATI Radeon X13xx
+ATI Technologies Inc. Radeon X1300 Series x86/MMX/3DNow!/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. Radeon X1300 Series x86/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. Radeon X1300/X1550 Series supported 1 ATI Radeon X13xx
+ATI Technologies Inc. Radeon X1300/X1550 Series x86/SSE2 supported 1 ATI Radeon X13xx
+ATI Technologies Inc. Radeon X1550 64-bit (Microsoft - WDDM) supported 2 ATI Radeon X15xx
+ATI Technologies Inc. Radeon X1550 Series supported 2 ATI Radeon X15xx
+ATI Technologies Inc. Radeon X1550 Series x86/SSE2 supported 2 ATI Radeon X15xx
+ATI Technologies Inc. Radeon X1600 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1600 Pro / X1300XT x86/MMX/3DNow!/SSE2 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1600 Series supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1600 Series x86/SSE2 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1600/1650 Series supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1600/X1650 Series supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1650 Series supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1650 Series x86/MMX/3DNow!/SSE2 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1650 Series x86/SSE2 supported 2 ATI Radeon X16xx
+ATI Technologies Inc. Radeon X1900 Series x86/MMX/3DNow!/SSE2 supported 3 ATI Radeon X19xx
+ATI Technologies Inc. Radeon X1950 Pro supported 3 ATI Radeon X19xx
+ATI Technologies Inc. Radeon X1950 Pro x86/MMX/3DNow!/SSE2 supported 3 ATI Radeon X19xx
+ATI Technologies Inc. Radeon X1950 Series supported 3 ATI Radeon X19xx
+ATI Technologies Inc. Radeon X1950 Series (Microsoft - WDDM) supported 3 ATI Radeon X19xx
+ATI Technologies Inc. Radeon X300/X550/X1050 Series supported 0 ATI Radeon X300
ATI Technologies Inc. Radeon X550/X700 Series supported 0 ATI Radeon X500
ATI Technologies Inc. Radeon X550XTX x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X500
ATI Technologies Inc. SAPPHIRE RADEON X300SE supported 0 ATI Radeon X300
ATI Technologies Inc. SAPPHIRE RADEON X300SE x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X300
ATI Technologies Inc. SAPPHIRE RADEON X300SE x86/SSE2 supported 0 ATI Radeon X300
-ATI Technologies Inc. SAPPHIRE Radeon X1550 Series supported 0 ATI Radeon X1xxx
-ATI Technologies Inc. SAPPHIRE Radeon X1550 Series x86/MMX/3DNow!/SSE2 supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. SAPPHIRE Radeon X1550 Series supported 2 ATI Radeon X15xx
+ATI Technologies Inc. SAPPHIRE Radeon X1550 Series x86/MMX/3DNow!/SSE2 supported 2 ATI Radeon X15xx
+ATI Technologies Inc. SAPPHIRE Radeon X1550 Series x86/SSE2 supported 2 ATI Radeon X15xx
+ATI Technologies Inc. SAPPHIRE Radeon X1550 x86/SSE2 supported 2 ATI Radeon X15xx
ATI Technologies Inc. Sapphire Radeon HD 3730 supported 3 ATI Radeon HD 3700
ATI Technologies Inc. Sapphire Radeon HD 3750 supported 3 ATI Radeon HD 3700
ATI Technologies Inc. Standard VGA Graphics Adapter supported 0 ATI Technologies
@@ -616,7 +670,7 @@ ATI Technologies Inc. Tul, RADEON X600 PRO x86/SSE2
ATI Technologies Inc. Tul, RADEON X700 PRO supported 0 ATI Technologies
ATI Technologies Inc. Tul, RADEON X700 PRO x86/MMX/3DNow!/SSE2 supported 0 ATI Technologies
ATI Technologies Inc. VisionTek Radeon 4350 supported 0 ATI Technologies
-ATI Technologies Inc. VisionTek Radeon X1550 Series supported 0 ATI Radeon X1xxx
+ATI Technologies Inc. VisionTek Radeon X1550 Series supported 2 ATI Radeon X15xx
ATI Technologies Inc. WRESTLER 9802 supported 0 ATI Technologies
ATI Technologies Inc. WRESTLER 9803 supported 0 ATI Technologies
ATI Technologies Inc. XFX Radeon HD 4570 supported 3 ATI Radeon HD 4500
@@ -632,13 +686,14 @@ Advanced Micro Devices, Inc. Mesa DRI R600 (RV620 95C5) 20090101 x86/MMX+/3DNow!
Advanced Micro Devices, Inc. Mesa DRI R600 (RV620 95C5) 20090101 x86/MMX/SSE2 TCL DRI2 supported 1 AMD RV620 (HD 3400)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV635 9596) 20090101 x86/MMX+/3DNow!+/SSE TCL DRI2 supported 3 AMD RV635 (HD 3600)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV670 9505) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2 supported 3 AMD RV670 (HD 3800)
+Advanced Micro Devices, Inc. Mesa DRI R600 (RV670 9505) 20090101 x86/MMX/SSE2 TCL DRI2 supported 3 AMD RV670 (HD 3800)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV710 9552) 20090101 x86/MMX/SSE2 TCL DRI2 supported 1 AMD RV710 (HD 4300)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV730 9490) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2 supported 3 AMD RV730 (HD 4600)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV730 9490) 20090101 x86/MMX/SSE2 TCL DRI2 supported 3 AMD RV730 (HD 4600)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV730 9498) 20090101 TCL DRI2 supported 3 AMD RV730 (HD 4600)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV770 9440) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2 supported 3 AMD RV770 (HD 4800)
Advanced Micro Devices, Inc. Mesa DRI R600 (RV770 9442) 20090101 x86/MMX/SSE2 TCL DRI2 supported 3 AMD RV770 (HD 4800)
-Alex Mohr GL Hijacker! UNRECOGNIZED
+Alex Mohr GL Hijacker! NO MATCH
Apple Software Renderer unsupported 0 Apple Software Renderer
DRI R300 Project Mesa DRI R300 (RS400 5954) 20090101 x86/MMX+/3DNow!+/SSE2 NO-TCL DRI2 supported 1 ATI R300 (9700)
DRI R300 Project Mesa DRI R300 (RS400 5975) 20090101 x86/MMX+/3DNow!+/SSE2 NO-TCL DRI2 supported 1 ATI R300 (9700)
@@ -658,13 +713,15 @@ DRI R300 Project Mesa DRI R300 (RV515 7149) 20090101 x86/MMX/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV515 714A) 20090101 x86/MMX/SSE2 TCL supported 1 ATI RV515
DRI R300 Project Mesa DRI R300 (RV515 714A) 20090101 x86/MMX/SSE2 TCL DRI2 supported 1 ATI RV515
DRI R300 Project Mesa DRI R300 (RV530 71C4) 20090101 x86/MMX/SSE2 TCL DRI2 supported 1 ATI RV530
-GPU_CLASS_UNKNOWN UNRECOGNIZED
-Humper Chromium UNRECOGNIZED
-Intel UNRECOGNIZED
+GPU_CLASS_UNKNOWN NO MATCH
+Humper 3D-Analyze v2.3 - http://www.tommti-systems.com supported 0 Humper
+Humper Chromium supported 0 Humper
+Imagination Technologies PowerVR SGX545 NO MATCH
+Intel NO MATCH
Intel HD Graphics Family supported 2 Intel HD Graphics
-Intel 3D-Analyze v2.2 - http://www.tommti-systems.com UNRECOGNIZED
-Intel 3D-Analyze v2.3 - http://www.tommti-systems.com UNRECOGNIZED
-Intel 4 Series Internal Chipset UNRECOGNIZED
+Intel 3D-Analyze v2.2 - http://www.tommti-systems.com NO MATCH
+Intel 3D-Analyze v2.3 - http://www.tommti-systems.com NO MATCH
+Intel 4 Series Internal Chipset NO MATCH
Intel 830M unsupported 0 Intel 830M
Intel 845G unsupported 0 Intel 845G
Intel 855GM unsupported 0 Intel 855GM
@@ -675,13 +732,14 @@ Intel 945G
Intel 945GM supported 0 Intel 945GM
Intel 950 supported 0 Intel 950
Intel 965 supported 0 Intel 965
-Intel B43 Express Chipset UNRECOGNIZED
+Intel B43 Express Chipset NO MATCH
Intel Bear Lake unsupported 0 Intel Bear Lake
Intel Broadwater unsupported 0 Intel Broadwater
Intel Brookdale unsupported 0 Intel Brookdale
Intel Cantiga unsupported 0 Intel Cantiga
+Intel EMGD on PowerVR SGX535 NO MATCH
Intel Eaglelake supported 0 Intel Eaglelake
-Intel Familia Mobile 45 Express Chipset (Microsoft Corporation - WDDM 1.1) UNRECOGNIZED
+Intel Familia Mobile 45 Express Chipset (Microsoft Corporation - WDDM 1.1) NO MATCH
Intel G33 unsupported 0 Intel G33
Intel G41 supported 0 Intel G41
Intel G41 Express Chipset supported 0 Intel G41
@@ -710,12 +768,12 @@ Intel HD Graphics Family BR-1012-00Y8
Intel HD Graphics Family BR-1012-00YF supported 2 Intel HD Graphics
Intel HD Graphics Family BR-1012-00ZD supported 2 Intel HD Graphics
Intel HD Graphics Family BR-1102-00ML supported 2 Intel HD Graphics
-Intel Inc. Intel GMA 900 OpenGL Engine UNRECOGNIZED
+Intel Inc. Intel GMA 900 OpenGL Engine NO MATCH
Intel Inc. Intel GMA 950 OpenGL Engine supported 0 Intel 950
Intel Inc. Intel GMA X3100 OpenGL Engine supported 0 Intel X3100
Intel Inc. Intel HD Graphics 3000 OpenGL Engine supported 2 Intel HD Graphics
Intel Inc. Intel HD Graphics OpenGL Engine supported 2 Intel HD Graphics
-Intel Inc. Intel HD xxxx OpenGL Engine UNRECOGNIZED
+Intel Inc. Intel HD xxxx OpenGL Engine NO MATCH
Intel Intel 845G unsupported 0 Intel 845G
Intel Intel 855GM unsupported 0 Intel 855GM
Intel Intel 865G unsupported 0 Intel 865G
@@ -727,39 +785,42 @@ Intel Intel 965/963 Graphics Media Accelerator
Intel Intel Bear Lake B unsupported 0 Intel Bear Lake
Intel Intel Broadwater G unsupported 0 Intel Broadwater
Intel Intel Brookdale-G unsupported 0 Intel Brookdale
-Intel Intel Calistoga UNRECOGNIZED
+Intel Intel Calistoga NO MATCH
Intel Intel Cantiga unsupported 0 Intel Cantiga
Intel Intel Eaglelake supported 0 Intel Eaglelake
-Intel Intel Grantsdale-G UNRECOGNIZED
+Intel Intel Generic Renderer NO MATCH
+Intel Intel Grantsdale-G NO MATCH
Intel Intel HD Graphics 3000 supported 2 Intel HD Graphics
-Intel Intel Lakeport UNRECOGNIZED
+Intel Intel Lakeport NO MATCH
Intel Intel Montara-GM unsupported 0 Intel Montara
Intel Intel Pineview Platform supported 0 Intel Pineview
Intel Intel Springdale-G unsupported 0 Intel Springdale
-Intel Mobile - famiglia Express Chipset 45 (Microsoft Corporation - WDDM 1.1) UNRECOGNIZED
+Intel Mobile - famiglia Express Chipset 45 (Microsoft Corporation - WDDM 1.1) NO MATCH
Intel Mobile 4 Series supported 0 Intel Mobile 4 Series
Intel Mobile 4 Series Express Chipset Family supported 0 Intel Mobile 4 Series
-Intel Mobile 45 Express Chipset Family (Microsoft Corporation - WDDM 1.1) UNRECOGNIZED
+Intel Mobile 45 Express Chipset Family NO MATCH
+Intel Mobile 45 Express Chipset Family (Microsoft Corporation - WDDM 1.1) NO MATCH
Intel Mobile HD Graphics supported 2 Intel HD Graphics
+Intel Mobile Intel(R) 4 Series Express Chipset Family supported 0 Intel Mobile 4 Series
Intel Mobile SandyBridge HD Graphics supported 2 Intel HD Graphics
Intel Montara unsupported 0 Intel Montara
Intel Pineview supported 0 Intel Pineview
-Intel Q45/Q43 Express Chipset UNRECOGNIZED
-Intel Royal BNA Driver UNRECOGNIZED
+Intel Q45/Q43 Express Chipset NO MATCH
+Intel Royal BNA Driver NO MATCH
Intel SandyBridge HD Graphics supported 2 Intel HD Graphics
Intel SandyBridge HD Graphics BR-1006-00V8 supported 2 Intel HD Graphics
Intel Springdale unsupported 0 Intel Springdale
Intel X3100 supported 0 Intel X3100
-Intergraph wcgdrv 06.05.06.18 UNRECOGNIZED
-Intergraph wcgdrv 06.06.00.35 UNRECOGNIZED
-LegendgrafiX Mobile 945 Express C/TitaniumGL/GAC/D3D ACCELERATION/6x86/1 THREADs | http://Legendgra... UNRECOGNIZED
+Intergraph wcgdrv 06.05.06.18 NO MATCH
+Intergraph wcgdrv 06.06.00.35 NO MATCH
+LegendgrafiX Mobile 945 Express C/TitaniumGL/GAC/D3D ACCELERATION/6x86/1 THREADs | http://Legendgra... NO MATCH
LegendgrafiX NVIDIA GeForce GT 430/TitaniumGL/GAC/D3D ACCELERATION/6x86/1 THREADs | http://Legendgr... supported 3 NVIDIA GT 430M
-Linden Lab Headless UNRECOGNIZED
+Linden Lab Headless NO MATCH
Matrox unsupported 0 Matrox
Mesa unsupported 0 Mesa
Mesa Project Software Rasterizer unsupported 0 Mesa
-NVIDIA /PCI/SSE2 UNRECOGNIZED
-NVIDIA /PCI/SSE2/3DNOW! UNRECOGNIZED
+NVIDIA /PCI/SSE2 NO MATCH
+NVIDIA /PCI/SSE2/3DNOW! NO MATCH
NVIDIA 205 supported 0 NVIDIA G 205M
NVIDIA 210 supported 1 NVIDIA G 210
NVIDIA 310 supported 2 NVIDIA G 310M
@@ -768,21 +829,25 @@ NVIDIA 315
NVIDIA 315M supported 2 NVIDIA G 315
NVIDIA 320M supported 2 NVIDIA G 320M
NVIDIA C51 supported 0 NVIDIA C51
-NVIDIA D10M2-20/PCI/SSE2 UNRECOGNIZED
-NVIDIA D10P1-25/PCI/SSE2 UNRECOGNIZED
-NVIDIA D10P1-30/PCI/SSE2 UNRECOGNIZED
-NVIDIA D10P2-50/PCI/SSE2 UNRECOGNIZED
-NVIDIA D11M2-30/PCI/SSE2 UNRECOGNIZED
-NVIDIA D12-P1-35/PCI/SSE2 UNRECOGNIZED
-NVIDIA D12U-15/PCI/SSE2 UNRECOGNIZED
-NVIDIA D13M1-40/PCI/SSE2 UNRECOGNIZED
-NVIDIA D13P1-40/PCI/SSE2 UNRECOGNIZED
-NVIDIA D13U-10/PCI/SSE2 UNRECOGNIZED
-NVIDIA D13U/PCI/SSE2 UNRECOGNIZED
+NVIDIA Corporation GeForce GT 230/PCI/SSE2 supported 2 NVIDIA GT 230M
+NVIDIA Corporation GeForce GTX 285/PCI/SSE2 supported 3 NVIDIA GTX 285
+NVIDIA D10M2-20/PCI/SSE2 NO MATCH
+NVIDIA D10P1-25/PCI/SSE2 NO MATCH
+NVIDIA D10P1-25/PCI/SSE2/3DNOW! NO MATCH
+NVIDIA D10P1-30/PCI/SSE2 NO MATCH
+NVIDIA D10P2-50/PCI/SSE2 NO MATCH
+NVIDIA D11M2-30/PCI/SSE2 NO MATCH
+NVIDIA D12-P1-35/PCI/SSE2 NO MATCH
+NVIDIA D12U-15/PCI/SSE2 NO MATCH
+NVIDIA D13M1-40/PCI/SSE2 NO MATCH
+NVIDIA D13P1-40/PCI/SSE2 NO MATCH
+NVIDIA D13P1-40/PCI/SSE2/3DNOW! NO MATCH
+NVIDIA D13U-10/PCI/SSE2 NO MATCH
+NVIDIA D13U/PCI/SSE2 NO MATCH
NVIDIA D9M supported 1 NVIDIA D9M
NVIDIA D9M-20/PCI/SSE2 supported 1 NVIDIA D9M
-NVIDIA Entry Graphics/PCI/SSE2 UNRECOGNIZED
-NVIDIA Entry Graphics/PCI/SSE2/3DNOW! UNRECOGNIZED
+NVIDIA Entry Graphics/PCI/SSE2 NO MATCH
+NVIDIA Entry Graphics/PCI/SSE2/3DNOW! NO MATCH
NVIDIA G 102M supported 0 NVIDIA G102M
NVIDIA G 103M supported 0 NVIDIA G103M
NVIDIA G 105M supported 0 NVIDIA G105M
@@ -793,16 +858,17 @@ NVIDIA G103M
NVIDIA G105M supported 0 NVIDIA G105M
NVIDIA G210 supported 1 NVIDIA G 210
NVIDIA G210M supported 1 NVIDIA G 210
-NVIDIA G70/PCI/SSE2 UNRECOGNIZED
+NVIDIA G70/PCI/SSE2 NO MATCH
NVIDIA G72 supported 1 NVIDIA G72
NVIDIA G73 supported 1 NVIDIA G73
NVIDIA G84 supported 2 NVIDIA G84
NVIDIA G86 supported 3 NVIDIA G86
NVIDIA G92 supported 3 NVIDIA G92
-NVIDIA G92-200/PCI/SSE2 supported 3 NVIDIA G92
+NVIDIA G92-200/PCI/SSE2 supported 0 NVIDIA G 200
NVIDIA G94 supported 3 NVIDIA G94
-NVIDIA G96/PCI/SSE2 UNRECOGNIZED
-NVIDIA G98/PCI/SSE2 UNRECOGNIZED
+NVIDIA G96/PCI/SSE2 NO MATCH
+NVIDIA G98/PCI/SSE2 NO MATCH
+NVIDIA G98/PCI/SSE2/3DNOW! NO MATCH
NVIDIA GT 120 supported 2 NVIDIA GT 120M
NVIDIA GT 130 supported 2 NVIDIA GT 130M
NVIDIA GT 130M supported 2 NVIDIA GT 130M
@@ -818,8 +884,8 @@ NVIDIA GT 240
NVIDIA GT 240M supported 2 NVIDIA GT 240M
NVIDIA GT 250M supported 2 NVIDIA GT 250M
NVIDIA GT 260M supported 2 NVIDIA GT 260M
-NVIDIA GT 320 supported 2 NVIDIA GT 320M
-NVIDIA GT 320M supported 2 NVIDIA GT 320M
+NVIDIA GT 320 supported 2 NVIDIA G 320M
+NVIDIA GT 320M supported 2 NVIDIA G 320M
NVIDIA GT 330 supported 3 NVIDIA GT 330M
NVIDIA GT 330M supported 3 NVIDIA GT 330M
NVIDIA GT 340 supported 2 NVIDIA GT 340M
@@ -831,7 +897,7 @@ NVIDIA GT 520
NVIDIA GT 540 supported 3 NVIDIA GT 540M
NVIDIA GT 540M supported 3 NVIDIA GT 540M
NVIDIA GT-120 supported 2 NVIDIA GT 120
-NVIDIA GT200/PCI/SSE2 UNRECOGNIZED
+NVIDIA GT200/PCI/SSE2 supported 0 NVIDIA G 200
NVIDIA GTS 150 supported 2 NVIDIA GT 150M
NVIDIA GTS 240 supported 3 NVIDIA GTS 240
NVIDIA GTS 250 supported 3 NVIDIA GTS 250
@@ -858,7 +924,7 @@ NVIDIA GTX 560 Ti
NVIDIA GTX 570 supported 3 NVIDIA GTX 570
NVIDIA GTX 580 supported 3 NVIDIA GTX 580
NVIDIA GTX 590 supported 3 NVIDIA GTX 590
-NVIDIA GeForce UNRECOGNIZED
+NVIDIA GeForce NO MATCH
NVIDIA GeForce 2 supported 0 NVIDIA GeForce 2
NVIDIA GeForce 205/PCI/SSE2 supported 2 NVIDIA 205
NVIDIA GeForce 210 supported 2 NVIDIA 210
@@ -877,34 +943,35 @@ NVIDIA GeForce 4 Go
NVIDIA GeForce 4 MX supported 0 NVIDIA GeForce 4
NVIDIA GeForce 4 Ti supported 0 NVIDIA GeForce 4
NVIDIA GeForce 405/PCI/SSE2 supported 1 NVIDIA G 405
-NVIDIA GeForce 6100 supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100 nForce 400/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100 nForce 405/PCI/SSE2 supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100 nForce 405/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100 nForce 420/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100 nForce 430/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6100/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
+NVIDIA GeForce 410M/PCI/SSE2 supported 1 NVIDIA G 410M
+NVIDIA GeForce 6100 supported 0 NVIDIA G100
+NVIDIA GeForce 6100 nForce 400/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 6100 nForce 405/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 6100 nForce 405/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 6100 nForce 420/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 6100 nForce 430/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 6100/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
NVIDIA GeForce 6150 LE/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
NVIDIA GeForce 6150/PCI/SSE2 supported 0 NVIDIA GeForce 6100
NVIDIA GeForce 6150/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
NVIDIA GeForce 6150SE nForce 430/PCI/SSE2 supported 0 NVIDIA GeForce 6100
NVIDIA GeForce 6150SE nForce 430/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
NVIDIA GeForce 6150SE/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6100
-NVIDIA GeForce 6200 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 A-LE/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 A-LE/AGP/SSE2 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 A-LE/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 LE/PCI/SSE2 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 LE/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/AGP/SSE2 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/PCI/SSE/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/PCI/SSE2 supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
-NVIDIA GeForce 6200SE TurboCache(TM)/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 6200
+NVIDIA GeForce 6200 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 A-LE/AGP/SSE/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 A-LE/AGP/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 A-LE/AGP/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 LE/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 LE/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/AGP/SSE/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/AGP/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/AGP/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/PCI/SSE/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 6200/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 6200SE TurboCache(TM)/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
NVIDIA GeForce 6500 supported 0 NVIDIA GeForce 6500
NVIDIA GeForce 6500/PCI/SSE2 supported 0 NVIDIA GeForce 6500
NVIDIA GeForce 6600 supported 1 NVIDIA GeForce 6600
@@ -921,11 +988,13 @@ NVIDIA GeForce 6600/PCI/SSE2
NVIDIA GeForce 6600/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 6600
NVIDIA GeForce 6700 supported 2 NVIDIA GeForce 6700
NVIDIA GeForce 6800 supported 2 NVIDIA GeForce 6800
+NVIDIA GeForce 6800 GS/PCI/SSE2 supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800 GS/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800 GT/AGP/SSE2 supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800 GT/PCI/SSE2 supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800 XT/AGP/SSE2 supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800 XT/PCI/SSE2 supported 2 NVIDIA GeForce 6800
+NVIDIA GeForce 6800 XT/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800/PCI/SSE2 supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 6800/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 6800
NVIDIA GeForce 7000 supported 0 NVIDIA GeForce 7000
@@ -943,12 +1012,12 @@ NVIDIA GeForce 7050 PV / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7050 PV / nForce 630a/PCI/SSE2 supported 0 NVIDIA GeForce 7000
NVIDIA GeForce 7050 PV / nForce 630a/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 7000
NVIDIA GeForce 7050 SE / NVIDIA nForce 630a/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 7000
-NVIDIA GeForce 7100 supported 0 NVIDIA GeForce 7100
-NVIDIA GeForce 7100 / NVIDIA nForce 620i/PCI/SSE2 supported 0 NVIDIA GeForce 7100
-NVIDIA GeForce 7100 / NVIDIA nForce 630i/PCI/SSE2 supported 0 NVIDIA GeForce 7100
-NVIDIA GeForce 7100 / nForce 630i/PCI/SSE2 supported 0 NVIDIA GeForce 7100
-NVIDIA GeForce 7100 GS/PCI/SSE2 supported 0 NVIDIA GeForce 7100
-NVIDIA GeForce 7100 GS/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 7100
+NVIDIA GeForce 7100 supported 0 NVIDIA G100
+NVIDIA GeForce 7100 / NVIDIA nForce 620i/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 7100 / NVIDIA nForce 630i/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 7100 / nForce 630i/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 7100 GS/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 7100 GS/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2 supported 0 NVIDIA GeForce 7100
NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 7100
NVIDIA GeForce 7300 supported 1 NVIDIA GeForce 7300
@@ -960,8 +1029,8 @@ NVIDIA GeForce 7300 GT/PCI/SSE2
NVIDIA GeForce 7300 GT/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 7300
NVIDIA GeForce 7300 LE/PCI/SSE2 supported 1 NVIDIA GeForce 7300
NVIDIA GeForce 7300 LE/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 7300
-NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2 supported 1 NVIDIA GeForce 7300
-NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 7300
+NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
NVIDIA GeForce 7300 SE/PCI/SSE2 supported 1 NVIDIA GeForce 7300
NVIDIA GeForce 7300 SE/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 7300
NVIDIA GeForce 7350 LE/PCI/SSE2 supported 1 NVIDIA GeForce 7300
@@ -982,24 +1051,26 @@ NVIDIA GeForce 7800
NVIDIA GeForce 7800 GS/AGP/SSE2 supported 2 NVIDIA GeForce 7800
NVIDIA GeForce 7800 GS/AGP/SSE2/3DNOW! supported 2 NVIDIA GeForce 7800
NVIDIA GeForce 7800 GT/PCI/SSE2 supported 2 NVIDIA GeForce 7800
+NVIDIA GeForce 7800 GT/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7800
NVIDIA GeForce 7800 GTX/PCI/SSE2 supported 2 NVIDIA GeForce 7800
NVIDIA GeForce 7800 GTX/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7800
NVIDIA GeForce 7900 supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7900 GS/PCI/SSE2 supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7900 GS/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7900 GT/GTO/PCI/SSE2 supported 2 NVIDIA GeForce 7900
+NVIDIA GeForce 7900 GT/GTO/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7900 GT/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7900 GTX/PCI/SSE2 supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7950 GT/PCI/SSE2 supported 2 NVIDIA GeForce 7900
NVIDIA GeForce 7950 GT/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce 7900
-NVIDIA GeForce 8100 supported 1 NVIDIA GeForce 8100
-NVIDIA GeForce 8100 / nForce 720a/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 8100
-NVIDIA GeForce 8200 supported 1 NVIDIA GeForce 8200
-NVIDIA GeForce 8200/PCI/SSE2 supported 1 NVIDIA GeForce 8200
-NVIDIA GeForce 8200/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 8200
-NVIDIA GeForce 8200M supported 1 NVIDIA GeForce 8200M
-NVIDIA GeForce 8200M G/PCI/SSE2 supported 1 NVIDIA GeForce 8200M
-NVIDIA GeForce 8200M G/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 8200M
+NVIDIA GeForce 8100 supported 0 NVIDIA G100
+NVIDIA GeForce 8100 / nForce 720a/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 8200 supported 0 NVIDIA G 200
+NVIDIA GeForce 8200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 8200/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 8200M supported 0 NVIDIA G 200
+NVIDIA GeForce 8200M G/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 8200M G/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
NVIDIA GeForce 8300 supported 1 NVIDIA GeForce 8300
NVIDIA GeForce 8300 GS/PCI/SSE2 supported 1 NVIDIA GeForce 8300
NVIDIA GeForce 8400 supported 1 NVIDIA GeForce 8400
@@ -1045,17 +1116,17 @@ NVIDIA GeForce 8800 GTX/PCI/SSE2
NVIDIA GeForce 8800 Ultra/PCI/SSE2 supported 3 NVIDIA GeForce 8800
NVIDIA GeForce 8800M GTS/PCI/SSE2 supported 3 NVIDIA GeForce 8800M
NVIDIA GeForce 8800M GTX/PCI/SSE2 supported 3 NVIDIA GeForce 8800M
-NVIDIA GeForce 9100 supported 0 NVIDIA GeForce 9100
-NVIDIA GeForce 9100/PCI/SSE2 supported 0 NVIDIA GeForce 9100
-NVIDIA GeForce 9100/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 9100
-NVIDIA GeForce 9100M supported 0 NVIDIA GeForce 9100M
-NVIDIA GeForce 9100M G/PCI/SSE2 supported 0 NVIDIA GeForce 9100M
-NVIDIA GeForce 9100M G/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 9100M
-NVIDIA GeForce 9200 supported 1 NVIDIA GeForce 9200
-NVIDIA GeForce 9200/PCI/SSE2 supported 1 NVIDIA GeForce 9200
-NVIDIA GeForce 9200/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce 9200
-NVIDIA GeForce 9200M GE/PCI/SSE2 supported 1 NVIDIA GeForce 9200M
-NVIDIA GeForce 9200M GS/PCI/SSE2 supported 1 NVIDIA GeForce 9200M
+NVIDIA GeForce 9100 supported 0 NVIDIA G100
+NVIDIA GeForce 9100/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce 9100/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce 9100M supported 0 NVIDIA G100M
+NVIDIA GeForce 9100M G/PCI/SSE2 supported 0 NVIDIA G100M
+NVIDIA GeForce 9100M G/PCI/SSE2/3DNOW! supported 0 NVIDIA G100M
+NVIDIA GeForce 9200 supported 0 NVIDIA G 200
+NVIDIA GeForce 9200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 9200/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce 9200M GE/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce 9200M GS/PCI/SSE2 supported 0 NVIDIA G 200
NVIDIA GeForce 9300 supported 1 NVIDIA GeForce 9300
NVIDIA GeForce 9300 / nForce 730i/PCI/SSE2 supported 1 NVIDIA GeForce 9300
NVIDIA GeForce 9300 GE/PCI/SSE2 supported 1 NVIDIA GeForce 9300
@@ -1108,16 +1179,16 @@ NVIDIA GeForce 9800M
NVIDIA GeForce 9800M GS/PCI/SSE2 supported 3 NVIDIA GeForce 9800M
NVIDIA GeForce 9800M GT/PCI/SSE2 supported 3 NVIDIA GeForce 9800M
NVIDIA GeForce 9800M GTS/PCI/SSE2 supported 3 NVIDIA GeForce 9800M
-NVIDIA GeForce FX 5100 supported 0 NVIDIA GeForce FX 5100
-NVIDIA GeForce FX 5100/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce FX 5100
-NVIDIA GeForce FX 5200 supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/AGP/SSE supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/AGP/SSE2 supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/PCI/SSE2 supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce FX 5200
-NVIDIA GeForce FX 5200LE/AGP/SSE2 supported 0 NVIDIA GeForce FX 5200
+NVIDIA GeForce FX 5100 supported 0 NVIDIA G100
+NVIDIA GeForce FX 5100/AGP/SSE/3DNOW! supported 0 NVIDIA G100
+NVIDIA GeForce FX 5200 supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/AGP/SSE supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/AGP/SSE/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/AGP/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/AGP/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
+NVIDIA GeForce FX 5200LE/AGP/SSE2 supported 0 NVIDIA G 200
NVIDIA GeForce FX 5500 supported 0 NVIDIA GeForce FX 5500
NVIDIA GeForce FX 5500/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce FX 5500
NVIDIA GeForce FX 5500/AGP/SSE2 supported 0 NVIDIA GeForce FX 5500
@@ -1136,17 +1207,19 @@ NVIDIA GeForce FX 5800
NVIDIA GeForce FX 5900 supported 1 NVIDIA GeForce FX 5900
NVIDIA GeForce FX 5900/AGP/SSE2 supported 1 NVIDIA GeForce FX 5900
NVIDIA GeForce FX 5900XT/AGP/SSE2 supported 1 NVIDIA GeForce FX 5900
-NVIDIA GeForce FX Go5100 supported 0 NVIDIA GeForce FX Go5100
-NVIDIA GeForce FX Go5100/AGP/SSE2 supported 0 NVIDIA GeForce FX Go5100
-NVIDIA GeForce FX Go5200 supported 0 NVIDIA GeForce FX Go5200
-NVIDIA GeForce FX Go5200/AGP/SSE2 supported 0 NVIDIA GeForce FX Go5200
+NVIDIA GeForce FX Go5100 supported 0 NVIDIA G100
+NVIDIA GeForce FX Go5100/AGP/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce FX Go5200 supported 0 NVIDIA G 200
+NVIDIA GeForce FX Go5200/AGP/SSE2 supported 0 NVIDIA G 200
NVIDIA GeForce FX Go5300 supported 0 NVIDIA GeForce FX Go5300
NVIDIA GeForce FX Go5600 supported 0 NVIDIA GeForce FX Go5600
NVIDIA GeForce FX Go5600/AGP/SSE2 supported 0 NVIDIA GeForce FX Go5600
NVIDIA GeForce FX Go5650/AGP/SSE2 supported 0 NVIDIA GeForce FX Go5600
NVIDIA GeForce FX Go5700 supported 1 NVIDIA GeForce FX Go5700
+NVIDIA GeForce FX Go5700/AGP/SSE2 supported 1 NVIDIA GeForce FX Go5700
NVIDIA GeForce FX Go5xxx/AGP/SSE2 supported 0 NVIDIA GeForce FX Go5xxx
NVIDIA GeForce G 103M/PCI/SSE2 supported 0 NVIDIA G103M
+NVIDIA GeForce G 103M/PCI/SSE2/3DNOW! supported 0 NVIDIA G103M
NVIDIA GeForce G 105M/PCI/SSE2 supported 0 NVIDIA G105M
NVIDIA GeForce G 110M/PCI/SSE2 supported 0 NVIDIA G 110M
NVIDIA GeForce G100/PCI/SSE2 supported 0 NVIDIA G100
@@ -1161,7 +1234,7 @@ NVIDIA GeForce G210M/PCI/SSE2
NVIDIA GeForce G310M/PCI/SSE2 supported 2 NVIDIA G 310M
NVIDIA GeForce GT 120/PCI/SSE2 supported 2 NVIDIA GT 120M
NVIDIA GeForce GT 120/PCI/SSE2/3DNOW! supported 2 NVIDIA GT 120M
-NVIDIA GeForce GT 120M/PCI/SSE2 supported 2 NVIDIA GT 120M
+NVIDIA GeForce GT 120M/PCI/SSE2 supported 1 NVIDIA G 120M
NVIDIA GeForce GT 130M/PCI/SSE2 supported 2 NVIDIA GT 130M
NVIDIA GeForce GT 140/PCI/SSE2 supported 2 NVIDIA GT 140M
NVIDIA GeForce GT 220/PCI/SSE2 supported 2 NVIDIA GT 220M
@@ -1173,8 +1246,8 @@ NVIDIA GeForce GT 240
NVIDIA GeForce GT 240/PCI/SSE2 supported 2 NVIDIA GT 240M
NVIDIA GeForce GT 240/PCI/SSE2/3DNOW! supported 2 NVIDIA GT 240M
NVIDIA GeForce GT 240M/PCI/SSE2 supported 2 NVIDIA GT 240M
-NVIDIA GeForce GT 320/PCI/SSE2 supported 2 NVIDIA GT 320M
-NVIDIA GeForce GT 320M/PCI/SSE2 supported 2 NVIDIA GT 320M
+NVIDIA GeForce GT 320/PCI/SSE2 supported 2 NVIDIA G 320M
+NVIDIA GeForce GT 320M/PCI/SSE2 supported 2 NVIDIA G 320M
NVIDIA GeForce GT 325M/PCI/SSE2 supported 0 NVIDIA GT 325M
NVIDIA GeForce GT 330/PCI/SSE2 supported 3 NVIDIA GT 330M
NVIDIA GeForce GT 330/PCI/SSE2/3DNOW! supported 3 NVIDIA GT 330M
@@ -1192,9 +1265,14 @@ NVIDIA GeForce GT 435M/PCI/SSE2
NVIDIA GeForce GT 440/PCI/SSE2 supported 3 NVIDIA GT 440M
NVIDIA GeForce GT 440/PCI/SSE2/3DNOW! supported 3 NVIDIA GT 440M
NVIDIA GeForce GT 445M/PCI/SSE2 supported 3 NVIDIA GT 445M
+NVIDIA GeForce GT 520/PCI/SSE2 supported 3 NVIDIA GT 520M
+NVIDIA GeForce GT 520/PCI/SSE2/3DNOW! supported 3 NVIDIA GT 520M
NVIDIA GeForce GT 520M/PCI/SSE2 supported 3 NVIDIA GT 520M
-NVIDIA GeForce GT 525M/PCI/SSE2 supported 3 NVIDIA GT 525M
+NVIDIA GeForce GT 525M/PCI/SSE2 supported 3 NVIDIA GT 520M
+NVIDIA GeForce GT 530/PCI/SSE2 supported 3 NVIDIA GT 530M
+NVIDIA GeForce GT 530/PCI/SSE2/3DNOW! supported 3 NVIDIA GT 530M
NVIDIA GeForce GT 540M/PCI/SSE2 supported 3 NVIDIA GT 540M
+NVIDIA GeForce GT 545/PCI/SSE2 supported 3 NVIDIA GT 540M
NVIDIA GeForce GT 550M/PCI/SSE2 supported 3 NVIDIA GT 550M
NVIDIA GeForce GT 555M/PCI/SSE2 supported 3 NVIDIA GT 555M
NVIDIA GeForce GTS 150/PCI/SSE2 supported 2 NVIDIA GT 150M
@@ -1212,9 +1290,11 @@ NVIDIA GeForce GTX 260/PCI/SSE2
NVIDIA GeForce GTX 260/PCI/SSE2/3DNOW! supported 3 NVIDIA GTX 260
NVIDIA GeForce GTX 260M/PCI/SSE2 supported 3 NVIDIA GTX 260
NVIDIA GeForce GTX 275/PCI/SSE2 supported 3 NVIDIA GTX 275
+NVIDIA GeForce GTX 275/PCI/SSE2/3DNOW! supported 3 NVIDIA GTX 275
NVIDIA GeForce GTX 280 supported 3 NVIDIA GTX 280
NVIDIA GeForce GTX 280/PCI/SSE2 supported 3 NVIDIA GTX 280
NVIDIA GeForce GTX 280M/PCI/SSE2 supported 3 NVIDIA GTX 280
+NVIDIA GeForce GTX 285 supported 3 NVIDIA GTX 285
NVIDIA GeForce GTX 285/PCI/SSE2 supported 3 NVIDIA GTX 285
NVIDIA GeForce GTX 295/PCI/SSE2 supported 3 NVIDIA GTX 295
NVIDIA GeForce GTX 460 SE/PCI/SSE2 supported 3 NVIDIA GTX 460
@@ -1232,6 +1312,8 @@ NVIDIA GeForce GTX 550 Ti/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 560 Ti/PCI/SSE2 supported 3 NVIDIA GTX 560
NVIDIA GeForce GTX 560 Ti/PCI/SSE2/3DNOW! supported 3 NVIDIA GTX 560
NVIDIA GeForce GTX 560/PCI/SSE2 supported 3 NVIDIA GTX 560
+NVIDIA GeForce GTX 560/PCI/SSE2/3DNOW! supported 3 NVIDIA GTX 560
+NVIDIA GeForce GTX 560M/PCI/SSE2 supported 3 NVIDIA GTX 560
NVIDIA GeForce GTX 570/PCI/SSE2 supported 3 NVIDIA GTX 570
NVIDIA GeForce GTX 570/PCI/SSE2/3DNOW! supported 3 NVIDIA GTX 570
NVIDIA GeForce GTX 580/PCI/SSE2 supported 3 NVIDIA GTX 580
@@ -1239,13 +1321,13 @@ NVIDIA GeForce GTX 580/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 580M/PCI/SSE2 supported 3 NVIDIA GTX 580M
NVIDIA GeForce GTX 590/PCI/SSE2 supported 3 NVIDIA GTX 590
NVIDIA GeForce Go 6 supported 1 NVIDIA GeForce Go 6
-NVIDIA GeForce Go 6100 supported 0 NVIDIA GeForce Go 6100
-NVIDIA GeForce Go 6100/PCI/SSE2 supported 0 NVIDIA GeForce Go 6100
-NVIDIA GeForce Go 6100/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce Go 6100
+NVIDIA GeForce Go 6100 supported 0 NVIDIA G100
+NVIDIA GeForce Go 6100/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA GeForce Go 6100/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
NVIDIA GeForce Go 6150/PCI/SSE2 supported 0 NVIDIA GeForce Go 6100
NVIDIA GeForce Go 6150/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce Go 6100
-NVIDIA GeForce Go 6200 supported 0 NVIDIA GeForce Go 6200
-NVIDIA GeForce Go 6200/PCI/SSE2 supported 0 NVIDIA GeForce Go 6200
+NVIDIA GeForce Go 6200 supported 0 NVIDIA G 200
+NVIDIA GeForce Go 6200/PCI/SSE2 supported 0 NVIDIA G 200
NVIDIA GeForce Go 6400 supported 1 NVIDIA GeForce Go 6400
NVIDIA GeForce Go 6400/PCI/SSE2 supported 1 NVIDIA GeForce Go 6400
NVIDIA GeForce Go 6600 supported 1 NVIDIA GeForce Go 6600
@@ -1253,9 +1335,9 @@ NVIDIA GeForce Go 6600/PCI/SSE2
NVIDIA GeForce Go 6800 supported 1 NVIDIA GeForce Go 6800
NVIDIA GeForce Go 6800 Ultra/PCI/SSE2 supported 1 NVIDIA GeForce Go 6800
NVIDIA GeForce Go 6800/PCI/SSE2 supported 1 NVIDIA GeForce Go 6800
-NVIDIA GeForce Go 7200 supported 1 NVIDIA GeForce Go 7200
-NVIDIA GeForce Go 7200/PCI/SSE2 supported 1 NVIDIA GeForce Go 7200
-NVIDIA GeForce Go 7200/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce Go 7200
+NVIDIA GeForce Go 7200 supported 0 NVIDIA G 200
+NVIDIA GeForce Go 7200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA GeForce Go 7200/PCI/SSE2/3DNOW! supported 0 NVIDIA G 200
NVIDIA GeForce Go 7300 supported 1 NVIDIA GeForce Go 7300
NVIDIA GeForce Go 7300/PCI/SSE2 supported 1 NVIDIA GeForce Go 7300
NVIDIA GeForce Go 7300/PCI/SSE2/3DNOW! supported 1 NVIDIA GeForce Go 7300
@@ -1266,6 +1348,7 @@ NVIDIA GeForce Go 7600
NVIDIA GeForce Go 7600/PCI/SSE2 supported 2 NVIDIA GeForce Go 7600
NVIDIA GeForce Go 7600/PCI/SSE2/3DNOW! supported 2 NVIDIA GeForce Go 7600
NVIDIA GeForce Go 7700 supported 2 NVIDIA GeForce Go 7700
+NVIDIA GeForce Go 7700/PCI/SSE2 supported 2 NVIDIA GeForce Go 7700
NVIDIA GeForce Go 7800 supported 2 NVIDIA GeForce Go 7800
NVIDIA GeForce Go 7800 GTX/PCI/SSE2 supported 2 NVIDIA GeForce Go 7800
NVIDIA GeForce Go 7900 supported 2 NVIDIA GeForce Go 7900
@@ -1283,7 +1366,9 @@ NVIDIA GeForce3/AGP/SSE2
NVIDIA GeForce4 420 Go 32M/AGP/SSE2 supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 420 Go 32M/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 420 Go 32M/PCI/SSE2/3DNOW! supported 0 NVIDIA GeForce 4
+NVIDIA GeForce4 420 Go/AGP/SSE2 supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 440 Go 64M/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce 4
+NVIDIA GeForce4 440 Go/AGP/SSE2 supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 460 Go/AGP/SSE2 supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 MX 4000/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 MX 4000/AGP/SSE2 supported 0 NVIDIA GeForce 4
@@ -1297,42 +1382,47 @@ NVIDIA GeForce4 MX 440/AGP/SSE2
NVIDIA GeForce4 MX 440/AGP/SSE2/3DNOW! supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 MX 440SE with AGP8X/AGP/SSE2 supported 0 NVIDIA GeForce 4
NVIDIA GeForce4 MX Integrated GPU/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce 4
-NVIDIA GeForce4 Ti 4200 with AGP8X/AGP/SSE supported 0 NVIDIA GeForce 4
-NVIDIA GeForce4 Ti 4200/AGP/SSE/3DNOW! supported 0 NVIDIA GeForce 4
+NVIDIA GeForce4 Ti 4200 with AGP8X/AGP/SSE supported 0 NVIDIA G 200
+NVIDIA GeForce4 Ti 4200/AGP/SSE/3DNOW! supported 0 NVIDIA G 200
NVIDIA GeForce4 Ti 4400/AGP/SSE2 supported 0 NVIDIA GeForce 4
-NVIDIA Generic UNRECOGNIZED
+NVIDIA Generic NO MATCH
NVIDIA ION LE/PCI/SSE2 supported 2 NVIDIA ION
NVIDIA ION/PCI/SSE2 supported 2 NVIDIA ION
NVIDIA ION/PCI/SSE2/3DNOW! supported 2 NVIDIA ION
-NVIDIA MCP61/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP61/PCI/SSE2/3DNOW! UNRECOGNIZED
-NVIDIA MCP73/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP79MH/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP79MX/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP7A-O/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP7A-S/PCI/SSE2 UNRECOGNIZED
-NVIDIA MCP89-EPT/PCI/SSE2 UNRECOGNIZED
-NVIDIA N10M-GE1/PCI/SSE2 UNRECOGNIZED
-NVIDIA N10P-GE1/PCI/SSE2 UNRECOGNIZED
-NVIDIA N10P-GV2/PCI/SSE2 UNRECOGNIZED
-NVIDIA N11M-GE1/PCI/SSE2 UNRECOGNIZED
-NVIDIA N11M-GE2/PCI/SSE2 UNRECOGNIZED
-NVIDIA N12E-GS-A1/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9M-GE/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9M-GE1/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9M-GS/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9M-NS/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9P-GE1/PCI/SSE2 UNRECOGNIZED
-NVIDIA NB9P-GS/PCI/SSE2 UNRECOGNIZED
-NVIDIA NV17/AGP/3DNOW! UNRECOGNIZED
-NVIDIA NV17/AGP/SSE2 UNRECOGNIZED
+NVIDIA MCP61/PCI/SSE2 supported 1 NVIDIA MCP61
+NVIDIA MCP61/PCI/SSE2/3DNOW! supported 1 NVIDIA MCP61
+NVIDIA MCP73/PCI/SSE2 supported 1 NVIDIA MCP73
+NVIDIA MCP79MH/PCI/SSE2 supported 1 NVIDIA MCP79
+NVIDIA MCP79MX/PCI/SSE2 supported 1 NVIDIA MCP79
+NVIDIA MCP7A-O/PCI/SSE2 supported 1 NVIDIA MCP7A
+NVIDIA MCP7A-S/PCI/SSE2 supported 1 NVIDIA MCP7A
+NVIDIA MCP89-EPT/PCI/SSE2 NO MATCH
+NVIDIA N10M-GE1/PCI/SSE2 supported 1 NVIDIA N10
+NVIDIA N10P-GE1/PCI/SSE2 supported 1 NVIDIA N10
+NVIDIA N10P-GV2/PCI/SSE2 supported 1 NVIDIA N10
+NVIDIA N11M-GE1/PCI/SSE2 NO MATCH
+NVIDIA N11M-GE2/PCI/SSE2 NO MATCH
+NVIDIA N12E-GS-A1/PCI/SSE2 NO MATCH
+NVIDIA N12P-GVR-B-A1/PCI/SSE2 NO MATCH
+NVIDIA N13M-GE1-B-A1/PCI/SSE2 NO MATCH
+NVIDIA N13P-GL-A1/PCI/SSE2 NO MATCH
+NVIDIA NB9M-GE/PCI/SSE2 supported 1 NVIDIA NB9M
+NVIDIA NB9M-GE1/PCI/SSE2 supported 1 NVIDIA NB9M
+NVIDIA NB9M-GS/PCI/SSE2 supported 1 NVIDIA NB9M
+NVIDIA NB9M-NS/PCI/SSE2 supported 1 NVIDIA NB9M
+NVIDIA NB9P-GE1/PCI/SSE2 supported 2 NVIDIA NB9P
+NVIDIA NB9P-GS/PCI/SSE2 supported 2 NVIDIA NB9P
+NVIDIA NV17/AGP/3DNOW! supported 0 NVIDIA NV17
+NVIDIA NV17/AGP/SSE2 supported 0 NVIDIA NV17
NVIDIA NV34 supported 0 NVIDIA NV34
NVIDIA NV35 supported 0 NVIDIA NV35
-NVIDIA NV36/AGP/SSE/3DNOW! UNRECOGNIZED
-NVIDIA NV36/AGP/SSE2 UNRECOGNIZED
-NVIDIA NV41/PCI/SSE2 UNRECOGNIZED
+NVIDIA NV36/AGP/SSE/3DNOW! supported 1 NVIDIA NV36
+NVIDIA NV36/AGP/SSE2 supported 1 NVIDIA NV36
+NVIDIA NV41/PCI/SSE2 supported 1 NVIDIA NV41
NVIDIA NV43 supported 1 NVIDIA NV43
+NVIDIA NV43/PCI/SSE2 supported 1 NVIDIA NV43
NVIDIA NV44 supported 1 NVIDIA NV44
+NVIDIA NV44/AGP/SSE2 supported 1 NVIDIA NV44
NVIDIA NVIDIA GeForce 210 OpenGL Engine supported 2 NVIDIA 210
NVIDIA NVIDIA GeForce 320M OpenGL Engine supported 2 NVIDIA 320M
NVIDIA NVIDIA GeForce 7300 GT OpenGL Engine supported 1 NVIDIA GeForce 7300
@@ -1364,22 +1454,28 @@ NVIDIA NVIDIA GeForce GTX 460M OpenGL Engine
NVIDIA NVIDIA GeForce GTX 465 OpenGL Engine supported 3 NVIDIA GTX 465
NVIDIA NVIDIA GeForce GTX 470 OpenGL Engine supported 3 NVIDIA GTX 470
NVIDIA NVIDIA GeForce GTX 480 OpenGL Engine supported 3 NVIDIA GTX 480
-NVIDIA NVIDIA GeForce Pre-Release ION OpenGL Engine UNRECOGNIZED
+NVIDIA NVIDIA GeForce Pre-Release GF108 ES OpenGL Engine NO MATCH
+NVIDIA NVIDIA GeForce Pre-Release ION OpenGL Engine supported 2 NVIDIA ION
+NVIDIA NVIDIA GeForce Pre-Release MCP7A-J-DC OpenGL Engine supported 1 NVIDIA MCP7A
NVIDIA NVIDIA GeForce4 OpenGL Engine supported 0 NVIDIA GeForce 4
NVIDIA NVIDIA NV34MAP OpenGL Engine supported 0 NVIDIA NV34
NVIDIA NVIDIA Quadro 4000 OpenGL Engine supported 3 NVIDIA Quadro 4000
NVIDIA NVIDIA Quadro FX 4800 OpenGL Engine supported 3 NVIDIA Quadro FX 4800
-NVIDIA NVS 2100M/PCI/SSE2 supported 2 NVIDIA Quadro NVS 2100M
+NVIDIA NVS 2100M/PCI/SSE2 supported 0 NVIDIA G100M
NVIDIA NVS 300/PCI/SSE2 supported 0 NVIDIA Quadro NVS
-NVIDIA NVS 3100M/PCI/SSE2 supported 2 NVIDIA Quadro NVS 3100M
-NVIDIA NVS 4100/PCI/SSE2/3DNOW! supported 0 NVIDIA Quadro NVS
-NVIDIA NVS 4200M/PCI/SSE2 supported 2 NVIDIA Quadro NVS 4200M
-NVIDIA NVS 5100M/PCI/SSE2 supported 2 NVIDIA Quadro NVS 5100M
-NVIDIA PCI UNRECOGNIZED
-NVIDIA Quadro 2000/PCI/SSE2 supported 3 NVIDIA Quadro 2000 M/D
+NVIDIA NVS 3100M/PCI/SSE2 supported 0 NVIDIA G100M
+NVIDIA NVS 4100/PCI/SSE2/3DNOW! supported 0 NVIDIA G100
+NVIDIA NVS 4200M/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA NVS 5100M/PCI/SSE2 supported 0 NVIDIA G100M
+NVIDIA PCI NO MATCH
+NVIDIA Quadro 1000M/PCI/SSE2 supported 0 NVIDIA G100
+NVIDIA Quadro 2000/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA Quadro 2000M/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA Quadro 3000M/PCI/SSE2 supported 3 NVIDIA Quadro 3000M
NVIDIA Quadro 4000 supported 3 NVIDIA Quadro 4000
NVIDIA Quadro 4000 OpenGL Engine supported 3 NVIDIA Quadro 4000
NVIDIA Quadro 4000/PCI/SSE2 supported 3 NVIDIA Quadro 4000
+NVIDIA Quadro 4000M/PCI/SSE2 supported 3 NVIDIA Quadro 4000M
NVIDIA Quadro 5000/PCI/SSE2 supported 3 NVIDIA Quadro 50x0 M
NVIDIA Quadro 5000M/PCI/SSE2 supported 3 NVIDIA Quadro 50x0 M
NVIDIA Quadro 600 supported 2 NVIDIA Quadro 600
@@ -1387,12 +1483,13 @@ NVIDIA Quadro 600/PCI/SSE2
NVIDIA Quadro 600/PCI/SSE2/3DNOW! supported 2 NVIDIA Quadro 600
NVIDIA Quadro 6000 supported 3 NVIDIA Quadro 6000
NVIDIA Quadro 6000/PCI/SSE2 supported 3 NVIDIA Quadro 6000
-NVIDIA Quadro CX/PCI/SSE2 UNRECOGNIZED
+NVIDIA Quadro CX/PCI/SSE2 supported 3 NVIDIA Quadro CX
NVIDIA Quadro DCC supported 0 NVIDIA Quadro DCC
NVIDIA Quadro FX supported 1 NVIDIA Quadro FX
-NVIDIA Quadro FX 1100/AGP/SSE2 supported 1 NVIDIA Quadro FX
+NVIDIA Quadro FX 1100/AGP/SSE2 supported 0 NVIDIA G100
NVIDIA Quadro FX 1400/PCI/SSE2 supported 2 NVIDIA Quadro 400
NVIDIA Quadro FX 1500 supported 1 NVIDIA Quadro FX
+NVIDIA Quadro FX 1500/PCI/SSE2 supported 1 NVIDIA Quadro FX
NVIDIA Quadro FX 1500M/PCI/SSE2 supported 1 NVIDIA Quadro FX 1500M
NVIDIA Quadro FX 1600M/PCI/SSE2 supported 2 NVIDIA Quadro 600
NVIDIA Quadro FX 1700 supported 1 NVIDIA Quadro FX
@@ -1420,7 +1517,9 @@ NVIDIA Quadro FX 4500
NVIDIA Quadro FX 4600 supported 2 NVIDIA Quadro 600
NVIDIA Quadro FX 4800 supported 3 NVIDIA Quadro FX 4800
NVIDIA Quadro FX 4800/PCI/SSE2 supported 3 NVIDIA Quadro FX 4800
+NVIDIA Quadro FX 540/PCI/SSE2/3DNOW! supported 1 NVIDIA Quadro FX
NVIDIA Quadro FX 560 supported 1 NVIDIA Quadro FX
+NVIDIA Quadro FX 560/PCI/SSE2 supported 1 NVIDIA Quadro FX
NVIDIA Quadro FX 5600 supported 2 NVIDIA Quadro 600
NVIDIA Quadro FX 570 supported 1 NVIDIA Quadro FX
NVIDIA Quadro FX 570/PCI/SSE2 supported 1 NVIDIA Quadro FX
@@ -1431,57 +1530,73 @@ NVIDIA Quadro FX 880M
NVIDIA Quadro FX 880M/PCI/SSE2 supported 3 NVIDIA Quadro FX 880M
NVIDIA Quadro FX Go700/AGP/SSE2 supported 1 NVIDIA Quadro FX
NVIDIA Quadro NVS supported 0 NVIDIA Quadro NVS
-NVIDIA Quadro NVS 110M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
+NVIDIA Quadro NVS 110M/PCI/SSE2 supported 0 NVIDIA G 110M
NVIDIA Quadro NVS 130M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
NVIDIA Quadro NVS 135M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
NVIDIA Quadro NVS 140M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
NVIDIA Quadro NVS 150M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
NVIDIA Quadro NVS 160M/PCI/SSE2 supported 0 NVIDIA Quadro NVS 1xxM
-NVIDIA Quadro NVS 210S/PCI/SSE2/3DNOW! supported 0 NVIDIA Quadro NVS
+NVIDIA Quadro NVS 210S/PCI/SSE2/3DNOW! supported 1 NVIDIA G 210
NVIDIA Quadro NVS 285/PCI/SSE2 supported 0 NVIDIA Quadro NVS
NVIDIA Quadro NVS 290/PCI/SSE2 supported 0 NVIDIA Quadro NVS
NVIDIA Quadro NVS 295/PCI/SSE2 supported 0 NVIDIA Quadro NVS
-NVIDIA Quadro NVS 320M/PCI/SSE2 supported 2 NVIDIA Quadro NVS 320M
+NVIDIA Quadro NVS 320M/PCI/SSE2 supported 2 NVIDIA G 320M
NVIDIA Quadro NVS 55/280 PCI/PCI/SSE2 supported 0 NVIDIA Quadro NVS
NVIDIA Quadro NVS/PCI/SSE2 supported 0 NVIDIA Quadro NVS
-NVIDIA Quadro PCI-E Series/PCI/SSE2/3DNOW! UNRECOGNIZED
-NVIDIA Quadro VX 200/PCI/SSE2 UNRECOGNIZED
-NVIDIA Quadro/AGP/SSE2 UNRECOGNIZED
+NVIDIA Quadro PCI-E Series/PCI/SSE2/3DNOW! NO MATCH
+NVIDIA Quadro VX 200/PCI/SSE2 supported 0 NVIDIA G 200
+NVIDIA Quadro/AGP/SSE2 NO MATCH
NVIDIA Quadro2 supported 0 NVIDIA Quadro2
NVIDIA Quadro4 supported 0 NVIDIA Quadro4
+NVIDIA Quadro4 750 XGL/AGP/SSE2 supported 0 NVIDIA Quadro4
NVIDIA RIVA TNT unsupported 0 NVIDIA RIVA TNT
NVIDIA RIVA TNT2/AGP/SSE2 unsupported 0 NVIDIA RIVA TNT
NVIDIA RIVA TNT2/PCI/3DNOW! unsupported 0 NVIDIA RIVA TNT
+NVIDIA Tesla C2050/PCI/SSE2 supported 0 NVIDIA G 205M
NVIDIA nForce unsupported 0 NVIDIA nForce
-NVIDIA unknown board/AGP/SSE2 UNRECOGNIZED
-NVIDIA unknown board/PCI/SSE2 UNRECOGNIZED
-NVIDIA unknown board/PCI/SSE2/3DNOW! UNRECOGNIZED
+NVIDIA nForce 730a/PCI/SSE2 unsupported 0 NVIDIA nForce
+NVIDIA nForce 730a/PCI/SSE2/3DNOW! unsupported 0 NVIDIA nForce
+NVIDIA nForce 750a SLI/PCI/SSE2 unsupported 0 NVIDIA nForce
+NVIDIA nForce 750a SLI/PCI/SSE2/3DNOW! unsupported 0 NVIDIA nForce
+NVIDIA nForce 760i SLI/PCI/SSE2 unsupported 0 NVIDIA nForce
+NVIDIA nForce 780a SLI/PCI/SSE2/3DNOW! unsupported 0 NVIDIA nForce
+NVIDIA nForce 980a/780a SLI/PCI/SSE2 unsupported 0 NVIDIA nForce
+NVIDIA nForce 980a/780a SLI/PCI/SSE2/3DNOW! unsupported 0 NVIDIA nForce
+NVIDIA unknown board/AGP/SSE2 unsupported 0 NVIDIA Generic
+NVIDIA unknown board/PCI/SSE2 unsupported 0 NVIDIA Generic
+NVIDIA unknown board/PCI/SSE2/3DNOW! unsupported 0 NVIDIA Generic
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5670 OpenGL Engine supported 3 ATI Radeon HD 5600
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5750 OpenGL Engine supported 3 ATI Radeon HD 5700
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5770 OpenGL Engine supported 3 ATI Radeon HD 5700
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6490M OpenGL Engine supported 3 ATI Radeon HD 6400
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6750M OpenGL Engine supported 3 ATI Radeon HD 6700
-Parallels and Intel Inc. 3D-Analyze v2.3 - http://www.tommti-systems.com UNRECOGNIZED
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6770M OpenGL Engine supported 3 ATI Radeon HD 6700
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6970M OpenGL Engine supported 3 ATI Radeon HD 6900
+Parallels and Intel Inc. 3D-Analyze v2.3 - http://www.tommti-systems.com NO MATCH
Parallels and Intel Inc. Parallels using Intel HD Graphics 3000 OpenGL Engine supported 2 Intel HD Graphics
Parallels and NVIDIA Parallels using NVIDIA GeForce 320M OpenGL Engine supported 2 NVIDIA 320M
Parallels and NVIDIA Parallels using NVIDIA GeForce 9400 OpenGL Engine supported 1 NVIDIA GeForce 9400
Parallels and NVIDIA Parallels using NVIDIA GeForce GT 120 OpenGL Engine supported 2 NVIDIA GT 120M
Parallels and NVIDIA Parallels using NVIDIA GeForce GT 330M OpenGL Engine supported 3 NVIDIA GT 330M
Radeon RV350 on Gallium supported 0 ATI RV350 (9600)
-S3 UNRECOGNIZED
+S3 NO MATCH
+S3 Fire GL2 NO MATCH
S3 Graphics VIA/S3G UniChrome IGP/MMX/K3D unsupported 0 S3
+S3 Graphics VIA/S3G UniChrome IGP/MMX/SSE unsupported 0 S3
S3 Graphics VIA/S3G UniChrome Pro IGP/MMX/SSE unsupported 0 S3
S3 Graphics, Incorporated ProSavage/Twister unsupported 0 S3
S3 Graphics, Incorporated S3 Graphics Chrome9 HC unsupported 0 S3
S3 Graphics, Incorporated S3 Graphics DeltaChrome unsupported 0 S3
S3 Graphics, Incorporated VIA Chrome9 HC IGP unsupported 0 S3
SiS unsupported 0 SiS
+SiS 650/M650 VGA unsupported 0 SiS
SiS 661 VGA unsupported 0 SiS
SiS 662 VGA unsupported 0 SiS
SiS 741 VGA unsupported 0 SiS
SiS 760 VGA unsupported 0 SiS
SiS 761GX VGA unsupported 0 SiS
SiS Mirage Graphics3 unsupported 0 SiS
+SiS Xabre VGA unsupported 0 SiS
Trident unsupported 0 Trident
Tungsten Graphics unsupported 0 Tungsten Graphics
Tungsten Graphics, Inc Mesa DRI 865G GEM 20091221 2009Q4 x86/MMX/SSE2 unsupported 0 Mesa
@@ -1520,22 +1635,27 @@ Tungsten Graphics, Inc Mesa DRI IGD GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI IGDNG_D GEM 20091221 2009Q4 x86/MMX/SSE2 unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Ironlake Desktop GEM 20100330 DEVELOPMENT x86/MMX/SSE2 unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Ironlake Mobile GEM 20100330 DEVELOPMENT x86/MMX/SSE2 unsupported 0 Mesa
+Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset 20080716 x86/MMX/SSE2 unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20090712 2009Q2 RC3 x86/MMX... unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20091221 2009Q4 x86/MMX/SSE2 unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100328 2010Q1 unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100330 DEVELOPMENT unsupported 0 Mesa
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100330 DEVELOPMENT x86/MM... unsupported 0 Mesa
+Tungsten Graphics, Inc. Mesa DRI R200 (RV250 4C66) 20090101 x86/MMX/SSE2 TCL DRI2 unsupported 0 Mesa
Tungsten Graphics, Inc. Mesa DRI R200 (RV280 5964) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2 unsupported 0 Mesa
VIA unsupported 0 VIA
-VMware, Inc. Gallium 0.3 on SVGA3D; build: RELEASE; UNRECOGNIZED
-VMware, Inc. Gallium 0.4 on i915 (chipset: 945GM) UNRECOGNIZED
-VMware, Inc. Gallium 0.4 on llvmpipe UNRECOGNIZED
-VMware, Inc. Gallium 0.4 on softpipe UNRECOGNIZED
+VMware, Inc. Gallium 0.3 on SVGA3D; build: RELEASE; NO MATCH
+VMware, Inc. Gallium 0.4 on SVGA3D; build: DEBUG; mutex: MSVC Intrinsics NO MATCH
+VMware, Inc. Gallium 0.4 on SVGA3D; build: RELEASE; NO MATCH
+VMware, Inc. Gallium 0.4 on i915 (chipset: 945GM) NO MATCH
+VMware, Inc. Gallium 0.4 on llvmpipe NO MATCH
+VMware, Inc. Gallium 0.4 on softpipe NO MATCH
X.Org Gallium 0.4 on AMD BARTS supported 3 AMD BARTS (HD 6800)
X.Org Gallium 0.4 on AMD CEDAR supported 2 AMD CEDAR (HD 5450)
X.Org Gallium 0.4 on AMD HEMLOCK supported 3 AMD HEMLOCK (HD 5970)
X.Org Gallium 0.4 on AMD JUNIPER supported 3 AMD JUNIPER (HD 5700)
+X.Org Gallium 0.4 on AMD PALM NO MATCH
X.Org Gallium 0.4 on AMD REDWOOD supported 3 AMD REDWOOD (HD 5500/5600)
X.Org Gallium 0.4 on AMD RS780 supported 0 AMD RS780 (HD 3200)
X.Org Gallium 0.4 on AMD RS880 supported 1 AMD RS880 (HD 4200)
@@ -1548,16 +1668,21 @@ X.Org Gallium 0.4 on AMD RV730
X.Org Gallium 0.4 on AMD RV740 supported 3 AMD RV740 (HD 4700)
X.Org Gallium 0.4 on AMD RV770 supported 3 AMD RV770 (HD 4800)
X.Org R300 Project Gallium 0.4 on ATI R300 supported 1 ATI R300 (9700)
+X.Org R300 Project Gallium 0.4 on ATI R350 supported 1 ATI R350 (9800)
+X.Org R300 Project Gallium 0.4 on ATI R420 supported 1 ATI R300 (9700)
X.Org R300 Project Gallium 0.4 on ATI R580 supported 3 ATI R580 (X1900)
X.Org R300 Project Gallium 0.4 on ATI RC410 unsupported 0 ATI RC410 (Xpress 200)
+X.Org R300 Project Gallium 0.4 on ATI RS480 unsupported 0 ATI RS48x (Xpress 200x)
X.Org R300 Project Gallium 0.4 on ATI RS482 unsupported 0 ATI RS48x (Xpress 200x)
X.Org R300 Project Gallium 0.4 on ATI RS600 unsupported 0 ATI RS600 (Xpress 3200)
X.Org R300 Project Gallium 0.4 on ATI RS690 supported 1 ATI R300 (9700)
+X.Org R300 Project Gallium 0.4 on ATI RS740 supported 1 ATI R300 (9700)
X.Org R300 Project Gallium 0.4 on ATI RV350 supported 0 ATI RV350 (9600)
X.Org R300 Project Gallium 0.4 on ATI RV370 supported 0 ATI RV370 (X300)
X.Org R300 Project Gallium 0.4 on ATI RV410 supported 1 ATI RV410 (X700)
X.Org R300 Project Gallium 0.4 on ATI RV515 supported 1 ATI RV515
X.Org R300 Project Gallium 0.4 on ATI RV530 supported 1 ATI RV530
+X.Org R300 Project Gallium 0.4 on ATI RV560 supported 1 ATI R300 (9700)
X.Org R300 Project Gallium 0.4 on ATI RV570 supported 3 ATI RV570 (X1900 GT/PRO)
X.Org R300 Project Gallium 0.4 on R420 supported 1 ATI R300 (9700)
X.Org R300 Project Gallium 0.4 on R580 supported 3 ATI R580 (X1900)
@@ -1573,23 +1698,29 @@ X.Org R300 Project Gallium 0.4 on RV410
X.Org R300 Project Gallium 0.4 on RV515 supported 1 ATI RV515
X.Org R300 Project Gallium 0.4 on RV530 supported 1 ATI RV530
XGI unsupported 0 XGI
-nouveau Gallium 0.4 on NV34 UNRECOGNIZED
-nouveau Gallium 0.4 on NV36 UNRECOGNIZED
-nouveau Gallium 0.4 on NV46 UNRECOGNIZED
-nouveau Gallium 0.4 on NV49 UNRECOGNIZED
-nouveau Gallium 0.4 on NV4A UNRECOGNIZED
-nouveau Gallium 0.4 on NV4B UNRECOGNIZED
-nouveau Gallium 0.4 on NV4E UNRECOGNIZED
-nouveau Gallium 0.4 on NV50 UNRECOGNIZED
-nouveau Gallium 0.4 on NV84 UNRECOGNIZED
-nouveau Gallium 0.4 on NV86 UNRECOGNIZED
-nouveau Gallium 0.4 on NV92 UNRECOGNIZED
-nouveau Gallium 0.4 on NV94 UNRECOGNIZED
-nouveau Gallium 0.4 on NV96 UNRECOGNIZED
-nouveau Gallium 0.4 on NV98 UNRECOGNIZED
-nouveau Gallium 0.4 on NVA0 UNRECOGNIZED
-nouveau Gallium 0.4 on NVA3 UNRECOGNIZED
-nouveau Gallium 0.4 on NVA5 UNRECOGNIZED
-nouveau Gallium 0.4 on NVA8 UNRECOGNIZED
-nouveau Gallium 0.4 on NVAA UNRECOGNIZED
-nouveau Gallium 0.4 on NVAC UNRECOGNIZED
+nouveau Gallium 0.4 on NV31 NO MATCH
+nouveau Gallium 0.4 on NV34 NO MATCH
+nouveau Gallium 0.4 on NV36 NO MATCH
+nouveau Gallium 0.4 on NV43 NO MATCH
+nouveau Gallium 0.4 on NV44 NO MATCH
+nouveau Gallium 0.4 on NV46 NO MATCH
+nouveau Gallium 0.4 on NV49 NO MATCH
+nouveau Gallium 0.4 on NV4A NO MATCH
+nouveau Gallium 0.4 on NV4B NO MATCH
+nouveau Gallium 0.4 on NV4C NO MATCH
+nouveau Gallium 0.4 on NV4E NO MATCH
+nouveau Gallium 0.4 on NV50 NO MATCH
+nouveau Gallium 0.4 on NV63 NO MATCH
+nouveau Gallium 0.4 on NV67 NO MATCH
+nouveau Gallium 0.4 on NV84 NO MATCH
+nouveau Gallium 0.4 on NV86 NO MATCH
+nouveau Gallium 0.4 on NV92 NO MATCH
+nouveau Gallium 0.4 on NV94 NO MATCH
+nouveau Gallium 0.4 on NV96 NO MATCH
+nouveau Gallium 0.4 on NV98 NO MATCH
+nouveau Gallium 0.4 on NVA0 NO MATCH
+nouveau Gallium 0.4 on NVA3 NO MATCH
+nouveau Gallium 0.4 on NVA5 NO MATCH
+nouveau Gallium 0.4 on NVA8 NO MATCH
+nouveau Gallium 0.4 on NVAA NO MATCH
+nouveau Gallium 0.4 on NVAC NO MATCH
diff --git a/indra/newview/tests/gpus_seen.txt b/indra/newview/tests/gpus_seen.txt
index c807f22b58..570f92a9b0 100644
--- a/indra/newview/tests/gpus_seen.txt
+++ b/indra/newview/tests/gpus_seen.txt
@@ -135,94 +135,183 @@ ATI Rage 128
ATI Technologies Inc.
ATI Technologies Inc. x86
ATI Technologies Inc. x86/SSE2
+ATI Technologies Inc. x86/SSE2
ATI Technologies Inc. (Vista) ATI Mobility Radeon HD 5730
+ATI Technologies Inc. 128MB ATI Radeon X1300 x86/SSE2
ATI Technologies Inc. 256MB ATI Radeon X1300PRO x86/SSE2
ATI Technologies Inc. AMD 760G
+ATI Technologies Inc. AMD 760G
ATI Technologies Inc. AMD 760G (Microsoft WDDM 1.1)
ATI Technologies Inc. AMD 780L
ATI Technologies Inc. AMD FirePro 2270
ATI Technologies Inc. AMD M860G with ATI Mobility Radeon 4100
+ATI Technologies Inc. AMD M860G with ATI Mobility Radeon 4100
ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4200
+ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4200
+ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4250
ATI Technologies Inc. AMD M880G with ATI Mobility Radeon HD 4250
+ATI Technologies Inc. AMD RADEON HD 6350
+ATI Technologies Inc. AMD RADEON HD 6450
ATI Technologies Inc. AMD RADEON HD 6450
+ATI Technologies Inc. AMD RADEON HD 6670
+ATI Technologies Inc. AMD Radeon 6600M and 6700M Series
ATI Technologies Inc. AMD Radeon HD 6200 series Graphics
+ATI Technologies Inc. AMD Radeon HD 6200 series Graphics
+ATI Technologies Inc. AMD Radeon HD 6250 Graphics
ATI Technologies Inc. AMD Radeon HD 6250 Graphics
+ATI Technologies Inc. AMD Radeon HD 6290 Graphics
+ATI Technologies Inc. AMD Radeon HD 6300 series Graphics
ATI Technologies Inc. AMD Radeon HD 6300 series Graphics
ATI Technologies Inc. AMD Radeon HD 6300M Series
+ATI Technologies Inc. AMD Radeon HD 6300M Series
+ATI Technologies Inc. AMD Radeon HD 6310 Graphics
ATI Technologies Inc. AMD Radeon HD 6310 Graphics
ATI Technologies Inc. AMD Radeon HD 6310M
+ATI Technologies Inc. AMD Radeon HD 6310M
+ATI Technologies Inc. AMD Radeon HD 6330M
ATI Technologies Inc. AMD Radeon HD 6330M
ATI Technologies Inc. AMD Radeon HD 6350
ATI Technologies Inc. AMD Radeon HD 6370M
+ATI Technologies Inc. AMD Radeon HD 6370M
ATI Technologies Inc. AMD Radeon HD 6400M Series
+ATI Technologies Inc. AMD Radeon HD 6400M Series
+ATI Technologies Inc. AMD Radeon HD 6450
ATI Technologies Inc. AMD Radeon HD 6450
ATI Technologies Inc. AMD Radeon HD 6470M
+ATI Technologies Inc. AMD Radeon HD 6470M
ATI Technologies Inc. AMD Radeon HD 6490M
+ATI Technologies Inc. AMD Radeon HD 6490M
+ATI Technologies Inc. AMD Radeon HD 6500 Series
+ATI Technologies Inc. AMD Radeon HD 6500M Series
+ATI Technologies Inc. AMD Radeon HD 6500M/5600/5700 Series
ATI Technologies Inc. AMD Radeon HD 6500M/5600/5700 Series
ATI Technologies Inc. AMD Radeon HD 6530M
+ATI Technologies Inc. AMD Radeon HD 6530M
ATI Technologies Inc. AMD Radeon HD 6550M
+ATI Technologies Inc. AMD Radeon HD 6550M
+ATI Technologies Inc. AMD Radeon HD 6570
ATI Technologies Inc. AMD Radeon HD 6570
ATI Technologies Inc. AMD Radeon HD 6570M
+ATI Technologies Inc. AMD Radeon HD 6570M
+ATI Technologies Inc. AMD Radeon HD 6570M/5700 Series
ATI Technologies Inc. AMD Radeon HD 6570M/5700 Series
+ATI Technologies Inc. AMD Radeon HD 6600 Series
ATI Technologies Inc. AMD Radeon HD 6600M Series
+ATI Technologies Inc. AMD Radeon HD 6630M
+ATI Technologies Inc. AMD Radeon HD 6650M
ATI Technologies Inc. AMD Radeon HD 6650M
ATI Technologies Inc. AMD Radeon HD 6670
+ATI Technologies Inc. AMD Radeon HD 6670
+ATI Technologies Inc. AMD Radeon HD 6700 Series
ATI Technologies Inc. AMD Radeon HD 6700 Series
ATI Technologies Inc. AMD Radeon HD 6750
+ATI Technologies Inc. AMD Radeon HD 6750
ATI Technologies Inc. AMD Radeon HD 6750M
+ATI Technologies Inc. AMD Radeon HD 6750M
+ATI Technologies Inc. AMD Radeon HD 6770
ATI Technologies Inc. AMD Radeon HD 6770
+ATI Technologies Inc. AMD Radeon HD 6770M
+ATI Technologies Inc. AMD Radeon HD 6800 Series
ATI Technologies Inc. AMD Radeon HD 6800 Series
+ATI Technologies Inc. AMD Radeon HD 6800M Series
+ATI Technologies Inc. AMD Radeon HD 6850
ATI Technologies Inc. AMD Radeon HD 6850M
+ATI Technologies Inc. AMD Radeon HD 6850M
+ATI Technologies Inc. AMD Radeon HD 6870
ATI Technologies Inc. AMD Radeon HD 6870
ATI Technologies Inc. AMD Radeon HD 6870M
+ATI Technologies Inc. AMD Radeon HD 6870M
+ATI Technologies Inc. AMD Radeon HD 6900 Series
ATI Technologies Inc. AMD Radeon HD 6900 Series
+ATI Technologies Inc. AMD Radeon HD 6900M Series
+ATI Technologies Inc. AMD Radeon HD 6970M
ATI Technologies Inc. AMD Radeon HD 6970M
ATI Technologies Inc. AMD Radeon HD 6990
+ATI Technologies Inc. AMD Radeon HD 6990
+ATI Technologies Inc. AMD Radeon(TM) HD 6470M
+ATI Technologies Inc. AMD Radeon(TM) HD 6470M
ATI Technologies Inc. AMD Radeon(TM) HD 6470M
+ATI Technologies Inc. AMD Radeon(TM) HD 6480G
+ATI Technologies Inc. AMD Radeon(TM) HD 6520G
+ATI Technologies Inc. AMD Radeon(TM) HD 6620G
+ATI Technologies Inc. AMD Radeon(TM) HD 6630M
ATI Technologies Inc. ASUS 5870 Eyefinity 6
+ATI Technologies Inc. ASUS A9550 Series
ATI Technologies Inc. ASUS AH2600 Series
ATI Technologies Inc. ASUS AH3450 Series
ATI Technologies Inc. ASUS AH3650 Series
+ATI Technologies Inc. ASUS AH3650 Series
ATI Technologies Inc. ASUS AH4650 Series
ATI Technologies Inc. ASUS ARES
+ATI Technologies Inc. ASUS ARES
ATI Technologies Inc. ASUS EAH2900 Series
ATI Technologies Inc. ASUS EAH3450 Series
+ATI Technologies Inc. ASUS EAH3450 Series
ATI Technologies Inc. ASUS EAH3650 Series
+ATI Technologies Inc. ASUS EAH3650 Series
+ATI Technologies Inc. ASUS EAH4350 series
ATI Technologies Inc. ASUS EAH4350 series
ATI Technologies Inc. ASUS EAH4550 series
+ATI Technologies Inc. ASUS EAH4550 series
ATI Technologies Inc. ASUS EAH4650 series
ATI Technologies Inc. ASUS EAH4670 series
+ATI Technologies Inc. ASUS EAH4670 series
ATI Technologies Inc. ASUS EAH4750 Series
ATI Technologies Inc. ASUS EAH4770 Series
+ATI Technologies Inc. ASUS EAH4770 Series
+ATI Technologies Inc. ASUS EAH4770 series
ATI Technologies Inc. ASUS EAH4770 series
ATI Technologies Inc. ASUS EAH4850 series
ATI Technologies Inc. ASUS EAH5450 Series
+ATI Technologies Inc. ASUS EAH5450 Series
+ATI Technologies Inc. ASUS EAH5550 Series
ATI Technologies Inc. ASUS EAH5550 Series
ATI Technologies Inc. ASUS EAH5570 series
+ATI Technologies Inc. ASUS EAH5570 series
+ATI Technologies Inc. ASUS EAH5670 Series
ATI Technologies Inc. ASUS EAH5670 Series
ATI Technologies Inc. ASUS EAH5750 Series
+ATI Technologies Inc. ASUS EAH5750 Series
+ATI Technologies Inc. ASUS EAH5770 Series
ATI Technologies Inc. ASUS EAH5770 Series
ATI Technologies Inc. ASUS EAH5830 Series
ATI Technologies Inc. ASUS EAH5850 Series
+ATI Technologies Inc. ASUS EAH5850 Series
ATI Technologies Inc. ASUS EAH5870 Series
+ATI Technologies Inc. ASUS EAH5870 Series
+ATI Technologies Inc. ASUS EAH5970 Series
ATI Technologies Inc. ASUS EAH5970 Series
+ATI Technologies Inc. ASUS EAH6450 Series
+ATI Technologies Inc. ASUS EAH6570 Series
+ATI Technologies Inc. ASUS EAH6670 Series
+ATI Technologies Inc. ASUS EAH6850 Series
ATI Technologies Inc. ASUS EAH6850 Series
ATI Technologies Inc. ASUS EAH6870 Series
+ATI Technologies Inc. ASUS EAH6870 Series
+ATI Technologies Inc. ASUS EAH6950 Series
ATI Technologies Inc. ASUS EAH6950 Series
ATI Technologies Inc. ASUS EAH6970 Series
+ATI Technologies Inc. ASUS EAH6970 Series
ATI Technologies Inc. ASUS EAHG4670 series
ATI Technologies Inc. ASUS Extreme AX600 Series
+ATI Technologies Inc. ASUS Extreme AX600 Series
+ATI Technologies Inc. ASUS Extreme AX600XT-TD
ATI Technologies Inc. ASUS Extreme AX600XT-TD
ATI Technologies Inc. ASUS X1300 Series x86/SSE2
ATI Technologies Inc. ASUS X1550 Series
ATI Technologies Inc. ASUS X1950 Series x86/SSE2
ATI Technologies Inc. ASUS X800 Series
+ATI Technologies Inc. ASUS X800 Series
ATI Technologies Inc. ASUS X850 Series
ATI Technologies Inc. ATI All-in-Wonder HD
ATI Technologies Inc. ATI FirePro 2260
+ATI Technologies Inc. ATI FirePro 2260
ATI Technologies Inc. ATI FirePro 2450
ATI Technologies Inc. ATI FirePro M5800
+ATI Technologies Inc. ATI FirePro M5800
ATI Technologies Inc. ATI FirePro M7740
+ATI Technologies Inc. ATI FirePro M7740
+ATI Technologies Inc. ATI FirePro M7820
ATI Technologies Inc. ATI FirePro M7820
ATI Technologies Inc. ATI FirePro V3700 (FireGL)
ATI Technologies Inc. ATI FirePro V3800
@@ -230,113 +319,202 @@ ATI Technologies Inc. ATI FirePro V4800
ATI Technologies Inc. ATI FirePro V4800 (FireGL)
ATI Technologies Inc. ATI FirePro V5800
ATI Technologies Inc. ATI FirePro V7800
+ATI Technologies Inc. ATI MOBILITY RADEON 9600/9700 Series
+ATI Technologies Inc. ATI MOBILITY RADEON 9XXX x86/SSE2
ATI Technologies Inc. ATI MOBILITY RADEON 9XXX x86/SSE2
+ATI Technologies Inc. ATI MOBILITY RADEON HD 2300
ATI Technologies Inc. ATI MOBILITY RADEON HD 3450
+ATI Technologies Inc. ATI MOBILITY RADEON HD 3650
ATI Technologies Inc. ATI MOBILITY RADEON X1600
+ATI Technologies Inc. ATI MOBILITY RADEON X1600
+ATI Technologies Inc. ATI MOBILITY RADEON X2300
ATI Technologies Inc. ATI MOBILITY RADEON X2300
ATI Technologies Inc. ATI MOBILITY RADEON X2300 HD x86/SSE2
ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI MOBILITY RADEON X2300 x86/SSE2
ATI Technologies Inc. ATI MOBILITY RADEON X300
+ATI Technologies Inc. ATI MOBILITY RADEON X300
ATI Technologies Inc. ATI MOBILITY RADEON X600
+ATI Technologies Inc. ATI MOBILITY RADEON X700
+ATI Technologies Inc. ATI MOBILITY RADEON XPRESS 200
ATI Technologies Inc. ATI MOBILITY RADEON XPRESS 200
ATI Technologies Inc. ATI Mobility FireGL V5700
+ATI Technologies Inc. ATI Mobility FireGL V5700
ATI Technologies Inc. ATI Mobility Radeon 4100
+ATI Technologies Inc. ATI Mobility Radeon 4100
+ATI Technologies Inc. ATI Mobility Radeon Graphics
ATI Technologies Inc. ATI Mobility Radeon Graphics
ATI Technologies Inc. ATI Mobility Radeon HD 2300
+ATI Technologies Inc. ATI Mobility Radeon HD 2300
+ATI Technologies Inc. ATI Mobility Radeon HD 2400
ATI Technologies Inc. ATI Mobility Radeon HD 2400
ATI Technologies Inc. ATI Mobility Radeon HD 2400 XT
+ATI Technologies Inc. ATI Mobility Radeon HD 2400 XT
+ATI Technologies Inc. ATI Mobility Radeon HD 2600
ATI Technologies Inc. ATI Mobility Radeon HD 2600
ATI Technologies Inc. ATI Mobility Radeon HD 2600 XT
ATI Technologies Inc. ATI Mobility Radeon HD 2700
+ATI Technologies Inc. ATI Mobility Radeon HD 2700
+ATI Technologies Inc. ATI Mobility Radeon HD 3400 Series
ATI Technologies Inc. ATI Mobility Radeon HD 3400 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 3410
ATI Technologies Inc. ATI Mobility Radeon HD 3430
+ATI Technologies Inc. ATI Mobility Radeon HD 3430
+ATI Technologies Inc. ATI Mobility Radeon HD 3450
ATI Technologies Inc. ATI Mobility Radeon HD 3450
ATI Technologies Inc. ATI Mobility Radeon HD 3470
+ATI Technologies Inc. ATI Mobility Radeon HD 3470
ATI Technologies Inc. ATI Mobility Radeon HD 3470 Hybrid X2
ATI Technologies Inc. ATI Mobility Radeon HD 3650
+ATI Technologies Inc. ATI Mobility Radeon HD 3650
+ATI Technologies Inc. ATI Mobility Radeon HD 3670
+ATI Technologies Inc. ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4200
ATI Technologies Inc. ATI Mobility Radeon HD 4200 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4200 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4225
ATI Technologies Inc. ATI Mobility Radeon HD 4225 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4225 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4250
ATI Technologies Inc. ATI Mobility Radeon HD 4250
ATI Technologies Inc. ATI Mobility Radeon HD 4250 Graphics
+ATI Technologies Inc. ATI Mobility Radeon HD 4250 Graphics
+ATI Technologies Inc. ATI Mobility Radeon HD 4250 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4270
ATI Technologies Inc. ATI Mobility Radeon HD 4300 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4300 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4300/4500 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4300/4500 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4330
+ATI Technologies Inc. ATI Mobility Radeon HD 4330
ATI Technologies Inc. ATI Mobility Radeon HD 4330 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4350
ATI Technologies Inc. ATI Mobility Radeon HD 4350 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4350 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4500 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4500 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4500/5100 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4500/5100 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4530
ATI Technologies Inc. ATI Mobility Radeon HD 4530
ATI Technologies Inc. ATI Mobility Radeon HD 4530 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4530 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4550
ATI Technologies Inc. ATI Mobility Radeon HD 4550
ATI Technologies Inc. ATI Mobility Radeon HD 4570
+ATI Technologies Inc. ATI Mobility Radeon HD 4570
ATI Technologies Inc. ATI Mobility Radeon HD 4600 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4600 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4650
ATI Technologies Inc. ATI Mobility Radeon HD 4650
ATI Technologies Inc. ATI Mobility Radeon HD 4650 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4650 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 4670
ATI Technologies Inc. ATI Mobility Radeon HD 4670
ATI Technologies Inc. ATI Mobility Radeon HD 4830 Series
ATI Technologies Inc. ATI Mobility Radeon HD 4850
ATI Technologies Inc. ATI Mobility Radeon HD 4870
+ATI Technologies Inc. ATI Mobility Radeon HD 4870
+ATI Technologies Inc. ATI Mobility Radeon HD 5000
ATI Technologies Inc. ATI Mobility Radeon HD 5000
ATI Technologies Inc. ATI Mobility Radeon HD 5000 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5000 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5145
ATI Technologies Inc. ATI Mobility Radeon HD 5145
ATI Technologies Inc. ATI Mobility Radeon HD 5165
+ATI Technologies Inc. ATI Mobility Radeon HD 5165
+ATI Technologies Inc. ATI Mobility Radeon HD 530v
ATI Technologies Inc. ATI Mobility Radeon HD 530v
ATI Technologies Inc. ATI Mobility Radeon HD 5400 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5400 Series
ATI Technologies Inc. ATI Mobility Radeon HD 540v
ATI Technologies Inc. ATI Mobility Radeon HD 5430
+ATI Technologies Inc. ATI Mobility Radeon HD 5430
+ATI Technologies Inc. ATI Mobility Radeon HD 5450
ATI Technologies Inc. ATI Mobility Radeon HD 5450
ATI Technologies Inc. ATI Mobility Radeon HD 5450 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5450 Series
ATI Technologies Inc. ATI Mobility Radeon HD 545v
+ATI Technologies Inc. ATI Mobility Radeon HD 545v
+ATI Technologies Inc. ATI Mobility Radeon HD 5470
ATI Technologies Inc. ATI Mobility Radeon HD 5470
ATI Technologies Inc. ATI Mobility Radeon HD 550v
+ATI Technologies Inc. ATI Mobility Radeon HD 550v
+ATI Technologies Inc. ATI Mobility Radeon HD 5600/5700 Series
ATI Technologies Inc. ATI Mobility Radeon HD 5600/5700 Series
ATI Technologies Inc. ATI Mobility Radeon HD 560v
ATI Technologies Inc. ATI Mobility Radeon HD 5650
+ATI Technologies Inc. ATI Mobility Radeon HD 5650
ATI Technologies Inc. ATI Mobility Radeon HD 5700 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5700 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5730
ATI Technologies Inc. ATI Mobility Radeon HD 5730
ATI Technologies Inc. ATI Mobility Radeon HD 5800 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5800 Series
+ATI Technologies Inc. ATI Mobility Radeon HD 5830 Series
ATI Technologies Inc. ATI Mobility Radeon HD 5850
+ATI Technologies Inc. ATI Mobility Radeon HD 5850
+ATI Technologies Inc. ATI Mobility Radeon HD 5870
ATI Technologies Inc. ATI Mobility Radeon HD 5870
ATI Technologies Inc. ATI Mobility Radeon HD 6300 series
+ATI Technologies Inc. ATI Mobility Radeon HD 6300 series
+ATI Technologies Inc. ATI Mobility Radeon HD 6370
ATI Technologies Inc. ATI Mobility Radeon HD 6370
ATI Technologies Inc. ATI Mobility Radeon HD 6470M
ATI Technologies Inc. ATI Mobility Radeon HD 6550
+ATI Technologies Inc. ATI Mobility Radeon HD 6550
+ATI Technologies Inc. ATI Mobility Radeon HD 6570
ATI Technologies Inc. ATI Mobility Radeon HD 6570
ATI Technologies Inc. ATI Mobility Radeon X1300
+ATI Technologies Inc. ATI Mobility Radeon X1300
ATI Technologies Inc. ATI Mobility Radeon X1300 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1300 x86/SSE2
+ATI Technologies Inc. ATI Mobility Radeon X1300 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1350
ATI Technologies Inc. ATI Mobility Radeon X1350 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1400
+ATI Technologies Inc. ATI Mobility Radeon X1400
+ATI Technologies Inc. ATI Mobility Radeon X1400 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1400 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1600
+ATI Technologies Inc. ATI Mobility Radeon X1600
+ATI Technologies Inc. ATI Mobility Radeon X1600 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1600 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X1700 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X2300
+ATI Technologies Inc. ATI Mobility Radeon X2300
ATI Technologies Inc. ATI Mobility Radeon X2300 (Omega 3.8.442)
ATI Technologies Inc. ATI Mobility Radeon X2300 x86
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86
ATI Technologies Inc. ATI Mobility Radeon X2300 x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI Mobility Radeon X2300 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X2300 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon X2500
+ATI Technologies Inc. ATI Mobility Radeon X2500
ATI Technologies Inc. ATI Mobility Radeon X2500 x86/SSE2
ATI Technologies Inc. ATI Mobility Radeon. HD 530v
+ATI Technologies Inc. ATI Mobility Radeon. HD 530v
+ATI Technologies Inc. ATI Mobility Radeon. HD 5470
ATI Technologies Inc. ATI Mobility Radeon. HD 5470
ATI Technologies Inc. ATI RADEON HD 3200 T25XX by CAMILO
ATI Technologies Inc. ATI RADEON XPRESS 1100
+ATI Technologies Inc. ATI RADEON XPRESS 1100 x86/SSE2
+ATI Technologies Inc. ATI RADEON XPRESS 200 Series
ATI Technologies Inc. ATI RADEON XPRESS 200 Series
ATI Technologies Inc. ATI RADEON XPRESS 200 Series x86/SSE2
ATI Technologies Inc. ATI RADEON XPRESS 200M SERIES
ATI Technologies Inc. ATI Radeon
ATI Technologies Inc. ATI Radeon 2100
+ATI Technologies Inc. ATI Radeon 2100
ATI Technologies Inc. ATI Radeon 2100 (Microsoft - WDDM)
ATI Technologies Inc. ATI Radeon 2100 Graphics
ATI Technologies Inc. ATI Radeon 3000
+ATI Technologies Inc. ATI Radeon 3000
ATI Technologies Inc. ATI Radeon 3000 Graphics
+ATI Technologies Inc. ATI Radeon 3000 Graphics
+ATI Technologies Inc. ATI Radeon 3100 Graphics
ATI Technologies Inc. ATI Radeon 3100 Graphics
ATI Technologies Inc. ATI Radeon 5xxx series
ATI Technologies Inc. ATI Radeon 9550 / X1050 Series
@@ -347,143 +525,239 @@ ATI Technologies Inc. ATI Radeon 9600 / X1050 Series
ATI Technologies Inc. ATI Radeon 9600/9550/X1050 Series
ATI Technologies Inc. ATI Radeon BA Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon BB Prototype OpenGL Engine
+ATI Technologies Inc. ATI Radeon Broadway XT Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Cedar PRO Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Cypress PRO Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Graphics Processor
+ATI Technologies Inc. ATI Radeon Graphics Processor
ATI Technologies Inc. ATI Radeon HD 2200 Graphics
ATI Technologies Inc. ATI Radeon HD 2350
ATI Technologies Inc. ATI Radeon HD 2400
+ATI Technologies Inc. ATI Radeon HD 2400
+ATI Technologies Inc. ATI Radeon HD 2400 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 2400 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 2400 PRO
ATI Technologies Inc. ATI Radeon HD 2400 PRO AGP
ATI Technologies Inc. ATI Radeon HD 2400 Pro
+ATI Technologies Inc. ATI Radeon HD 2400 Pro
ATI Technologies Inc. ATI Radeon HD 2400 Series
+ATI Technologies Inc. ATI Radeon HD 2400 Series
+ATI Technologies Inc. ATI Radeon HD 2400 XT
ATI Technologies Inc. ATI Radeon HD 2400 XT
ATI Technologies Inc. ATI Radeon HD 2400 XT OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 2400 XT OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 2600 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 2600 PRO
ATI Technologies Inc. ATI Radeon HD 2600 PRO OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 2600 PRO OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 2600 Pro
ATI Technologies Inc. ATI Radeon HD 2600 Pro
ATI Technologies Inc. ATI Radeon HD 2600 Series
ATI Technologies Inc. ATI Radeon HD 2600 XT
+ATI Technologies Inc. ATI Radeon HD 2600 XT
ATI Technologies Inc. ATI Radeon HD 2900 GT
ATI Technologies Inc. ATI Radeon HD 2900 XT
ATI Technologies Inc. ATI Radeon HD 3200 Graphics
+ATI Technologies Inc. ATI Radeon HD 3200 Graphics
ATI Technologies Inc. ATI Radeon HD 3300 Graphics
ATI Technologies Inc. ATI Radeon HD 3400 Series
+ATI Technologies Inc. ATI Radeon HD 3400 Series
ATI Technologies Inc. ATI Radeon HD 3450
+ATI Technologies Inc. ATI Radeon HD 3450
+ATI Technologies Inc. ATI Radeon HD 3450 - Dell Optiplex
ATI Technologies Inc. ATI Radeon HD 3450 - Dell Optiplex
ATI Technologies Inc. ATI Radeon HD 3470
ATI Technologies Inc. ATI Radeon HD 3470 - Dell Optiplex
ATI Technologies Inc. ATI Radeon HD 3550
+ATI Technologies Inc. ATI Radeon HD 3550
ATI Technologies Inc. ATI Radeon HD 3600 Series
+ATI Technologies Inc. ATI Radeon HD 3600 Series
+ATI Technologies Inc. ATI Radeon HD 3650
ATI Technologies Inc. ATI Radeon HD 3650
ATI Technologies Inc. ATI Radeon HD 3650 AGP
ATI Technologies Inc. ATI Radeon HD 3730
ATI Technologies Inc. ATI Radeon HD 3800 Series
+ATI Technologies Inc. ATI Radeon HD 3800 Series
+ATI Technologies Inc. ATI Radeon HD 3850
ATI Technologies Inc. ATI Radeon HD 3850
ATI Technologies Inc. ATI Radeon HD 3850 AGP
ATI Technologies Inc. ATI Radeon HD 3870
+ATI Technologies Inc. ATI Radeon HD 3870
ATI Technologies Inc. ATI Radeon HD 3870 X2
ATI Technologies Inc. ATI Radeon HD 4200
+ATI Technologies Inc. ATI Radeon HD 4200
+ATI Technologies Inc. ATI Radeon HD 4250
ATI Technologies Inc. ATI Radeon HD 4250
ATI Technologies Inc. ATI Radeon HD 4250 Graphics
+ATI Technologies Inc. ATI Radeon HD 4250 Graphics
+ATI Technologies Inc. ATI Radeon HD 4270
ATI Technologies Inc. ATI Radeon HD 4270
ATI Technologies Inc. ATI Radeon HD 4290
+ATI Technologies Inc. ATI Radeon HD 4290
+ATI Technologies Inc. ATI Radeon HD 4290 (Engineering Sample)
ATI Technologies Inc. ATI Radeon HD 4300 Series
+ATI Technologies Inc. ATI Radeon HD 4300 Series
+ATI Technologies Inc. ATI Radeon HD 4300/4500 Series
ATI Technologies Inc. ATI Radeon HD 4300/4500 Series
ATI Technologies Inc. ATI Radeon HD 4350
+ATI Technologies Inc. ATI Radeon HD 4350
ATI Technologies Inc. ATI Radeon HD 4350 (Microsoft WDDM 1.1)
ATI Technologies Inc. ATI Radeon HD 4450
+ATI Technologies Inc. ATI Radeon HD 4450
ATI Technologies Inc. ATI Radeon HD 4500 Series
ATI Technologies Inc. ATI Radeon HD 4550
+ATI Technologies Inc. ATI Radeon HD 4550
ATI Technologies Inc. ATI Radeon HD 4600 Series
+ATI Technologies Inc. ATI Radeon HD 4600 Series
+ATI Technologies Inc. ATI Radeon HD 4650
ATI Technologies Inc. ATI Radeon HD 4650
ATI Technologies Inc. ATI Radeon HD 4670
+ATI Technologies Inc. ATI Radeon HD 4670
ATI Technologies Inc. ATI Radeon HD 4670 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 4670 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 4700 Series
ATI Technologies Inc. ATI Radeon HD 4700 Series
ATI Technologies Inc. ATI Radeon HD 4720
+ATI Technologies Inc. ATI Radeon HD 4720
ATI Technologies Inc. ATI Radeon HD 4730
+ATI Technologies Inc. ATI Radeon HD 4730
+ATI Technologies Inc. ATI Radeon HD 4730 Series
ATI Technologies Inc. ATI Radeon HD 4730 Series
ATI Technologies Inc. ATI Radeon HD 4750
ATI Technologies Inc. ATI Radeon HD 4770
+ATI Technologies Inc. ATI Radeon HD 4770
+ATI Technologies Inc. ATI Radeon HD 4800 Series
ATI Technologies Inc. ATI Radeon HD 4800 Series
ATI Technologies Inc. ATI Radeon HD 4850
+ATI Technologies Inc. ATI Radeon HD 4850
+ATI Technologies Inc. ATI Radeon HD 4850 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 4850 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 4850 Series
ATI Technologies Inc. ATI Radeon HD 4870
+ATI Technologies Inc. ATI Radeon HD 4870
ATI Technologies Inc. ATI Radeon HD 4870 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 4870 X2
+ATI Technologies Inc. ATI Radeon HD 4870 X2
ATI Technologies Inc. ATI Radeon HD 5400 Series
+ATI Technologies Inc. ATI Radeon HD 5400 Series
+ATI Technologies Inc. ATI Radeon HD 5450
ATI Technologies Inc. ATI Radeon HD 5450
+ATI Technologies Inc. ATI Radeon HD 5470
+ATI Technologies Inc. ATI Radeon HD 5500 Series
ATI Technologies Inc. ATI Radeon HD 5500 Series
ATI Technologies Inc. ATI Radeon HD 5570
+ATI Technologies Inc. ATI Radeon HD 5570
+ATI Technologies Inc. ATI Radeon HD 5600 Series
ATI Technologies Inc. ATI Radeon HD 5600 Series
+ATI Technologies Inc. ATI Radeon HD 5600/5700
ATI Technologies Inc. ATI Radeon HD 5630
ATI Technologies Inc. ATI Radeon HD 5670
+ATI Technologies Inc. ATI Radeon HD 5670
+ATI Technologies Inc. ATI Radeon HD 5670 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 5670 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 5700 Series
+ATI Technologies Inc. ATI Radeon HD 5700 Series
ATI Technologies Inc. ATI Radeon HD 5750
+ATI Technologies Inc. ATI Radeon HD 5750
+ATI Technologies Inc. ATI Radeon HD 5750 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 5750 OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 5770
+ATI Technologies Inc. ATI Radeon HD 5770
ATI Technologies Inc. ATI Radeon HD 5770 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 5770 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 5800 Series
ATI Technologies Inc. ATI Radeon HD 5800 Series
ATI Technologies Inc. ATI Radeon HD 5850
+ATI Technologies Inc. ATI Radeon HD 5850
ATI Technologies Inc. ATI Radeon HD 5870
ATI Technologies Inc. ATI Radeon HD 5870 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 5870 OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 5900 Series
ATI Technologies Inc. ATI Radeon HD 5900 Series
ATI Technologies Inc. ATI Radeon HD 5970
ATI Technologies Inc. ATI Radeon HD 6230
+ATI Technologies Inc. ATI Radeon HD 6230
+ATI Technologies Inc. ATI Radeon HD 6250
ATI Technologies Inc. ATI Radeon HD 6250
ATI Technologies Inc. ATI Radeon HD 6350
ATI Technologies Inc. ATI Radeon HD 6390
ATI Technologies Inc. ATI Radeon HD 6490M OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 6490M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 6510
+ATI Technologies Inc. ATI Radeon HD 6510
+ATI Technologies Inc. ATI Radeon HD 6570M
ATI Technologies Inc. ATI Radeon HD 6570M
+ATI Technologies Inc. ATI Radeon HD 6630M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 6750
ATI Technologies Inc. ATI Radeon HD 6750M OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 6750M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 6770
+ATI Technologies Inc. ATI Radeon HD 6770
+ATI Technologies Inc. ATI Radeon HD 6770M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 6770M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD 6800 Series
ATI Technologies Inc. ATI Radeon HD 6970M OpenGL Engine
+ATI Technologies Inc. ATI Radeon HD 6970M OpenGL Engine
ATI Technologies Inc. ATI Radeon HD3750
ATI Technologies Inc. ATI Radeon HD4300/HD4500 series
+ATI Technologies Inc. ATI Radeon HD4300/HD4500 series
+ATI Technologies Inc. ATI Radeon HD4670
ATI Technologies Inc. ATI Radeon HD4670
ATI Technologies Inc. ATI Radeon Juniper LE Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon RV710 Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon RV730 Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon RV770 Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon RV790 Prototype OpenGL Engine
+ATI Technologies Inc. ATI Radeon RV790 Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Redwood PRO Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Redwood XT Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon Whistler PRO/LP Prototype OpenGL Engine
ATI Technologies Inc. ATI Radeon X1050
ATI Technologies Inc. ATI Radeon X1050 Series
ATI Technologies Inc. ATI Radeon X1200
+ATI Technologies Inc. ATI Radeon X1200
+ATI Technologies Inc. ATI Radeon X1200 Series
ATI Technologies Inc. ATI Radeon X1200 Series
ATI Technologies Inc. ATI Radeon X1200 Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI Radeon X1200 Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI Radeon X1250
ATI Technologies Inc. ATI Radeon X1250
ATI Technologies Inc. ATI Radeon X1250 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon X1270
+ATI Technologies Inc. ATI Radeon X1270
+ATI Technologies Inc. ATI Radeon X1270 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon X1270 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon X1300/X1550 Series
ATI Technologies Inc. ATI Radeon X1550 Series
+ATI Technologies Inc. ATI Radeon X1550 Series
+ATI Technologies Inc. ATI Radeon X1600 OpenGL Engine
ATI Technologies Inc. ATI Radeon X1600 OpenGL Engine
ATI Technologies Inc. ATI Radeon X1900 OpenGL Engine
+ATI Technologies Inc. ATI Radeon X1900 OpenGL Engine
ATI Technologies Inc. ATI Radeon X1950 GT
ATI Technologies Inc. ATI Radeon X300/X550/X1050 Series
+ATI Technologies Inc. ATI Radeon X300/X550/X1050 Series
ATI Technologies Inc. ATI Radeon Xpress 1100
ATI Technologies Inc. ATI Radeon Xpress 1150
+ATI Technologies Inc. ATI Radeon Xpress 1150
ATI Technologies Inc. ATI Radeon Xpress 1150 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon Xpress 1200
+ATI Technologies Inc. ATI Radeon Xpress 1200
+ATI Technologies Inc. ATI Radeon Xpress 1200 Series
ATI Technologies Inc. ATI Radeon Xpress 1200 Series
ATI Technologies Inc. ATI Radeon Xpress 1200 Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. ATI Radeon Xpress 1200 Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon Xpress 1200 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon Xpress 1250
+ATI Technologies Inc. ATI Radeon Xpress 1250
+ATI Technologies Inc. ATI Radeon Xpress 1250 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Radeon Xpress 1250 x86/SSE2
ATI Technologies Inc. ATI Radeon Xpress Series
+ATI Technologies Inc. ATI Radeon Xpress Series
+ATI Technologies Inc. ATI Radeon Xpress Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. ATI Yamaha HD 9000
ATI Technologies Inc. ATi RS880M
+ATI Technologies Inc. ATi RS880M
ATI Technologies Inc. Carte graphique VGA standard
ATI Technologies Inc. Diamond Radeon X1550 Series
ATI Technologies Inc. EG JUNIPER
@@ -491,7 +765,9 @@ ATI Technologies Inc. EG PARK
ATI Technologies Inc. FireGL V3100 Pentium 4 (SSE2)
ATI Technologies Inc. FireMV 2400 PCI DDR x86
ATI Technologies Inc. FireMV 2400 PCI DDR x86/SSE2
+ATI Technologies Inc. FireMV 2400 PCI DDR x86/SSE2
ATI Technologies Inc. GeCube Radeon X1550
+ATI Technologies Inc. GeForce 9600 GT x86/SSE2
ATI Technologies Inc. Geforce 9500 GT
ATI Technologies Inc. Geforce 9500GT
ATI Technologies Inc. Geforce 9800 GT
@@ -501,98 +777,153 @@ ATI Technologies Inc. HIGHTECH EXCALIBUR X700 PRO
ATI Technologies Inc. M21 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. M76M
ATI Technologies Inc. MOBILITY RADEON 7500 DDR x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON 7500 DDR x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON 9000 DDR x86/SSE2
ATI Technologies Inc. MOBILITY RADEON 9000 DDR x86/SSE2
ATI Technologies Inc. MOBILITY RADEON 9000 IGPRADEON 9100 IGP DDR x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON 9100 IGP DDR x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON 9600 x86/SSE2
ATI Technologies Inc. MOBILITY RADEON 9600 x86/SSE2
ATI Technologies Inc. MOBILITY RADEON 9700 x86/SSE2
ATI Technologies Inc. MOBILITY RADEON X300 x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON X300 x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON X600 x86/SSE2
ATI Technologies Inc. MOBILITY RADEON X600 x86/SSE2
ATI Technologies Inc. MOBILITY RADEON X700 SE x86
ATI Technologies Inc. MOBILITY RADEON X700 x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON X700 x86/SSE2
+ATI Technologies Inc. MOBILITY RADEON Xpress 200 Series SW TCL x86/MMX/3DNow!/SSE2
ATI Technologies Inc. MSI RX9550SE
+ATI Technologies Inc. MSI Radeon X1550 Series
+ATI Technologies Inc. Mobility Radeon HD 6000 series
ATI Technologies Inc. Mobility Radeon X2300 HD
+ATI Technologies Inc. Mobility Radeon X2300 HD
+ATI Technologies Inc. Mobility Radeon X2300 HD x86/SSE2
ATI Technologies Inc. Mobility Radeon X2300 HD x86/SSE2
ATI Technologies Inc. RADEON 7000 DDR x86/MMX/3DNow!/SSE
ATI Technologies Inc. RADEON 7000 DDR x86/SSE2
ATI Technologies Inc. RADEON 7500 DDR x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON 7500 DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 7500 DDR x86/SSE2
ATI Technologies Inc. RADEON 9100 IGP DDR x86/SSE2
ATI Technologies Inc. RADEON 9200 DDR x86/MMX/3DNow!/SSE
ATI Technologies Inc. RADEON 9200 DDR x86/SSE2
ATI Technologies Inc. RADEON 9200 PRO DDR x86/MMX/3DNow!/SSE
ATI Technologies Inc. RADEON 9200 Series DDR x86/MMX/3DNow!/SSE
+ATI Technologies Inc. RADEON 9200 Series DDR x86/MMX/3DNow!/SSE
+ATI Technologies Inc. RADEON 9200 Series DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 9200 Series DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 9200 Series DDR x86/SSE
+ATI Technologies Inc. RADEON 9200 Series DDR x86/SSE
+ATI Technologies Inc. RADEON 9200 Series DDR x86/SSE2
ATI Technologies Inc. RADEON 9200 Series DDR x86/SSE2
ATI Technologies Inc. RADEON 9200SE DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 9200SE DDR x86/SSE2
ATI Technologies Inc. RADEON 9250/9200 Series DDR x86/MMX/3DNow!/SSE
+ATI Technologies Inc. RADEON 9250/9200 Series DDR x86/MMX/3DNow!/SSE
ATI Technologies Inc. RADEON 9250/9200 Series DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 9250/9200 Series DDR x86/SSE2
+ATI Technologies Inc. RADEON 9250/9200 Series DDR x86/SSE2
ATI Technologies Inc. RADEON 9500
ATI Technologies Inc. RADEON 9550 x86/SSE2
ATI Technologies Inc. RADEON 9600 SERIES
ATI Technologies Inc. RADEON 9600 SERIES x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON 9600 SERIES x86/SSE2
+ATI Technologies Inc. RADEON 9600 TX x86/SSE2
ATI Technologies Inc. RADEON 9600 TX x86/SSE2
ATI Technologies Inc. RADEON 9600 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON 9600 x86/SSE2
+ATI Technologies Inc. RADEON 9600 x86/SSE2
ATI Technologies Inc. RADEON 9700 PRO x86/MMX/3DNow!/SSE
ATI Technologies Inc. RADEON 9800 PRO
ATI Technologies Inc. RADEON 9800 x86/SSE2
ATI Technologies Inc. RADEON IGP 340M DDR x86/SSE2
+ATI Technologies Inc. RADEON IGP 340M DDR x86/SSE2
ATI Technologies Inc. RADEON X300 Series x86/SSE2
ATI Technologies Inc. RADEON X300 x86/SSE2
+ATI Technologies Inc. RADEON X300 x86/SSE2
+ATI Technologies Inc. RADEON X300/X550 Series x86/SSE2
ATI Technologies Inc. RADEON X300/X550 Series x86/SSE2
ATI Technologies Inc. RADEON X550 x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON X550 x86/SSE2
ATI Technologies Inc. RADEON X600 Series
ATI Technologies Inc. RADEON X600 x86/SSE2
+ATI Technologies Inc. RADEON X600 x86/SSE2
+ATI Technologies Inc. RADEON X600/X550 Series
ATI Technologies Inc. RADEON X700 PRO x86/SSE2
ATI Technologies Inc. RADEON X800 SE x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON X800 XT
ATI Technologies Inc. RADEON X800GT
ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/SSE2
ATI Technologies Inc. RADEON XPRESS 200 Series SW TCL x86/SSE2
ATI Technologies Inc. RADEON XPRESS 200 Series x86/SSE2
ATI Technologies Inc. RADEON XPRESS 200M Series SW TCL x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON XPRESS 200M Series SW TCL x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON XPRESS 200M Series SW TCL x86/SSE2
+ATI Technologies Inc. RADEON XPRESS 200M Series SW TCL x86/SSE2
+ATI Technologies Inc. RADEON XPRESS 200M Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON XPRESS 200M Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. RADEON XPRESS 200M Series x86/SSE2
ATI Technologies Inc. RADEON XPRESS Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON XPRESS Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. RADEON XPRESS Series x86/SSE2
ATI Technologies Inc. RADEON XPRESS Series x86/SSE2
ATI Technologies Inc. RS740
ATI Technologies Inc. RS780C
ATI Technologies Inc. RS780M
+ATI Technologies Inc. RS780M
+ATI Technologies Inc. RS880
ATI Technologies Inc. RS880
ATI Technologies Inc. RV410 Pro x86/SSE2
ATI Technologies Inc. RV790
+ATI Technologies Inc. RV790
+ATI Technologies Inc. Radeon (TM) HD 6470M
ATI Technologies Inc. Radeon (TM) HD 6470M
ATI Technologies Inc. Radeon (TM) HD 6490M
+ATI Technologies Inc. Radeon (TM) HD 6490M
+ATI Technologies Inc. Radeon (TM) HD 6750M
ATI Technologies Inc. Radeon (TM) HD 6770M
+ATI Technologies Inc. Radeon (TM) HD 6770M
+ATI Technologies Inc. Radeon (TM) HD 6850M
+ATI Technologies Inc. Radeon 7000 DDR x86/SSE
ATI Technologies Inc. Radeon 7000 DDR x86/SSE2
ATI Technologies Inc. Radeon 7000 SDR x86/SSE2
ATI Technologies Inc. Radeon 7500 DDR x86/SSE2
+ATI Technologies Inc. Radeon 7500 DDR x86/SSE2
ATI Technologies Inc. Radeon 9000 DDR x86/SSE2
ATI Technologies Inc. Radeon DDR x86/MMX/3DNow!/SSE2
ATI Technologies Inc. Radeon DDR x86/SSE
ATI Technologies Inc. Radeon DDR x86/SSE2
ATI Technologies Inc. Radeon HD 6310
+ATI Technologies Inc. Radeon HD 6310
+ATI Technologies Inc. Radeon HD 6470M
+ATI Technologies Inc. Radeon HD 6490M
+ATI Technologies Inc. Radeon HD 6800 Series
ATI Technologies Inc. Radeon HD 6800 Series
ATI Technologies Inc. Radeon SDR x86/SSE2
+ATI Technologies Inc. Radeon SDR x86/SSE2
ATI Technologies Inc. Radeon X1300 Series
ATI Technologies Inc. Radeon X1300 Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. Radeon X1300 Series x86/SSE2
ATI Technologies Inc. Radeon X1300/X1550 Series
+ATI Technologies Inc. Radeon X1300/X1550 Series
ATI Technologies Inc. Radeon X1300/X1550 Series x86/SSE2
ATI Technologies Inc. Radeon X1550 64-bit (Microsoft - WDDM)
ATI Technologies Inc. Radeon X1550 Series
ATI Technologies Inc. Radeon X1550 Series x86/SSE2
ATI Technologies Inc. Radeon X1600
ATI Technologies Inc. Radeon X1600 Pro / X1300XT x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. Radeon X1600 Series
ATI Technologies Inc. Radeon X1600 Series x86/SSE2
+ATI Technologies Inc. Radeon X1600/1650 Series
ATI Technologies Inc. Radeon X1600/X1650 Series
ATI Technologies Inc. Radeon X1650 Series
+ATI Technologies Inc. Radeon X1650 Series
ATI Technologies Inc. Radeon X1650 Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. Radeon X1650 Series x86/SSE2
+ATI Technologies Inc. Radeon X1650 Series x86/SSE2
ATI Technologies Inc. Radeon X1900 Series x86/MMX/3DNow!/SSE2
ATI Technologies Inc. Radeon X1950 Pro
ATI Technologies Inc. Radeon X1950 Pro x86/MMX/3DNow!/SSE2
@@ -602,18 +933,24 @@ ATI Technologies Inc. Radeon X300/X550/X1050 Series
ATI Technologies Inc. Radeon X550/X700 Series
ATI Technologies Inc. Radeon X550XTX x86/MMX/3DNow!/SSE2
ATI Technologies Inc. SAPPHIRE RADEON X300SE
+ATI Technologies Inc. SAPPHIRE RADEON X300SE
ATI Technologies Inc. SAPPHIRE RADEON X300SE x86/MMX/3DNow!/SSE2
ATI Technologies Inc. SAPPHIRE RADEON X300SE x86/SSE2
ATI Technologies Inc. SAPPHIRE Radeon X1550 Series
ATI Technologies Inc. SAPPHIRE Radeon X1550 Series x86/MMX/3DNow!/SSE2
+ATI Technologies Inc. SAPPHIRE Radeon X1550 Series x86/SSE2
+ATI Technologies Inc. SAPPHIRE Radeon X1550 x86/SSE2
+ATI Technologies Inc. Sapphire Radeon HD 3730
ATI Technologies Inc. Sapphire Radeon HD 3730
ATI Technologies Inc. Sapphire Radeon HD 3750
ATI Technologies Inc. Standard VGA Graphics Adapter
+ATI Technologies Inc. Standard VGA Graphics Adapter
ATI Technologies Inc. Tul, RADEON X600 PRO
ATI Technologies Inc. Tul, RADEON X600 PRO x86/SSE2
ATI Technologies Inc. Tul, RADEON X700 PRO
ATI Technologies Inc. Tul, RADEON X700 PRO x86/MMX/3DNow!/SSE2
ATI Technologies Inc. VisionTek Radeon 4350
+ATI Technologies Inc. VisionTek Radeon 4350
ATI Technologies Inc. VisionTek Radeon X1550 Series
ATI Technologies Inc. WRESTLER 9802
ATI Technologies Inc. WRESTLER 9803
@@ -630,6 +967,7 @@ Advanced Micro Devices, Inc. Mesa DRI R600 (RV620 95C5) 20090101 x86/MMX+/3DNow!
Advanced Micro Devices, Inc. Mesa DRI R600 (RV620 95C5) 20090101 x86/MMX/SSE2 TCL DRI2
Advanced Micro Devices, Inc. Mesa DRI R600 (RV635 9596) 20090101 x86/MMX+/3DNow!+/SSE TCL DRI2
Advanced Micro Devices, Inc. Mesa DRI R600 (RV670 9505) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
+Advanced Micro Devices, Inc. Mesa DRI R600 (RV670 9505) 20090101 x86/MMX/SSE2 TCL DRI2
Advanced Micro Devices, Inc. Mesa DRI R600 (RV710 9552) 20090101 x86/MMX/SSE2 TCL DRI2
Advanced Micro Devices, Inc. Mesa DRI R600 (RV730 9490) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
Advanced Micro Devices, Inc. Mesa DRI R600 (RV730 9490) 20090101 x86/MMX/SSE2 TCL DRI2
@@ -648,6 +986,7 @@ DRI R300 Project Mesa DRI R300 (RV350 4153) 20090101 AGP 8x x86/MMX+/3DNow!+/SSE
DRI R300 Project Mesa DRI R300 (RV380 3150) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV380 3150) 20090101 x86/MMX/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV380 5B60) 20090101 x86/MMX/SSE2 TCL DRI2
+DRI R300 Project Mesa DRI R300 (RV380 5B60) 20090101 x86/MMX/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV380 5B62) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV515 7145) 20090101 x86/MMX/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV515 7146) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
@@ -657,11 +996,17 @@ DRI R300 Project Mesa DRI R300 (RV515 714A) 20090101 x86/MMX/SSE2 TCL
DRI R300 Project Mesa DRI R300 (RV515 714A) 20090101 x86/MMX/SSE2 TCL DRI2
DRI R300 Project Mesa DRI R300 (RV530 71C4) 20090101 x86/MMX/SSE2 TCL DRI2
GPU_CLASS_UNKNOWN
+Humper 3D-Analyze v2.3 - http://www.tommti-systems.com
Humper Chromium
+Humper Chromium
+Imagination Technologies PowerVR SGX545
Intel
Intel HD Graphics Family
+Intel HD Graphics Family
Intel 3D-Analyze v2.2 - http://www.tommti-systems.com
Intel 3D-Analyze v2.3 - http://www.tommti-systems.com
+Intel 3D-Analyze v2.3 - http://www.tommti-systems.com
+Intel 4 Series Internal Chipset
Intel 4 Series Internal Chipset
Intel 830M
Intel 845G
@@ -674,19 +1019,26 @@ Intel 945GM
Intel 950
Intel 965
Intel B43 Express Chipset
+Intel B43 Express Chipset
Intel Bear Lake
Intel Broadwater
Intel Brookdale
Intel Cantiga
+Intel EMGD on PowerVR SGX535
Intel Eaglelake
Intel Familia Mobile 45 Express Chipset (Microsoft Corporation - WDDM 1.1)
+Intel Familia Mobile 45 Express Chipset (Microsoft Corporation - WDDM 1.1)
Intel G33
Intel G41
Intel G41 Express Chipset
+Intel G41 Express Chipset
Intel G45
Intel G45/G43 Express Chipset
+Intel G45/G43 Express Chipset
+Intel Graphics Media Accelerator HD
Intel Graphics Media Accelerator HD
Intel HD Graphics
+Intel HD Graphics
Intel HD Graphics 100
Intel HD Graphics 200
Intel HD Graphics 200 BR-1101-00SH
@@ -695,6 +1047,7 @@ Intel HD Graphics 200 BR-1101-00SK
Intel HD Graphics 200 BR-1101-01M5
Intel HD Graphics 200 BR-1101-01M6
Intel HD Graphics BR-1004-01Y1
+Intel HD Graphics BR-1004-01Y1
Intel HD Graphics BR-1006-0364
Intel HD Graphics BR-1006-0365
Intel HD Graphics BR-1006-0366
@@ -704,45 +1057,73 @@ Intel HD Graphics BR-1101-04SZ
Intel HD Graphics BR-1101-04T0
Intel HD Graphics BR-1101-04T9
Intel HD Graphics Family
+Intel HD Graphics Family
Intel HD Graphics Family BR-1012-00Y8
Intel HD Graphics Family BR-1012-00YF
Intel HD Graphics Family BR-1012-00ZD
Intel HD Graphics Family BR-1102-00ML
Intel Inc. Intel GMA 900 OpenGL Engine
+Intel Inc. Intel GMA 900 OpenGL Engine
+Intel Inc. Intel GMA 950 OpenGL Engine
Intel Inc. Intel GMA 950 OpenGL Engine
Intel Inc. Intel GMA X3100 OpenGL Engine
+Intel Inc. Intel GMA X3100 OpenGL Engine
+Intel Inc. Intel HD Graphics 3000 OpenGL Engine
Intel Inc. Intel HD Graphics 3000 OpenGL Engine
Intel Inc. Intel HD Graphics OpenGL Engine
+Intel Inc. Intel HD Graphics OpenGL Engine
Intel Inc. Intel HD xxxx OpenGL Engine
Intel Intel 845G
+Intel Intel 845G
+Intel Intel 855GM
Intel Intel 855GM
Intel Intel 865G
+Intel Intel 865G
Intel Intel 915G
+Intel Intel 915G
+Intel Intel 915GM
Intel Intel 915GM
Intel Intel 945G
+Intel Intel 945G
+Intel Intel 945GM
Intel Intel 945GM
Intel Intel 965/963 Graphics Media Accelerator
+Intel Intel 965/963 Graphics Media Accelerator
+Intel Intel Bear Lake B
Intel Intel Bear Lake B
Intel Intel Broadwater G
Intel Intel Brookdale-G
+Intel Intel Brookdale-G
Intel Intel Calistoga
Intel Intel Cantiga
+Intel Intel Cantiga
Intel Intel Eaglelake
+Intel Intel Eaglelake
+Intel Intel Generic Renderer
+Intel Intel Grantsdale-G
Intel Intel Grantsdale-G
Intel Intel HD Graphics 3000
Intel Intel Lakeport
Intel Intel Montara-GM
Intel Intel Pineview Platform
+Intel Intel Pineview Platform
Intel Intel Springdale-G
Intel Mobile - famiglia Express Chipset 45 (Microsoft Corporation - WDDM 1.1)
Intel Mobile 4 Series
Intel Mobile 4 Series Express Chipset Family
+Intel Mobile 4 Series Express Chipset Family
+Intel Mobile 45 Express Chipset Family
+Intel Mobile 45 Express Chipset Family (Microsoft Corporation - WDDM 1.1)
Intel Mobile 45 Express Chipset Family (Microsoft Corporation - WDDM 1.1)
Intel Mobile HD Graphics
+Intel Mobile HD Graphics
+Intel Mobile Intel(R) 4 Series Express Chipset Family
Intel Mobile SandyBridge HD Graphics
Intel Montara
Intel Pineview
Intel Q45/Q43 Express Chipset
+Intel Q45/Q43 Express Chipset
+Intel Royal BNA Driver
Intel Royal BNA Driver
Intel SandyBridge HD Graphics
Intel SandyBridge HD Graphics BR-1006-00V8
@@ -750,14 +1131,18 @@ Intel Springdale
Intel X3100
Intergraph wcgdrv 06.05.06.18
Intergraph wcgdrv 06.06.00.35
+Intergraph wcgdrv 06.06.00.35
LegendgrafiX Mobile 945 Express C/TitaniumGL/GAC/D3D ACCELERATION/6x86/1 THREADs | http://LegendgrafiX.tk
LegendgrafiX NVIDIA GeForce GT 430/TitaniumGL/GAC/D3D ACCELERATION/6x86/1 THREADs | http://LegendgrafiX.tk
Linden Lab Headless
Matrox
Mesa
Mesa Project Software Rasterizer
+Mesa Project Software Rasterizer
+NVIDIA /PCI/SSE2
NVIDIA /PCI/SSE2
NVIDIA /PCI/SSE2/3DNOW!
+NVIDIA /PCI/SSE2/3DNOW!
NVIDIA 205
NVIDIA 210
NVIDIA 310
@@ -766,8 +1151,13 @@ NVIDIA 315
NVIDIA 315M
NVIDIA 320M
NVIDIA C51
+NVIDIA Corporation GeForce GT 230/PCI/SSE2
+NVIDIA Corporation GeForce GTX 285/PCI/SSE2
+NVIDIA D10M2-20/PCI/SSE2
NVIDIA D10M2-20/PCI/SSE2
NVIDIA D10P1-25/PCI/SSE2
+NVIDIA D10P1-25/PCI/SSE2
+NVIDIA D10P1-25/PCI/SSE2/3DNOW!
NVIDIA D10P1-30/PCI/SSE2
NVIDIA D10P2-50/PCI/SSE2
NVIDIA D11M2-30/PCI/SSE2
@@ -775,11 +1165,16 @@ NVIDIA D12-P1-35/PCI/SSE2
NVIDIA D12U-15/PCI/SSE2
NVIDIA D13M1-40/PCI/SSE2
NVIDIA D13P1-40/PCI/SSE2
+NVIDIA D13P1-40/PCI/SSE2
+NVIDIA D13P1-40/PCI/SSE2/3DNOW!
NVIDIA D13U-10/PCI/SSE2
NVIDIA D13U/PCI/SSE2
+NVIDIA D13U/PCI/SSE2
NVIDIA D9M
NVIDIA D9M-20/PCI/SSE2
NVIDIA Entry Graphics/PCI/SSE2
+NVIDIA Entry Graphics/PCI/SSE2
+NVIDIA Entry Graphics/PCI/SSE2/3DNOW!
NVIDIA Entry Graphics/PCI/SSE2/3DNOW!
NVIDIA G 102M
NVIDIA G 103M
@@ -800,7 +1195,10 @@ NVIDIA G92
NVIDIA G92-200/PCI/SSE2
NVIDIA G94
NVIDIA G96/PCI/SSE2
+NVIDIA G96/PCI/SSE2
NVIDIA G98/PCI/SSE2
+NVIDIA G98/PCI/SSE2
+NVIDIA G98/PCI/SSE2/3DNOW!
NVIDIA GT 120
NVIDIA GT 130
NVIDIA GT 130M
@@ -809,6 +1207,8 @@ NVIDIA GT 150
NVIDIA GT 160M
NVIDIA GT 220
NVIDIA GT 220/PCI/SSE2
+NVIDIA GT 220/PCI/SSE2
+NVIDIA GT 220/PCI/SSE2/3DNOW!
NVIDIA GT 220/PCI/SSE2/3DNOW!
NVIDIA GT 230
NVIDIA GT 230M
@@ -859,58 +1259,89 @@ NVIDIA GTX 590
NVIDIA GeForce
NVIDIA GeForce 2
NVIDIA GeForce 205/PCI/SSE2
+NVIDIA GeForce 205/PCI/SSE2
NVIDIA GeForce 210
NVIDIA GeForce 210/PCI/SSE2
+NVIDIA GeForce 210/PCI/SSE2
+NVIDIA GeForce 210/PCI/SSE2/3DNOW!
NVIDIA GeForce 210/PCI/SSE2/3DNOW!
NVIDIA GeForce 3
NVIDIA GeForce 305M/PCI/SSE2
+NVIDIA GeForce 305M/PCI/SSE2
+NVIDIA GeForce 310/PCI/SSE2
NVIDIA GeForce 310/PCI/SSE2
NVIDIA GeForce 310/PCI/SSE2/3DNOW!
+NVIDIA GeForce 310/PCI/SSE2/3DNOW!
+NVIDIA GeForce 310M/PCI/SSE2
NVIDIA GeForce 310M/PCI/SSE2
NVIDIA GeForce 315/PCI/SSE2
+NVIDIA GeForce 315/PCI/SSE2
NVIDIA GeForce 315/PCI/SSE2/3DNOW!
+NVIDIA GeForce 315/PCI/SSE2/3DNOW!
+NVIDIA GeForce 315M/PCI/SSE2
NVIDIA GeForce 315M/PCI/SSE2
NVIDIA GeForce 320M/PCI/SSE2
NVIDIA GeForce 4 Go
NVIDIA GeForce 4 MX
NVIDIA GeForce 4 Ti
NVIDIA GeForce 405/PCI/SSE2
+NVIDIA GeForce 405/PCI/SSE2
+NVIDIA GeForce 410M/PCI/SSE2
NVIDIA GeForce 6100
NVIDIA GeForce 6100 nForce 400/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6100 nForce 400/PCI/SSE2/3DNOW!
NVIDIA GeForce 6100 nForce 405/PCI/SSE2
NVIDIA GeForce 6100 nForce 405/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6100 nForce 405/PCI/SSE2/3DNOW!
NVIDIA GeForce 6100 nForce 420/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6100 nForce 420/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6100 nForce 430/PCI/SSE2/3DNOW!
NVIDIA GeForce 6100 nForce 430/PCI/SSE2/3DNOW!
NVIDIA GeForce 6100/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6100/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6150 LE/PCI/SSE2/3DNOW!
NVIDIA GeForce 6150 LE/PCI/SSE2/3DNOW!
NVIDIA GeForce 6150/PCI/SSE2
NVIDIA GeForce 6150/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6150/PCI/SSE2/3DNOW!
NVIDIA GeForce 6150SE nForce 430/PCI/SSE2
+NVIDIA GeForce 6150SE nForce 430/PCI/SSE2
+NVIDIA GeForce 6150SE nForce 430/PCI/SSE2/3DNOW!
NVIDIA GeForce 6150SE nForce 430/PCI/SSE2/3DNOW!
NVIDIA GeForce 6150SE/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6150SE/PCI/SSE2/3DNOW!
NVIDIA GeForce 6200
NVIDIA GeForce 6200 A-LE/AGP/SSE/3DNOW!
NVIDIA GeForce 6200 A-LE/AGP/SSE2
NVIDIA GeForce 6200 A-LE/AGP/SSE2/3DNOW!
NVIDIA GeForce 6200 LE/PCI/SSE2
+NVIDIA GeForce 6200 LE/PCI/SSE2
NVIDIA GeForce 6200 LE/PCI/SSE2/3DNOW!
NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2
+NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2
NVIDIA GeForce 6200 TurboCache(TM)/PCI/SSE2/3DNOW!
NVIDIA GeForce 6200/AGP/SSE/3DNOW!
+NVIDIA GeForce 6200/AGP/SSE/3DNOW!
+NVIDIA GeForce 6200/AGP/SSE2
NVIDIA GeForce 6200/AGP/SSE2
NVIDIA GeForce 6200/AGP/SSE2/3DNOW!
NVIDIA GeForce 6200/PCI/SSE/3DNOW!
NVIDIA GeForce 6200/PCI/SSE2
+NVIDIA GeForce 6200/PCI/SSE2
+NVIDIA GeForce 6200/PCI/SSE2/3DNOW!
NVIDIA GeForce 6200/PCI/SSE2/3DNOW!
NVIDIA GeForce 6200SE TurboCache(TM)/PCI/SSE2/3DNOW!
NVIDIA GeForce 6500
NVIDIA GeForce 6500/PCI/SSE2
+NVIDIA GeForce 6500/PCI/SSE2
NVIDIA GeForce 6600
NVIDIA GeForce 6600 GT/AGP/SSE/3DNOW!
NVIDIA GeForce 6600 GT/AGP/SSE2
+NVIDIA GeForce 6600 GT/AGP/SSE2
NVIDIA GeForce 6600 GT/PCI/SSE/3DNOW!
NVIDIA GeForce 6600 GT/PCI/SSE2
NVIDIA GeForce 6600 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 6600 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 6600 LE/PCI/SSE2
NVIDIA GeForce 6600/AGP/SSE/3DNOW!
NVIDIA GeForce 6600/AGP/SSE2
@@ -919,49 +1350,77 @@ NVIDIA GeForce 6600/PCI/SSE2
NVIDIA GeForce 6600/PCI/SSE2/3DNOW!
NVIDIA GeForce 6700
NVIDIA GeForce 6800
+NVIDIA GeForce 6800 GS/PCI/SSE2
NVIDIA GeForce 6800 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 6800 GT/AGP/SSE2
NVIDIA GeForce 6800 GT/PCI/SSE2
NVIDIA GeForce 6800 XT/AGP/SSE2
NVIDIA GeForce 6800 XT/PCI/SSE2
+NVIDIA GeForce 6800 XT/PCI/SSE2/3DNOW!
NVIDIA GeForce 6800/PCI/SSE2
NVIDIA GeForce 6800/PCI/SSE2/3DNOW!
NVIDIA GeForce 7000
NVIDIA GeForce 7000M
NVIDIA GeForce 7000M / nForce 610M/PCI/SSE2
NVIDIA GeForce 7000M / nForce 610M/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7000M / nForce 610M/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7025 / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7025 / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7025 / nForce 630a/PCI/SSE2
+NVIDIA GeForce 7025 / nForce 630a/PCI/SSE2
+NVIDIA GeForce 7025 / nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7025 / nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7050 / NVIDIA nForce 610i/PCI/SSE2
+NVIDIA GeForce 7050 / NVIDIA nForce 610i/PCI/SSE2
NVIDIA GeForce 7050 / NVIDIA nForce 620i/PCI/SSE2
NVIDIA GeForce 7050 / nForce 610i/PCI/SSE2
+NVIDIA GeForce 7050 / nForce 610i/PCI/SSE2
+NVIDIA GeForce 7050 / nForce 620i/PCI/SSE2
NVIDIA GeForce 7050 / nForce 620i/PCI/SSE2
NVIDIA GeForce 7050 PV / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7050 PV / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7050 PV / nForce 630a/PCI/SSE2
NVIDIA GeForce 7050 PV / nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7050 SE / NVIDIA nForce 630a/PCI/SSE2/3DNOW!
NVIDIA GeForce 7100
NVIDIA GeForce 7100 / NVIDIA nForce 620i/PCI/SSE2
+NVIDIA GeForce 7100 / NVIDIA nForce 620i/PCI/SSE2
+NVIDIA GeForce 7100 / NVIDIA nForce 630i/PCI/SSE2
NVIDIA GeForce 7100 / NVIDIA nForce 630i/PCI/SSE2
NVIDIA GeForce 7100 / nForce 630i/PCI/SSE2
+NVIDIA GeForce 7100 / nForce 630i/PCI/SSE2
+NVIDIA GeForce 7100 GS/PCI/SSE2
NVIDIA GeForce 7100 GS/PCI/SSE2
NVIDIA GeForce 7100 GS/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7100 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2
+NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2
+NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2/3DNOW!
NVIDIA GeForce 7150M / nForce 630M/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300
NVIDIA GeForce 7300 GS/PCI/SSE2
+NVIDIA GeForce 7300 GS/PCI/SSE2
+NVIDIA GeForce 7300 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300 GT/AGP/SSE2
NVIDIA GeForce 7300 GT/AGP/SSE2/3DNOW!
NVIDIA GeForce 7300 GT/PCI/SSE2
+NVIDIA GeForce 7300 GT/PCI/SSE2
NVIDIA GeForce 7300 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7300 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7300 LE/PCI/SSE2
NVIDIA GeForce 7300 LE/PCI/SSE2
NVIDIA GeForce 7300 LE/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7300 LE/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2
+NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2
+NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300 SE/7200 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7300 SE/PCI/SSE2
+NVIDIA GeForce 7300 SE/PCI/SSE2
NVIDIA GeForce 7300 SE/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7300 SE/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7350 LE/PCI/SSE2
NVIDIA GeForce 7350 LE/PCI/SSE2
NVIDIA GeForce 7500
NVIDIA GeForce 7500 LE/PCI/SSE2
@@ -970,22 +1429,30 @@ NVIDIA GeForce 7600
NVIDIA GeForce 7600 GS/AGP/SSE2
NVIDIA GeForce 7600 GS/AGP/SSE2/3DNOW!
NVIDIA GeForce 7600 GS/PCI/SSE2
+NVIDIA GeForce 7600 GS/PCI/SSE2
+NVIDIA GeForce 7600 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7600 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7600 GT/AGP/SSE/3DNOW!
NVIDIA GeForce 7600 GT/AGP/SSE2
NVIDIA GeForce 7600 GT/PCI/SSE2
+NVIDIA GeForce 7600 GT/PCI/SSE2
NVIDIA GeForce 7600 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 7650 GS/PCI/SSE2
NVIDIA GeForce 7800
NVIDIA GeForce 7800 GS/AGP/SSE2
NVIDIA GeForce 7800 GS/AGP/SSE2/3DNOW!
NVIDIA GeForce 7800 GT/PCI/SSE2
+NVIDIA GeForce 7800 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 7800 GTX/PCI/SSE2
NVIDIA GeForce 7800 GTX/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7800 GTX/PCI/SSE2/3DNOW!
NVIDIA GeForce 7900
NVIDIA GeForce 7900 GS/PCI/SSE2
+NVIDIA GeForce 7900 GS/PCI/SSE2
NVIDIA GeForce 7900 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 7900 GT/GTO/PCI/SSE2
+NVIDIA GeForce 7900 GT/GTO/PCI/SSE2/3DNOW!
+NVIDIA GeForce 7900 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 7900 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 7900 GTX/PCI/SSE2
NVIDIA GeForce 7950 GT/PCI/SSE2
@@ -994,123 +1461,186 @@ NVIDIA GeForce 8100
NVIDIA GeForce 8100 / nForce 720a/PCI/SSE2/3DNOW!
NVIDIA GeForce 8200
NVIDIA GeForce 8200/PCI/SSE2
+NVIDIA GeForce 8200/PCI/SSE2
+NVIDIA GeForce 8200/PCI/SSE2/3DNOW!
NVIDIA GeForce 8200/PCI/SSE2/3DNOW!
NVIDIA GeForce 8200M
NVIDIA GeForce 8200M G/PCI/SSE2
+NVIDIA GeForce 8200M G/PCI/SSE2
+NVIDIA GeForce 8200M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 8200M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 8300
NVIDIA GeForce 8300 GS/PCI/SSE2
+NVIDIA GeForce 8300 GS/PCI/SSE2
NVIDIA GeForce 8400
NVIDIA GeForce 8400 GS/PCI/SSE/3DNOW!
NVIDIA GeForce 8400 GS/PCI/SSE2
+NVIDIA GeForce 8400 GS/PCI/SSE2
+NVIDIA GeForce 8400 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400GS/PCI/SSE2
+NVIDIA GeForce 8400GS/PCI/SSE2
+NVIDIA GeForce 8400GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400M
NVIDIA GeForce 8400M G/PCI/SSE2
+NVIDIA GeForce 8400M G/PCI/SSE2
+NVIDIA GeForce 8400M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400M GS/PCI/SSE2
+NVIDIA GeForce 8400M GS/PCI/SSE2
+NVIDIA GeForce 8400M GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400M GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8400M GT/PCI/SSE2
+NVIDIA GeForce 8400M GT/PCI/SSE2
NVIDIA GeForce 8500
NVIDIA GeForce 8500 GT/PCI/SSE2
+NVIDIA GeForce 8500 GT/PCI/SSE2
+NVIDIA GeForce 8500 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8500 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600
NVIDIA GeForce 8600 GS/PCI/SSE2
+NVIDIA GeForce 8600 GS/PCI/SSE2
NVIDIA GeForce 8600 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600 GT/PCI/SSE2
+NVIDIA GeForce 8600 GT/PCI/SSE2
+NVIDIA GeForce 8600 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600 GTS/PCI/SSE2
NVIDIA GeForce 8600 GTS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600GS/PCI/SSE2
+NVIDIA GeForce 8600GS/PCI/SSE2
NVIDIA GeForce 8600M
NVIDIA GeForce 8600M GS/PCI/SSE2
NVIDIA GeForce 8600M GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8600M GT/PCI/SSE2
+NVIDIA GeForce 8600M GT/PCI/SSE2
NVIDIA GeForce 8700
NVIDIA GeForce 8700M
NVIDIA GeForce 8700M GT/PCI/SSE2
+NVIDIA GeForce 8700M GT/PCI/SSE2
NVIDIA GeForce 8800
NVIDIA GeForce 8800 GS/PCI/SSE2
NVIDIA GeForce 8800 GT/PCI/SSE2
+NVIDIA GeForce 8800 GT/PCI/SSE2
+NVIDIA GeForce 8800 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8800 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 8800 GTS 512/PCI/SSE2
NVIDIA GeForce 8800 GTS 512/PCI/SSE2/3DNOW!
NVIDIA GeForce 8800 GTS/PCI/SSE2
+NVIDIA GeForce 8800 GTS/PCI/SSE2
NVIDIA GeForce 8800 GTS/PCI/SSE2/3DNOW!
NVIDIA GeForce 8800 GTX/PCI/SSE2
NVIDIA GeForce 8800 Ultra/PCI/SSE2
NVIDIA GeForce 8800M GTS/PCI/SSE2
+NVIDIA GeForce 8800M GTS/PCI/SSE2
+NVIDIA GeForce 8800M GTX/PCI/SSE2
NVIDIA GeForce 8800M GTX/PCI/SSE2
NVIDIA GeForce 9100
NVIDIA GeForce 9100/PCI/SSE2
+NVIDIA GeForce 9100/PCI/SSE2
NVIDIA GeForce 9100/PCI/SSE2/3DNOW!
NVIDIA GeForce 9100M
NVIDIA GeForce 9100M G/PCI/SSE2
+NVIDIA GeForce 9100M G/PCI/SSE2
NVIDIA GeForce 9100M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 9200
NVIDIA GeForce 9200/PCI/SSE2
+NVIDIA GeForce 9200/PCI/SSE2
NVIDIA GeForce 9200/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9200/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9200M GE/PCI/SSE2
NVIDIA GeForce 9200M GE/PCI/SSE2
NVIDIA GeForce 9200M GS/PCI/SSE2
+NVIDIA GeForce 9200M GS/PCI/SSE2
NVIDIA GeForce 9300
NVIDIA GeForce 9300 / nForce 730i/PCI/SSE2
NVIDIA GeForce 9300 GE/PCI/SSE2
+NVIDIA GeForce 9300 GE/PCI/SSE2
+NVIDIA GeForce 9300 GE/PCI/SSE2/3DNOW!
NVIDIA GeForce 9300 GE/PCI/SSE2/3DNOW!
NVIDIA GeForce 9300 GS/PCI/SSE2
+NVIDIA GeForce 9300 GS/PCI/SSE2
+NVIDIA GeForce 9300 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 9300 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 9300 SE/PCI/SSE2
NVIDIA GeForce 9300M
NVIDIA GeForce 9300M G/PCI/SSE2
+NVIDIA GeForce 9300M G/PCI/SSE2
NVIDIA GeForce 9300M G/PCI/SSE2/3DNOW!
NVIDIA GeForce 9300M GS/PCI/SSE2
+NVIDIA GeForce 9300M GS/PCI/SSE2
NVIDIA GeForce 9300M GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 9400
NVIDIA GeForce 9400 GT/PCI/SSE2
+NVIDIA GeForce 9400 GT/PCI/SSE2
+NVIDIA GeForce 9400 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 9400 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 9400/PCI/SSE2
NVIDIA GeForce 9400M
NVIDIA GeForce 9400M G/PCI/SSE2
+NVIDIA GeForce 9400M G/PCI/SSE2
+NVIDIA GeForce 9400M/PCI/SSE2
NVIDIA GeForce 9400M/PCI/SSE2
NVIDIA GeForce 9500
NVIDIA GeForce 9500 GS/PCI/SSE2
+NVIDIA GeForce 9500 GS/PCI/SSE2
NVIDIA GeForce 9500 GS/PCI/SSE2/3DNOW!
NVIDIA GeForce 9500 GT/PCI/SSE2
+NVIDIA GeForce 9500 GT/PCI/SSE2
+NVIDIA GeForce 9500 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 9500 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 9500M
NVIDIA GeForce 9500M GS/PCI/SSE2
+NVIDIA GeForce 9500M GS/PCI/SSE2
NVIDIA GeForce 9600
NVIDIA GeForce 9600 GS/PCI/SSE2
NVIDIA GeForce 9600 GSO 512/PCI/SSE2
NVIDIA GeForce 9600 GSO/PCI/SSE2
NVIDIA GeForce 9600 GSO/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9600 GSO/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9600 GT/PCI/SSE2
NVIDIA GeForce 9600 GT/PCI/SSE2
NVIDIA GeForce 9600 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9600 GT/PCI/SSE2/3DNOW!
NVIDIA GeForce 9600M
NVIDIA GeForce 9600M GS/PCI/SSE2
+NVIDIA GeForce 9600M GS/PCI/SSE2
+NVIDIA GeForce 9600M GT/PCI/SSE2
NVIDIA GeForce 9600M GT/PCI/SSE2
NVIDIA GeForce 9650M GT/PCI/SSE2
+NVIDIA GeForce 9650M GT/PCI/SSE2
NVIDIA GeForce 9700M
NVIDIA GeForce 9700M GT/PCI/SSE2
NVIDIA GeForce 9700M GTS/PCI/SSE2
+NVIDIA GeForce 9700M GTS/PCI/SSE2
NVIDIA GeForce 9800
NVIDIA GeForce 9800 GT/PCI/SSE2
+NVIDIA GeForce 9800 GT/PCI/SSE2
NVIDIA GeForce 9800 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9800 GT/PCI/SSE2/3DNOW!
+NVIDIA GeForce 9800 GTX+/PCI/SSE2
NVIDIA GeForce 9800 GTX+/PCI/SSE2
NVIDIA GeForce 9800 GTX+/PCI/SSE2/3DNOW!
NVIDIA GeForce 9800 GTX/9800 GTX+/PCI/SSE2
+NVIDIA GeForce 9800 GTX/9800 GTX+/PCI/SSE2
NVIDIA GeForce 9800 GTX/PCI/SSE2
NVIDIA GeForce 9800 GX2/PCI/SSE2
NVIDIA GeForce 9800M
NVIDIA GeForce 9800M GS/PCI/SSE2
+NVIDIA GeForce 9800M GS/PCI/SSE2
+NVIDIA GeForce 9800M GT/PCI/SSE2
NVIDIA GeForce 9800M GT/PCI/SSE2
NVIDIA GeForce 9800M GTS/PCI/SSE2
+NVIDIA GeForce 9800M GTS/PCI/SSE2
NVIDIA GeForce FX 5100
NVIDIA GeForce FX 5100/AGP/SSE/3DNOW!
NVIDIA GeForce FX 5200
NVIDIA GeForce FX 5200/AGP/SSE
NVIDIA GeForce FX 5200/AGP/SSE/3DNOW!
+NVIDIA GeForce FX 5200/AGP/SSE/3DNOW!
+NVIDIA GeForce FX 5200/AGP/SSE2
NVIDIA GeForce FX 5200/AGP/SSE2
NVIDIA GeForce FX 5200/AGP/SSE2/3DNOW!
NVIDIA GeForce FX 5200/PCI/SSE2
@@ -1119,11 +1649,16 @@ NVIDIA GeForce FX 5200LE/AGP/SSE2
NVIDIA GeForce FX 5500
NVIDIA GeForce FX 5500/AGP/SSE/3DNOW!
NVIDIA GeForce FX 5500/AGP/SSE2
+NVIDIA GeForce FX 5500/AGP/SSE2
+NVIDIA GeForce FX 5500/AGP/SSE2/3DNOW!
NVIDIA GeForce FX 5500/AGP/SSE2/3DNOW!
NVIDIA GeForce FX 5500/PCI/SSE2
+NVIDIA GeForce FX 5500/PCI/SSE2
+NVIDIA GeForce FX 5500/PCI/SSE2/3DNOW!
NVIDIA GeForce FX 5500/PCI/SSE2/3DNOW!
NVIDIA GeForce FX 5600
NVIDIA GeForce FX 5600/AGP/SSE2
+NVIDIA GeForce FX 5600/AGP/SSE2
NVIDIA GeForce FX 5600/AGP/SSE2/3DNOW!
NVIDIA GeForce FX 5600XT/AGP/SSE2/3DNOW!
NVIDIA GeForce FX 5700
@@ -1138,136 +1673,239 @@ NVIDIA GeForce FX Go5100
NVIDIA GeForce FX Go5100/AGP/SSE2
NVIDIA GeForce FX Go5200
NVIDIA GeForce FX Go5200/AGP/SSE2
+NVIDIA GeForce FX Go5200/AGP/SSE2
NVIDIA GeForce FX Go5300
NVIDIA GeForce FX Go5600
NVIDIA GeForce FX Go5600/AGP/SSE2
+NVIDIA GeForce FX Go5600/AGP/SSE2
NVIDIA GeForce FX Go5650/AGP/SSE2
NVIDIA GeForce FX Go5700
+NVIDIA GeForce FX Go5700/AGP/SSE2
+NVIDIA GeForce FX Go5xxx/AGP/SSE2
NVIDIA GeForce FX Go5xxx/AGP/SSE2
NVIDIA GeForce G 103M/PCI/SSE2
+NVIDIA GeForce G 103M/PCI/SSE2
+NVIDIA GeForce G 103M/PCI/SSE2/3DNOW!
NVIDIA GeForce G 105M/PCI/SSE2
+NVIDIA GeForce G 105M/PCI/SSE2
+NVIDIA GeForce G 110M/PCI/SSE2
NVIDIA GeForce G 110M/PCI/SSE2
NVIDIA GeForce G100/PCI/SSE2
+NVIDIA GeForce G100/PCI/SSE2
+NVIDIA GeForce G100/PCI/SSE2/3DNOW!
NVIDIA GeForce G100/PCI/SSE2/3DNOW!
NVIDIA GeForce G102M/PCI/SSE2
+NVIDIA GeForce G102M/PCI/SSE2
NVIDIA GeForce G105M/PCI/SSE2
+NVIDIA GeForce G105M/PCI/SSE2
+NVIDIA GeForce G200/PCI/SSE2
NVIDIA GeForce G200/PCI/SSE2
NVIDIA GeForce G205M/PCI/SSE2
+NVIDIA GeForce G205M/PCI/SSE2
NVIDIA GeForce G210/PCI/SSE2
+NVIDIA GeForce G210/PCI/SSE2
+NVIDIA GeForce G210/PCI/SSE2/3DNOW!
NVIDIA GeForce G210/PCI/SSE2/3DNOW!
NVIDIA GeForce G210M/PCI/SSE2
+NVIDIA GeForce G210M/PCI/SSE2
NVIDIA GeForce G310M/PCI/SSE2
NVIDIA GeForce GT 120/PCI/SSE2
+NVIDIA GeForce GT 120/PCI/SSE2
NVIDIA GeForce GT 120/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 120M/PCI/SSE2
NVIDIA GeForce GT 130M/PCI/SSE2
+NVIDIA GeForce GT 130M/PCI/SSE2
NVIDIA GeForce GT 140/PCI/SSE2
+NVIDIA GeForce GT 140/PCI/SSE2
+NVIDIA GeForce GT 220/PCI/SSE2
NVIDIA GeForce GT 220/PCI/SSE2
NVIDIA GeForce GT 220/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 220/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 220M/PCI/SSE2
+NVIDIA GeForce GT 220M/PCI/SSE2
+NVIDIA GeForce GT 230/PCI/SSE2
NVIDIA GeForce GT 230/PCI/SSE2
NVIDIA GeForce GT 230M/PCI/SSE2
+NVIDIA GeForce GT 230M/PCI/SSE2
NVIDIA GeForce GT 240
NVIDIA GeForce GT 240/PCI/SSE2
+NVIDIA GeForce GT 240/PCI/SSE2
+NVIDIA GeForce GT 240/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 240/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 240M/PCI/SSE2
+NVIDIA GeForce GT 240M/PCI/SSE2
NVIDIA GeForce GT 320/PCI/SSE2
NVIDIA GeForce GT 320M/PCI/SSE2
+NVIDIA GeForce GT 320M/PCI/SSE2
NVIDIA GeForce GT 325M/PCI/SSE2
NVIDIA GeForce GT 330/PCI/SSE2
+NVIDIA GeForce GT 330/PCI/SSE2
NVIDIA GeForce GT 330/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 330M/PCI/SSE2
+NVIDIA GeForce GT 330M/PCI/SSE2
+NVIDIA GeForce GT 335M/PCI/SSE2
NVIDIA GeForce GT 335M/PCI/SSE2
NVIDIA GeForce GT 340/PCI/SSE2
+NVIDIA GeForce GT 340/PCI/SSE2
NVIDIA GeForce GT 340/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 340/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 415M/PCI/SSE2
NVIDIA GeForce GT 415M/PCI/SSE2
NVIDIA GeForce GT 420/PCI/SSE2
+NVIDIA GeForce GT 420/PCI/SSE2
NVIDIA GeForce GT 420M/PCI/SSE2
+NVIDIA GeForce GT 420M/PCI/SSE2
+NVIDIA GeForce GT 425M/PCI/SSE2
NVIDIA GeForce GT 425M/PCI/SSE2
NVIDIA GeForce GT 430/PCI/SSE2
+NVIDIA GeForce GT 430/PCI/SSE2
NVIDIA GeForce GT 430/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 430/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 435M/PCI/SSE2
NVIDIA GeForce GT 435M/PCI/SSE2
NVIDIA GeForce GT 440/PCI/SSE2
+NVIDIA GeForce GT 440/PCI/SSE2
+NVIDIA GeForce GT 440/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 440/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 445M/PCI/SSE2
+NVIDIA GeForce GT 445M/PCI/SSE2
+NVIDIA GeForce GT 520/PCI/SSE2
+NVIDIA GeForce GT 520/PCI/SSE2/3DNOW!
NVIDIA GeForce GT 520M/PCI/SSE2
+NVIDIA GeForce GT 520M/PCI/SSE2
+NVIDIA GeForce GT 525M/PCI/SSE2
NVIDIA GeForce GT 525M/PCI/SSE2
+NVIDIA GeForce GT 530/PCI/SSE2
+NVIDIA GeForce GT 530/PCI/SSE2/3DNOW!
+NVIDIA GeForce GT 540M/PCI/SSE2
NVIDIA GeForce GT 540M/PCI/SSE2
+NVIDIA GeForce GT 545/PCI/SSE2
NVIDIA GeForce GT 550M/PCI/SSE2
+NVIDIA GeForce GT 550M/PCI/SSE2
+NVIDIA GeForce GT 555M/PCI/SSE2
NVIDIA GeForce GT 555M/PCI/SSE2
NVIDIA GeForce GTS 150/PCI/SSE2
+NVIDIA GeForce GTS 150/PCI/SSE2
NVIDIA GeForce GTS 160M/PCI/SSE2
+NVIDIA GeForce GTS 160M/PCI/SSE2
+NVIDIA GeForce GTS 240/PCI/SSE2
NVIDIA GeForce GTS 240/PCI/SSE2
NVIDIA GeForce GTS 250/PCI/SSE2
+NVIDIA GeForce GTS 250/PCI/SSE2
+NVIDIA GeForce GTS 250/PCI/SSE2/3DNOW!
NVIDIA GeForce GTS 250/PCI/SSE2/3DNOW!
NVIDIA GeForce GTS 250M/PCI/SSE2
NVIDIA GeForce GTS 350M/PCI/SSE2
+NVIDIA GeForce GTS 350M/PCI/SSE2
NVIDIA GeForce GTS 360M/PCI/SSE2
+NVIDIA GeForce GTS 360M/PCI/SSE2
+NVIDIA GeForce GTS 450/PCI/SSE2
NVIDIA GeForce GTS 450/PCI/SSE2
NVIDIA GeForce GTS 450/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTS 450/PCI/SSE2/3DNOW!
NVIDIA GeForce GTS 455/PCI/SSE2
NVIDIA GeForce GTX 260/PCI/SSE2
+NVIDIA GeForce GTX 260/PCI/SSE2
+NVIDIA GeForce GTX 260/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 260/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 260M/PCI/SSE2
+NVIDIA GeForce GTX 260M/PCI/SSE2
+NVIDIA GeForce GTX 275/PCI/SSE2
NVIDIA GeForce GTX 275/PCI/SSE2
+NVIDIA GeForce GTX 275/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 280
NVIDIA GeForce GTX 280/PCI/SSE2
NVIDIA GeForce GTX 280M/PCI/SSE2
+NVIDIA GeForce GTX 285
NVIDIA GeForce GTX 285/PCI/SSE2
+NVIDIA GeForce GTX 285/PCI/SSE2
+NVIDIA GeForce GTX 285/PCI/SSE2
+NVIDIA GeForce GTX 295/PCI/SSE2
NVIDIA GeForce GTX 295/PCI/SSE2
NVIDIA GeForce GTX 460 SE/PCI/SSE2
+NVIDIA GeForce GTX 460 SE/PCI/SSE2
+NVIDIA GeForce GTX 460 SE/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 460 SE/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 460/PCI/SSE2
+NVIDIA GeForce GTX 460/PCI/SSE2
NVIDIA GeForce GTX 460/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 460/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 460M/PCI/SSE2
NVIDIA GeForce GTX 460M/PCI/SSE2
NVIDIA GeForce GTX 465/PCI/SSE2
+NVIDIA GeForce GTX 465/PCI/SSE2
NVIDIA GeForce GTX 465/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 465/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 470/PCI/SSE2
NVIDIA GeForce GTX 470/PCI/SSE2
NVIDIA GeForce GTX 470/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 480/PCI/SSE2
NVIDIA GeForce GTX 550 Ti/PCI/SSE2
+NVIDIA GeForce GTX 550 Ti/PCI/SSE2
+NVIDIA GeForce GTX 550 Ti/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 550 Ti/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 560 Ti/PCI/SSE2
+NVIDIA GeForce GTX 560 Ti/PCI/SSE2
NVIDIA GeForce GTX 560 Ti/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 560 Ti/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 560/PCI/SSE2
NVIDIA GeForce GTX 560/PCI/SSE2
+NVIDIA GeForce GTX 560/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 560M/PCI/SSE2
+NVIDIA GeForce GTX 570/PCI/SSE2
NVIDIA GeForce GTX 570/PCI/SSE2
NVIDIA GeForce GTX 570/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 570/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 580/PCI/SSE2
NVIDIA GeForce GTX 580/PCI/SSE2
NVIDIA GeForce GTX 580/PCI/SSE2/3DNOW!
+NVIDIA GeForce GTX 580/PCI/SSE2/3DNOW!
NVIDIA GeForce GTX 580M/PCI/SSE2
NVIDIA GeForce GTX 590/PCI/SSE2
+NVIDIA GeForce GTX 590/PCI/SSE2
NVIDIA GeForce Go 6
NVIDIA GeForce Go 6100
NVIDIA GeForce Go 6100/PCI/SSE2
NVIDIA GeForce Go 6100/PCI/SSE2/3DNOW!
+NVIDIA GeForce Go 6100/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 6150/PCI/SSE2
NVIDIA GeForce Go 6150/PCI/SSE2/3DNOW!
+NVIDIA GeForce Go 6150/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 6200
NVIDIA GeForce Go 6200/PCI/SSE2
NVIDIA GeForce Go 6400
NVIDIA GeForce Go 6400/PCI/SSE2
+NVIDIA GeForce Go 6400/PCI/SSE2
NVIDIA GeForce Go 6600
NVIDIA GeForce Go 6600/PCI/SSE2
+NVIDIA GeForce Go 6600/PCI/SSE2
NVIDIA GeForce Go 6800
NVIDIA GeForce Go 6800 Ultra/PCI/SSE2
+NVIDIA GeForce Go 6800 Ultra/PCI/SSE2
NVIDIA GeForce Go 6800/PCI/SSE2
NVIDIA GeForce Go 7200
NVIDIA GeForce Go 7200/PCI/SSE2
NVIDIA GeForce Go 7200/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 7300
NVIDIA GeForce Go 7300/PCI/SSE2
+NVIDIA GeForce Go 7300/PCI/SSE2
NVIDIA GeForce Go 7300/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 7400
NVIDIA GeForce Go 7400/PCI/SSE2
+NVIDIA GeForce Go 7400/PCI/SSE2
NVIDIA GeForce Go 7400/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 7600
NVIDIA GeForce Go 7600/PCI/SSE2
+NVIDIA GeForce Go 7600/PCI/SSE2
+NVIDIA GeForce Go 7600/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 7600/PCI/SSE2/3DNOW!
NVIDIA GeForce Go 7700
+NVIDIA GeForce Go 7700/PCI/SSE2
NVIDIA GeForce Go 7800
NVIDIA GeForce Go 7800 GTX/PCI/SSE2
NVIDIA GeForce Go 7900
NVIDIA GeForce Go 7900 GS/PCI/SSE2
+NVIDIA GeForce Go 7900 GS/PCI/SSE2
NVIDIA GeForce Go 7900 GTX/PCI/SSE2
NVIDIA GeForce Go 7950 GTX/PCI/SSE2
NVIDIA GeForce PCX
@@ -1275,15 +1913,20 @@ NVIDIA GeForce2 GTS/AGP/SSE
NVIDIA GeForce2 MX/AGP/3DNOW!
NVIDIA GeForce2 MX/AGP/SSE/3DNOW!
NVIDIA GeForce2 MX/AGP/SSE2
+NVIDIA GeForce2 MX/AGP/SSE2
NVIDIA GeForce2 MX/PCI/SSE2
NVIDIA GeForce3/AGP/SSE/3DNOW!
NVIDIA GeForce3/AGP/SSE2
NVIDIA GeForce4 420 Go 32M/AGP/SSE2
NVIDIA GeForce4 420 Go 32M/AGP/SSE2/3DNOW!
NVIDIA GeForce4 420 Go 32M/PCI/SSE2/3DNOW!
+NVIDIA GeForce4 420 Go/AGP/SSE2
NVIDIA GeForce4 440 Go 64M/AGP/SSE2/3DNOW!
+NVIDIA GeForce4 440 Go/AGP/SSE2
NVIDIA GeForce4 460 Go/AGP/SSE2
NVIDIA GeForce4 MX 4000/AGP/SSE/3DNOW!
+NVIDIA GeForce4 MX 4000/AGP/SSE/3DNOW!
+NVIDIA GeForce4 MX 4000/AGP/SSE2
NVIDIA GeForce4 MX 4000/AGP/SSE2
NVIDIA GeForce4 MX 4000/PCI/3DNOW!
NVIDIA GeForce4 MX 4000/PCI/SSE/3DNOW!
@@ -1291,97 +1934,161 @@ NVIDIA GeForce4 MX 4000/PCI/SSE2
NVIDIA GeForce4 MX 420/AGP/SSE/3DNOW!
NVIDIA GeForce4 MX 420/AGP/SSE2
NVIDIA GeForce4 MX 440 with AGP8X/AGP/SSE2
+NVIDIA GeForce4 MX 440 with AGP8X/AGP/SSE2
+NVIDIA GeForce4 MX 440/AGP/SSE2
NVIDIA GeForce4 MX 440/AGP/SSE2
NVIDIA GeForce4 MX 440/AGP/SSE2/3DNOW!
NVIDIA GeForce4 MX 440SE with AGP8X/AGP/SSE2
+NVIDIA GeForce4 MX 440SE with AGP8X/AGP/SSE2
+NVIDIA GeForce4 MX Integrated GPU/AGP/SSE/3DNOW!
NVIDIA GeForce4 MX Integrated GPU/AGP/SSE/3DNOW!
NVIDIA GeForce4 Ti 4200 with AGP8X/AGP/SSE
NVIDIA GeForce4 Ti 4200/AGP/SSE/3DNOW!
NVIDIA GeForce4 Ti 4400/AGP/SSE2
NVIDIA Generic
NVIDIA ION LE/PCI/SSE2
+NVIDIA ION LE/PCI/SSE2
NVIDIA ION/PCI/SSE2
+NVIDIA ION/PCI/SSE2
+NVIDIA ION/PCI/SSE2/3DNOW!
NVIDIA ION/PCI/SSE2/3DNOW!
NVIDIA MCP61/PCI/SSE2
+NVIDIA MCP61/PCI/SSE2
NVIDIA MCP61/PCI/SSE2/3DNOW!
+NVIDIA MCP61/PCI/SSE2/3DNOW!
+NVIDIA MCP73/PCI/SSE2
NVIDIA MCP73/PCI/SSE2
NVIDIA MCP79MH/PCI/SSE2
+NVIDIA MCP79MH/PCI/SSE2
+NVIDIA MCP79MX/PCI/SSE2
NVIDIA MCP79MX/PCI/SSE2
NVIDIA MCP7A-O/PCI/SSE2
+NVIDIA MCP7A-O/PCI/SSE2
NVIDIA MCP7A-S/PCI/SSE2
NVIDIA MCP89-EPT/PCI/SSE2
+NVIDIA MCP89-EPT/PCI/SSE2
+NVIDIA N10M-GE1/PCI/SSE2
NVIDIA N10M-GE1/PCI/SSE2
NVIDIA N10P-GE1/PCI/SSE2
+NVIDIA N10P-GE1/PCI/SSE2
NVIDIA N10P-GV2/PCI/SSE2
+NVIDIA N10P-GV2/PCI/SSE2
+NVIDIA N11M-GE1/PCI/SSE2
NVIDIA N11M-GE1/PCI/SSE2
NVIDIA N11M-GE2/PCI/SSE2
+NVIDIA N11M-GE2/PCI/SSE2
NVIDIA N12E-GS-A1/PCI/SSE2
+NVIDIA N12P-GVR-B-A1/PCI/SSE2
+NVIDIA N13M-GE1-B-A1/PCI/SSE2
+NVIDIA N13P-GL-A1/PCI/SSE2
NVIDIA NB9M-GE/PCI/SSE2
+NVIDIA NB9M-GE/PCI/SSE2
+NVIDIA NB9M-GE1/PCI/SSE2
NVIDIA NB9M-GE1/PCI/SSE2
NVIDIA NB9M-GS/PCI/SSE2
+NVIDIA NB9M-GS/PCI/SSE2
+NVIDIA NB9M-NS/PCI/SSE2
NVIDIA NB9M-NS/PCI/SSE2
NVIDIA NB9P-GE1/PCI/SSE2
+NVIDIA NB9P-GE1/PCI/SSE2
NVIDIA NB9P-GS/PCI/SSE2
NVIDIA NV17/AGP/3DNOW!
NVIDIA NV17/AGP/SSE2
+NVIDIA NV17/AGP/SSE2
NVIDIA NV34
NVIDIA NV35
NVIDIA NV36/AGP/SSE/3DNOW!
NVIDIA NV36/AGP/SSE2
NVIDIA NV41/PCI/SSE2
NVIDIA NV43
+NVIDIA NV43/PCI/SSE2
NVIDIA NV44
+NVIDIA NV44/AGP/SSE2
+NVIDIA NVIDIA GeForce 210 OpenGL Engine
NVIDIA NVIDIA GeForce 210 OpenGL Engine
NVIDIA NVIDIA GeForce 320M OpenGL Engine
+NVIDIA NVIDIA GeForce 320M OpenGL Engine
+NVIDIA NVIDIA GeForce 7300 GT OpenGL Engine
NVIDIA NVIDIA GeForce 7300 GT OpenGL Engine
NVIDIA NVIDIA GeForce 7600 GT OpenGL Engine
NVIDIA NVIDIA GeForce 8600M GT OpenGL Engine
+NVIDIA NVIDIA GeForce 8600M GT OpenGL Engine
+NVIDIA NVIDIA GeForce 8800 GS OpenGL Engine
NVIDIA NVIDIA GeForce 8800 GS OpenGL Engine
NVIDIA NVIDIA GeForce 8800 GT OpenGL Engine
+NVIDIA NVIDIA GeForce 8800 GT OpenGL Engine
+NVIDIA NVIDIA GeForce 9400 OpenGL Engine
NVIDIA NVIDIA GeForce 9400 OpenGL Engine
NVIDIA NVIDIA GeForce 9400M OpenGL Engine
+NVIDIA NVIDIA GeForce 9400M OpenGL Engine
NVIDIA NVIDIA GeForce 9500 GT OpenGL Engine
NVIDIA NVIDIA GeForce 9600M GT OpenGL Engine
+NVIDIA NVIDIA GeForce 9600M GT OpenGL Engine
+NVIDIA NVIDIA GeForce GT 120 OpenGL Engine
NVIDIA NVIDIA GeForce GT 120 OpenGL Engine
NVIDIA NVIDIA GeForce GT 130 OpenGL Engine
+NVIDIA NVIDIA GeForce GT 130 OpenGL Engine
NVIDIA NVIDIA GeForce GT 220 OpenGL Engine
NVIDIA NVIDIA GeForce GT 230M OpenGL Engine
NVIDIA NVIDIA GeForce GT 240M OpenGL Engine
NVIDIA NVIDIA GeForce GT 330M OpenGL Engine
+NVIDIA NVIDIA GeForce GT 330M OpenGL Engine
NVIDIA NVIDIA GeForce GT 420M OpenGL Engine
NVIDIA NVIDIA GeForce GT 425M OpenGL Engine
NVIDIA NVIDIA GeForce GT 430 OpenGL Engine
+NVIDIA NVIDIA GeForce GT 430 OpenGL Engine
NVIDIA NVIDIA GeForce GT 440 OpenGL Engine
NVIDIA NVIDIA GeForce GT 540M OpenGL Engine
NVIDIA NVIDIA GeForce GTS 240 OpenGL Engine
NVIDIA NVIDIA GeForce GTS 250 OpenGL Engine
+NVIDIA NVIDIA GeForce GTS 250 OpenGL Engine
+NVIDIA NVIDIA GeForce GTS 450 OpenGL Engine
NVIDIA NVIDIA GeForce GTS 450 OpenGL Engine
NVIDIA NVIDIA GeForce GTX 285 OpenGL Engine
NVIDIA NVIDIA GeForce GTX 460 OpenGL Engine
+NVIDIA NVIDIA GeForce GTX 460 OpenGL Engine
NVIDIA NVIDIA GeForce GTX 460M OpenGL Engine
NVIDIA NVIDIA GeForce GTX 465 OpenGL Engine
NVIDIA NVIDIA GeForce GTX 470 OpenGL Engine
NVIDIA NVIDIA GeForce GTX 480 OpenGL Engine
+NVIDIA NVIDIA GeForce GTX 480 OpenGL Engine
+NVIDIA NVIDIA GeForce Pre-Release GF108 ES OpenGL Engine
+NVIDIA NVIDIA GeForce Pre-Release ION OpenGL Engine
NVIDIA NVIDIA GeForce Pre-Release ION OpenGL Engine
+NVIDIA NVIDIA GeForce Pre-Release MCP7A-J-DC OpenGL Engine
NVIDIA NVIDIA GeForce4 OpenGL Engine
NVIDIA NVIDIA NV34MAP OpenGL Engine
NVIDIA NVIDIA Quadro 4000 OpenGL Engine
+NVIDIA NVIDIA Quadro 4000 OpenGL Engine
NVIDIA NVIDIA Quadro FX 4800 OpenGL Engine
NVIDIA NVS 2100M/PCI/SSE2
+NVIDIA NVS 2100M/PCI/SSE2
+NVIDIA NVS 300/PCI/SSE2
NVIDIA NVS 300/PCI/SSE2
NVIDIA NVS 3100M/PCI/SSE2
+NVIDIA NVS 3100M/PCI/SSE2
NVIDIA NVS 4100/PCI/SSE2/3DNOW!
NVIDIA NVS 4200M/PCI/SSE2
+NVIDIA NVS 4200M/PCI/SSE2
+NVIDIA NVS 5100M/PCI/SSE2
NVIDIA NVS 5100M/PCI/SSE2
NVIDIA PCI
+NVIDIA Quadro 1000M/PCI/SSE2
+NVIDIA Quadro 2000/PCI/SSE2
NVIDIA Quadro 2000/PCI/SSE2
+NVIDIA Quadro 2000M/PCI/SSE2
+NVIDIA Quadro 3000M/PCI/SSE2
NVIDIA Quadro 4000
NVIDIA Quadro 4000 OpenGL Engine
NVIDIA Quadro 4000/PCI/SSE2
+NVIDIA Quadro 4000/PCI/SSE2
+NVIDIA Quadro 4000M/PCI/SSE2
+NVIDIA Quadro 5000/PCI/SSE2
NVIDIA Quadro 5000/PCI/SSE2
NVIDIA Quadro 5000M/PCI/SSE2
NVIDIA Quadro 600
NVIDIA Quadro 600/PCI/SSE2
+NVIDIA Quadro 600/PCI/SSE2
NVIDIA Quadro 600/PCI/SSE2/3DNOW!
NVIDIA Quadro 6000
NVIDIA Quadro 6000/PCI/SSE2
@@ -1390,16 +2097,22 @@ NVIDIA Quadro DCC
NVIDIA Quadro FX
NVIDIA Quadro FX 1100/AGP/SSE2
NVIDIA Quadro FX 1400/PCI/SSE2
+NVIDIA Quadro FX 1400/PCI/SSE2
NVIDIA Quadro FX 1500
+NVIDIA Quadro FX 1500/PCI/SSE2
NVIDIA Quadro FX 1500M/PCI/SSE2
NVIDIA Quadro FX 1600M/PCI/SSE2
+NVIDIA Quadro FX 1600M/PCI/SSE2
NVIDIA Quadro FX 1700
NVIDIA Quadro FX 1700M/PCI/SSE2
NVIDIA Quadro FX 1800
NVIDIA Quadro FX 1800/PCI/SSE2
NVIDIA Quadro FX 1800M/PCI/SSE2
NVIDIA Quadro FX 2500M/PCI/SSE2
+NVIDIA Quadro FX 2500M/PCI/SSE2
NVIDIA Quadro FX 2700M/PCI/SSE2
+NVIDIA Quadro FX 2700M/PCI/SSE2
+NVIDIA Quadro FX 2800M/PCI/SSE2
NVIDIA Quadro FX 2800M/PCI/SSE2
NVIDIA Quadro FX 3400
NVIDIA Quadro FX 3450
@@ -1411,75 +2124,125 @@ NVIDIA Quadro FX 370
NVIDIA Quadro FX 370/PCI/SSE2
NVIDIA Quadro FX 3700
NVIDIA Quadro FX 3700M/PCI/SSE2
+NVIDIA Quadro FX 3700M/PCI/SSE2
NVIDIA Quadro FX 370M/PCI/SSE2
NVIDIA Quadro FX 3800
NVIDIA Quadro FX 3800M/PCI/SSE2
+NVIDIA Quadro FX 3800M/PCI/SSE2
NVIDIA Quadro FX 4500
NVIDIA Quadro FX 4600
NVIDIA Quadro FX 4800
NVIDIA Quadro FX 4800/PCI/SSE2
+NVIDIA Quadro FX 540/PCI/SSE2/3DNOW!
NVIDIA Quadro FX 560
+NVIDIA Quadro FX 560/PCI/SSE2
NVIDIA Quadro FX 5600
NVIDIA Quadro FX 570
NVIDIA Quadro FX 570/PCI/SSE2
NVIDIA Quadro FX 570M/PCI/SSE2
NVIDIA Quadro FX 580/PCI/SSE2
+NVIDIA Quadro FX 580/PCI/SSE2
+NVIDIA Quadro FX 770M/PCI/SSE2
NVIDIA Quadro FX 770M/PCI/SSE2
NVIDIA Quadro FX 880M
NVIDIA Quadro FX 880M/PCI/SSE2
+NVIDIA Quadro FX 880M/PCI/SSE2
NVIDIA Quadro FX Go700/AGP/SSE2
NVIDIA Quadro NVS
NVIDIA Quadro NVS 110M/PCI/SSE2
+NVIDIA Quadro NVS 110M/PCI/SSE2
NVIDIA Quadro NVS 130M/PCI/SSE2
NVIDIA Quadro NVS 135M/PCI/SSE2
+NVIDIA Quadro NVS 135M/PCI/SSE2
+NVIDIA Quadro NVS 140M/PCI/SSE2
NVIDIA Quadro NVS 140M/PCI/SSE2
NVIDIA Quadro NVS 150M/PCI/SSE2
+NVIDIA Quadro NVS 150M/PCI/SSE2
+NVIDIA Quadro NVS 160M/PCI/SSE2
NVIDIA Quadro NVS 160M/PCI/SSE2
NVIDIA Quadro NVS 210S/PCI/SSE2/3DNOW!
NVIDIA Quadro NVS 285/PCI/SSE2
+NVIDIA Quadro NVS 285/PCI/SSE2
+NVIDIA Quadro NVS 290/PCI/SSE2
NVIDIA Quadro NVS 290/PCI/SSE2
NVIDIA Quadro NVS 295/PCI/SSE2
NVIDIA Quadro NVS 320M/PCI/SSE2
+NVIDIA Quadro NVS 320M/PCI/SSE2
NVIDIA Quadro NVS 55/280 PCI/PCI/SSE2
NVIDIA Quadro NVS/PCI/SSE2
NVIDIA Quadro PCI-E Series/PCI/SSE2/3DNOW!
NVIDIA Quadro VX 200/PCI/SSE2
+NVIDIA Quadro VX 200/PCI/SSE2
+NVIDIA Quadro/AGP/SSE2
NVIDIA Quadro/AGP/SSE2
NVIDIA Quadro2
NVIDIA Quadro4
+NVIDIA Quadro4 750 XGL/AGP/SSE2
NVIDIA RIVA TNT
NVIDIA RIVA TNT2/AGP/SSE2
NVIDIA RIVA TNT2/PCI/3DNOW!
+NVIDIA Tesla C2050/PCI/SSE2
NVIDIA nForce
+NVIDIA nForce 730a/PCI/SSE2
+NVIDIA nForce 730a/PCI/SSE2/3DNOW!
+NVIDIA nForce 750a SLI/PCI/SSE2
+NVIDIA nForce 750a SLI/PCI/SSE2/3DNOW!
+NVIDIA nForce 760i SLI/PCI/SSE2
+NVIDIA nForce 780a SLI/PCI/SSE2/3DNOW!
+NVIDIA nForce 980a/780a SLI/PCI/SSE2
+NVIDIA nForce 980a/780a SLI/PCI/SSE2/3DNOW!
NVIDIA unknown board/AGP/SSE2
NVIDIA unknown board/PCI/SSE2
NVIDIA unknown board/PCI/SSE2/3DNOW!
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5670 OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5670 OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5750 OpenGL Engine
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5750 OpenGL Engine
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5770 OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 5770 OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6490M OpenGL Engine
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6490M OpenGL Engine
Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6750M OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6750M OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6770M OpenGL Engine
+Parallels and ATI Technologies Inc. Parallels using ATI Radeon HD 6970M OpenGL Engine
Parallels and Intel Inc. 3D-Analyze v2.3 - http://www.tommti-systems.com
Parallels and Intel Inc. Parallels using Intel HD Graphics 3000 OpenGL Engine
+Parallels and Intel Inc. Parallels using Intel HD Graphics 3000 OpenGL Engine
+Parallels and NVIDIA Parallels using NVIDIA GeForce 320M OpenGL Engine
Parallels and NVIDIA Parallels using NVIDIA GeForce 320M OpenGL Engine
Parallels and NVIDIA Parallels using NVIDIA GeForce 9400 OpenGL Engine
Parallels and NVIDIA Parallels using NVIDIA GeForce GT 120 OpenGL Engine
+Parallels and NVIDIA Parallels using NVIDIA GeForce GT 120 OpenGL Engine
+Parallels and NVIDIA Parallels using NVIDIA GeForce GT 330M OpenGL Engine
Parallels and NVIDIA Parallels using NVIDIA GeForce GT 330M OpenGL Engine
Radeon RV350 on Gallium
S3
+S3 Fire GL2
S3 Graphics VIA/S3G UniChrome IGP/MMX/K3D
+S3 Graphics VIA/S3G UniChrome IGP/MMX/SSE
+S3 Graphics VIA/S3G UniChrome Pro IGP/MMX/SSE
S3 Graphics VIA/S3G UniChrome Pro IGP/MMX/SSE
S3 Graphics, Incorporated ProSavage/Twister
S3 Graphics, Incorporated S3 Graphics Chrome9 HC
+S3 Graphics, Incorporated S3 Graphics Chrome9 HC
S3 Graphics, Incorporated S3 Graphics DeltaChrome
+S3 Graphics, Incorporated S3 Graphics DeltaChrome
+S3 Graphics, Incorporated VIA Chrome9 HC IGP
S3 Graphics, Incorporated VIA Chrome9 HC IGP
SiS
+SiS 650/M650 VGA
+SiS 661 VGA
SiS 661 VGA
SiS 662 VGA
SiS 741 VGA
SiS 760 VGA
+SiS 760 VGA
+SiS 761GX VGA
SiS 761GX VGA
SiS Mirage Graphics3
+SiS Mirage Graphics3
+SiS Xabre VGA
Trident
Tungsten Graphics
Tungsten Graphics, Inc Mesa DRI 865G GEM 20091221 2009Q4 x86/MMX/SSE2
@@ -1489,6 +2252,7 @@ Tungsten Graphics, Inc Mesa DRI 915G GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 915GM GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 915GM GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 915GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI 915GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945G
Tungsten Graphics, Inc Mesa DRI 945G GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945G GEM 20100330 DEVELOPMENT
@@ -1497,18 +2261,23 @@ Tungsten Graphics, Inc Mesa DRI 945GM GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GM GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GM GEM 20100328 2010Q1 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI 945GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GME x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GME 20061017
Tungsten Graphics, Inc Mesa DRI 945GME GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GME GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 945GME GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI 945GME GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 965GM GEM 20090326 2009Q1 RC2 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 965GM GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 965GM GEM 20091221 2009Q4 x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI 965GM GEM 20091221 2009Q4 x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI 965GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI 965GM GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI G33 20061017 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI G33 GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI G33 GEM 20091221 2009Q4 x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI G33 GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI G41 GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI G41 GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI GMA500 20081116 - 5.0.1.0046 x86/MMX/SSE2
@@ -1518,44 +2287,83 @@ Tungsten Graphics, Inc Mesa DRI IGD GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI IGDNG_D GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI Ironlake Desktop GEM 20100330 DEVELOPMENT x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI Ironlake Mobile GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset 20080716 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20090712 2009Q2 RC3 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20091221 2009Q4 x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20091221 2009Q4 x86/MMX/SSE2
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100328 2010Q1
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100330 DEVELOPMENT
Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc Mesa DRI Mobile Intelå¨ GM45 Express Chipset GEM 20100330 DEVELOPMENT x86/MMX/SSE2
+Tungsten Graphics, Inc. Mesa DRI R200 (RV250 4C66) 20090101 x86/MMX/SSE2 TCL DRI2
Tungsten Graphics, Inc. Mesa DRI R200 (RV280 5964) 20090101 x86/MMX+/3DNow!+/SSE2 TCL DRI2
VIA
VMware, Inc. Gallium 0.3 on SVGA3D; build: RELEASE;
+VMware, Inc. Gallium 0.3 on SVGA3D; build: RELEASE;
+VMware, Inc. Gallium 0.4 on SVGA3D; build: DEBUG; mutex: MSVC Intrinsics
+VMware, Inc. Gallium 0.4 on SVGA3D; build: RELEASE;
+VMware, Inc. Gallium 0.4 on i915 (chipset: 945GM)
VMware, Inc. Gallium 0.4 on i915 (chipset: 945GM)
VMware, Inc. Gallium 0.4 on llvmpipe
+VMware, Inc. Gallium 0.4 on llvmpipe
+VMware, Inc. Gallium 0.4 on softpipe
VMware, Inc. Gallium 0.4 on softpipe
X.Org Gallium 0.4 on AMD BARTS
+X.Org Gallium 0.4 on AMD BARTS
+X.Org Gallium 0.4 on AMD CEDAR
X.Org Gallium 0.4 on AMD CEDAR
X.Org Gallium 0.4 on AMD HEMLOCK
X.Org Gallium 0.4 on AMD JUNIPER
+X.Org Gallium 0.4 on AMD JUNIPER
+X.Org Gallium 0.4 on AMD PALM
+X.Org Gallium 0.4 on AMD REDWOOD
X.Org Gallium 0.4 on AMD REDWOOD
X.Org Gallium 0.4 on AMD RS780
+X.Org Gallium 0.4 on AMD RS780
+X.Org Gallium 0.4 on AMD RS880
X.Org Gallium 0.4 on AMD RS880
X.Org Gallium 0.4 on AMD RV610
+X.Org Gallium 0.4 on AMD RV610
+X.Org Gallium 0.4 on AMD RV620
X.Org Gallium 0.4 on AMD RV620
X.Org Gallium 0.4 on AMD RV630
+X.Org Gallium 0.4 on AMD RV630
X.Org Gallium 0.4 on AMD RV635
+X.Org Gallium 0.4 on AMD RV635
+X.Org Gallium 0.4 on AMD RV710
X.Org Gallium 0.4 on AMD RV710
X.Org Gallium 0.4 on AMD RV730
+X.Org Gallium 0.4 on AMD RV730
+X.Org Gallium 0.4 on AMD RV740
X.Org Gallium 0.4 on AMD RV740
X.Org Gallium 0.4 on AMD RV770
X.Org R300 Project Gallium 0.4 on ATI R300
+X.Org R300 Project Gallium 0.4 on ATI R350
+X.Org R300 Project Gallium 0.4 on ATI R420
+X.Org R300 Project Gallium 0.4 on ATI R580
X.Org R300 Project Gallium 0.4 on ATI R580
X.Org R300 Project Gallium 0.4 on ATI RC410
+X.Org R300 Project Gallium 0.4 on ATI RC410
+X.Org R300 Project Gallium 0.4 on ATI RS480
+X.Org R300 Project Gallium 0.4 on ATI RS482
X.Org R300 Project Gallium 0.4 on ATI RS482
X.Org R300 Project Gallium 0.4 on ATI RS600
X.Org R300 Project Gallium 0.4 on ATI RS690
+X.Org R300 Project Gallium 0.4 on ATI RS690
+X.Org R300 Project Gallium 0.4 on ATI RS740
X.Org R300 Project Gallium 0.4 on ATI RV350
+X.Org R300 Project Gallium 0.4 on ATI RV350
+X.Org R300 Project Gallium 0.4 on ATI RV370
X.Org R300 Project Gallium 0.4 on ATI RV370
X.Org R300 Project Gallium 0.4 on ATI RV410
+X.Org R300 Project Gallium 0.4 on ATI RV410
X.Org R300 Project Gallium 0.4 on ATI RV515
+X.Org R300 Project Gallium 0.4 on ATI RV515
+X.Org R300 Project Gallium 0.4 on ATI RV530
X.Org R300 Project Gallium 0.4 on ATI RV530
+X.Org R300 Project Gallium 0.4 on ATI RV560
+X.Org R300 Project Gallium 0.4 on ATI RV570
X.Org R300 Project Gallium 0.4 on ATI RV570
X.Org R300 Project Gallium 0.4 on R420
X.Org R300 Project Gallium 0.4 on R580
@@ -1571,23 +2379,44 @@ X.Org R300 Project Gallium 0.4 on RV410
X.Org R300 Project Gallium 0.4 on RV515
X.Org R300 Project Gallium 0.4 on RV530
XGI
+nouveau Gallium 0.4 on NV31
+nouveau Gallium 0.4 on NV34
nouveau Gallium 0.4 on NV34
nouveau Gallium 0.4 on NV36
+nouveau Gallium 0.4 on NV43
+nouveau Gallium 0.4 on NV44
+nouveau Gallium 0.4 on NV46
nouveau Gallium 0.4 on NV46
nouveau Gallium 0.4 on NV49
nouveau Gallium 0.4 on NV4A
+nouveau Gallium 0.4 on NV4A
nouveau Gallium 0.4 on NV4B
+nouveau Gallium 0.4 on NV4B
+nouveau Gallium 0.4 on NV4C
nouveau Gallium 0.4 on NV4E
nouveau Gallium 0.4 on NV50
+nouveau Gallium 0.4 on NV63
+nouveau Gallium 0.4 on NV67
+nouveau Gallium 0.4 on NV84
nouveau Gallium 0.4 on NV84
nouveau Gallium 0.4 on NV86
+nouveau Gallium 0.4 on NV86
+nouveau Gallium 0.4 on NV92
nouveau Gallium 0.4 on NV92
nouveau Gallium 0.4 on NV94
+nouveau Gallium 0.4 on NV94
nouveau Gallium 0.4 on NV96
+nouveau Gallium 0.4 on NV96
+nouveau Gallium 0.4 on NV98
nouveau Gallium 0.4 on NV98
nouveau Gallium 0.4 on NVA0
+nouveau Gallium 0.4 on NVA0
nouveau Gallium 0.4 on NVA3
nouveau Gallium 0.4 on NVA5
+nouveau Gallium 0.4 on NVA5
+nouveau Gallium 0.4 on NVA8
nouveau Gallium 0.4 on NVA8
nouveau Gallium 0.4 on NVAA
+nouveau Gallium 0.4 on NVAA
+nouveau Gallium 0.4 on NVAC
nouveau Gallium 0.4 on NVAC
diff --git a/scripts/gpu_table_tester b/scripts/gpu_table_tester
index 52b1c8f31d..9bc958636d 100755
--- a/scripts/gpu_table_tester
+++ b/scripts/gpu_table_tester
@@ -26,25 +26,35 @@ use Getopt::Long;
( $MyName = $0 ) =~ s|.*/||;
my $mini_HELP = "
- $MyName --gpu-table <gpu_table.txt>
- [ --unrecognized-only ]
- [ --table-only ]
- [ <gpu-strings-file> ...]
+ $MyName {--gpu-table|-g} <gpu_table.txt> {--table-only|-t}
- Checks for duplicates and invalid lines in the gpu_table.txt file.
+ Checks for duplicates and invalid lines in the gpu_table.txt file.
- Unless the '--table-only' option is specified, it also tests the recognition of
- values in the gpu-strings-files (or standard input if no files are given).
+ $MyName {--gpu-table|-g} <gpu_table.txt> [ <gpu-strings-file> ... ]
+ [{--unmatched|-u}]
- If the --unrecognized-only option is specified, then no output is produced for
- values that are matched, otherwise a line is output for each input line that
- describes the results of attempting to match the value on that line.
+ Tests the recognition of values in the gpu-strings-files (or
+ standard input if no files are given). The results of attempting to match
+ each input line are displayed in report form, showing:
+ - NO MATCH, unsupported, or supported
+ - the class of the GPU
+ - the label for the recognizer line from the gpu_table that it matched
+
+ If the --unmatched option is specified, then no output is produced for
+ values that are matched.
+
+ $MyName {--gpu-table|-g} <gpu_table.txt> {--diff|-d} <old_results> [ <gpu-strings-file> ...]
+
+ With the --diff option, the report compares the current results to <old-results>,
+ which should be the output from a previous run without --diff. The report shows each
+ input value with the old result and the new result if it is different.
";
-&GetOptions("help" => \$Help,
- "gpu-table=s" => \$GpuTable,
- "unrecognized-only" => \$UnrecognizedOnly,
- "table-only" => \$TableOnly
+&GetOptions("help" => \$Help
+ ,"unmatched" => \$UnMatchedOnly
+ ,"table-only" => \$TableOnly
+ ,"gpu-table=s" => \$GpuTable
+ ,"diff=s" => \$Diff
)
|| die "$mini_HELP";
@@ -55,6 +65,7 @@ if ($Help)
}
$ErrorsSeen = 0;
+$NoMatch = 'NO MATCH'; # constant
die "Must specify a --gpu-table <gpu_table.txt> value"
unless $GpuTable;
@@ -62,19 +73,19 @@ die "Must specify a --gpu-table <gpu_table.txt> value"
open(GPUS, "<$GpuTable")
|| die "Failed to open gpu table '$GpuTable':\n\t$!\n";
-# Parse the GPU table into these table, indexed by the name
+# Parse the GPU table into these tables, indexed by the name
my %NameLine; # name -> line number on which a given name was found (catches duplicate names)
my %RecognizerLine; # name -> line number on which a given name was found (catches duplicate names)
my %Name; # recognizer -> name
my %Recognizer; # name -> recognizer
my %Class; # recognizer -> class
my %Supported; # recognizer -> supported
-my @InOrder; # records the order of the recognizers
+my @InOrder; # lowercased recognizers in file order - these are the ones really used to match
-$Name{'UNRECOGNIZED'} = 'UNRECOGNIZED';
-$NameLine{'UNRECOGNIZED'} = '(hard-coded)'; # use this for error messages in table parsing
-$Class{'UNRECOGNIZED'} = '';
-$Supported{'UNRECOGNIZED'} = '';
+$Name{$NoMatch} = $NoMatch;
+$NameLine{$NoMatch} = '(hard-coded)'; # use this for error messages in table parsing
+$Class{$NoMatch} = '';
+$Supported{$NoMatch} = '';
while (<GPUS>)
{
@@ -142,15 +153,19 @@ print STDERR "\n" if $ErrorsSeen;
exit $ErrorsSeen if $TableOnly;
+
+# Loop over input lines, find the results for each
my %RecognizedBy;
-while (<>)
+while (<>)
{
chomp;
+ my $lcInput = lc $_; # the real gpu table parser lowercases the input string
my $recognizer;
- $RecognizedBy{$_} = 'UNRECOGNIZED';
+ $RecognizedBy{$_} = $NoMatch;
foreach $recognizer ( @InOrder ) # note early exit if recognized
{
- if ( m/$recognizer/ )
+ my $lcRecognizer = lc $recognizer; # the real gpu table parser lowercases the recognizer
+ if ( $lcInput =~ m/$lcRecognizer/ )
{
$RecognizedBy{$_} = $recognizer;
last; # exit recognizer loop
@@ -158,8 +173,6 @@ while (<>)
}
}
-## Print results.
-## For each input, show supported or unsupported, the class, and the recognizer name
format STDOUT_TOP =
GPU String Supported? Class Recognizer
------------------------------------------------------------------------------------------------------ ----------- ----- ------------------------------------
@@ -169,10 +182,81 @@ format STDOUT =
$_, $Supported{$RecognizedBy{$_}},$Class{$RecognizedBy{$_}},$Name{$RecognizedBy{$_}}
.
-foreach ( sort keys %RecognizedBy )
+my $ReportLineTemplate = "A102xxxA12xxxAA*"; # MUST match the format STDOUT above
+
+format DIFF_TOP =
+ ------ OLD ------ ------ NEW ------
+GPU String Supported? Class Supported? Class
+------------------------------------------------------------------------------------------------------ ----------- ----- ----------- -----
+.
+
+my ( $oldSupported, $oldClass, $newSupported, $newClass );
+
+format DIFF =
+@<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<... @<<<<<<<<<< @> @<<<<<<<<<< @>
+$_, $oldSupported, $oldClass, $newSupported, $newClass
+.
+
+if ( ! $Diff )
{
- write if ! $UnrecognizedOnly || $Name{$RecognizedBy{$_}} eq 'UNRECOGNIZED';
- $-++; # suppresses pagination
+ ## Print results.
+ ## For each input, show supported or unsupported, the class, and the recognizer name
+
+ foreach ( sort keys %RecognizedBy )
+ {
+ write if ! $UnMatchedOnly || $Name{$RecognizedBy{$_}} eq $NoMatch;
+ $-++; # suppresses pagination
+ }
+}
+else
+{
+ open OLD, "<$Diff"
+ || die "Failed to open --diff file '$Diff'\n\t$!\n";
+ my $discard = 2;
+ while ( <OLD> )
+ {
+ if ( $discard > 0 )
+ {
+ my ( $gpu, $supported, $class ) = unpack $ReportLineTemplate;
+ $gpu =~ s/\s*$//;
+ ( $OldSupported{$gpu} = $supported ) =~ s/\s*$//;
+ ( $OldClass{$gpu} = $class ) =~ s/\s*$//;
+ }
+ else
+ {
+ $discard--;
+ }
+ }
+ close OLD;
+
+ $FORMAT_TOP_NAME = DIFF_TOP;
+ $FORMAT_NAME = DIFF;
+ foreach ( sort keys %RecognizedBy )
+ {
+ $newSupported = $Supported{$RecognizedBy{$_}} || $NoMatch;
+ $newClass = $Class{$RecognizedBy{$_}};
+
+ if ( ! defined $OldSupported{$_} )
+ {
+ $oldSupported = 'NEW';
+ $oldClass = '-';
+ }
+ else
+ {
+ $oldSupported = $OldSupported{$_} || $NoMatch;
+ $oldClass = $OldClass{$_};
+
+ if ( ( $oldSupported eq $newSupported )
+ && ( $oldClass eq $newClass )
+ )
+ {
+ $newSupported = '';
+ $newClass = '';
+ }
+ }
+ write;
+ $-++; # suppresses pagination
+ }
}
exit $ErrorsSeen;