aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'linden/indra/newview')
-rw-r--r--linden/indra/newview/app_settings/settings.xml24
-rw-r--r--linden/indra/newview/llchatbar.cpp81
-rw-r--r--linden/indra/newview/llfloaterchat.cpp2
-rw-r--r--linden/indra/newview/llfloatergroups.cpp128
-rw-r--r--linden/indra/newview/llfloatergroups.h1
-rw-r--r--linden/indra/newview/llfloaterworldmap.cpp4
-rw-r--r--linden/indra/newview/llfloaterworldmap.h9
-rw-r--r--linden/indra/newview/llimpanel.cpp52
-rw-r--r--linden/indra/newview/llimpanel.h12
-rw-r--r--linden/indra/newview/llmapresponders.cpp29
-rw-r--r--linden/indra/newview/llmapresponders.h2
-rw-r--r--linden/indra/newview/llstartup.cpp11
-rw-r--r--linden/indra/newview/llviewermenu.cpp3
-rw-r--r--linden/indra/newview/llviewerparcelmgr.cpp14
-rw-r--r--linden/indra/newview/llvoiceclient.cpp1
-rw-r--r--linden/indra/newview/llworldmap.cpp60
-rw-r--r--linden/indra/newview/llworldmap.h8
-rw-r--r--linden/indra/newview/llworldmapview.cpp70
-rw-r--r--linden/indra/newview/llworldmapview.h7
-rw-r--r--linden/indra/newview/skins/default/xui/da/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_about.xml2
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_about_land.xml110
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_animation_preview.xml30
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_ao.xml30
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_auction.xml2
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_avatar_picker.xml2
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_avatar_textures.xml10
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_beacons.xml8
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_build_options.xml27
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_bulk_perms.xml12
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_buy_contents.xml4
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_buy_currency.xml23
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_buy_land.xml34
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_buy_object.xml4
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_chat_history.xml5
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_chatterbox-vertical.xml10
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_chatterbox.xml8
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_critical.xml2
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_customize.xml146
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_dictionaries.xml11
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_directory.xml383
-rw-r--r--linden/indra/newview/skins/default/xui/de/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/notifications.xml9
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/panel_groups.xml13
-rw-r--r--linden/indra/newview/skins/default/xui/es/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/fr/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/hu/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/it/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/ja/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/ko/floater_instant_message.xml3
-rwxr-xr-xlinden/indra/newview/skins/default/xui/pl/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/pt/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/ru/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/tr/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/uk/floater_instant_message.xml3
-rw-r--r--linden/indra/newview/skins/default/xui/zh/floater_instant_message.xml5
-rwxr-xr-xlinden/indra/newview/viewer_manifest.py2
59 files changed, 1019 insertions, 436 deletions
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index 11220ed..2b61a19 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -445,7 +445,18 @@
445 <string>F32</string> 445 <string>F32</string>
446 <key>Value</key> 446 <key>Value</key>
447 <integer>30</integer> 447 <integer>30</integer>
448 </map> 448 </map>
449 <key>MapServerURL</key>
450 <map>
451 <key>Comment</key>
452 <string>World map URL template for locating map tiles</string>
453 <key>Persist</key>
454 <integer>0</integer>
455 <key>Type</key>
456 <string>String</string>
457 <key>Value</key>
458 <string>http://map.secondlife.com.s3.amazonaws.com/</string>
459 </map>
449 <key>MapShowAgentCount</key> 460 <key>MapShowAgentCount</key>
450 <map> 461 <map>
451 <key>Comment</key> 462 <key>Comment</key>
@@ -1002,6 +1013,17 @@
1002 <key>Value</key> 1013 <key>Value</key>
1003 <integer>0</integer> 1014 <integer>0</integer>
1004 </map> 1015 </map>
1016 <key>UseWebMapTiles</key>
1017 <map>
1018 <key>Comment</key>
1019 <string>Use web map tiles whenever possible</string>
1020 <key>Persist</key>
1021 <integer>1</integer>
1022 <key>Type</key>
1023 <string>Boolean</string>
1024 <key>Value</key>
1025 <integer>1</integer>
1026 </map>
1005 <key>VerticalIMTabs</key> 1027 <key>VerticalIMTabs</key>
1006 <map> 1028 <map>
1007 <key>Comment</key> 1029 <key>Comment</key>
diff --git a/linden/indra/newview/llchatbar.cpp b/linden/indra/newview/llchatbar.cpp
index dc67448..739c644 100644
--- a/linden/indra/newview/llchatbar.cpp
+++ b/linden/indra/newview/llchatbar.cpp
@@ -71,6 +71,8 @@
71 71
72#include "chatbar_as_cmdline.h" 72#include "chatbar_as_cmdline.h"
73 73
74#include "boost/regex.hpp"
75
74// 76//
75// Globals 77// Globals
76// 78//
@@ -199,12 +201,83 @@ BOOL LLChatBar::handleKeyHere( KEY key, MASK mask )
199 } 201 }
200 } 202 }
201 // only do this in main chatbar 203 // only do this in main chatbar
202 else if ( KEY_ESCAPE == key && gChatBar == this) 204 else if (KEY_ESCAPE == key && mask == MASK_NONE && gChatBar == this)
203 { 205 {
204 stopChat(); 206 stopChat();
205
206 handled = TRUE; 207 handled = TRUE;
207 } 208 }
209 else if (key == KEY_ESCAPE && mask == MASK_CONTROL && gChatBar == this)
210 {
211 if (mInputEditor)
212 {
213 std::vector<LLUUID> avatar_ids;
214 std::vector<LLVector3d> positions;
215 LLWorld::getInstance()->getAvatars(&avatar_ids, &positions);
216
217 if (!avatar_ids.empty())
218 {
219 std::string txt(mInputEditor->getText());
220
221 std::string to_match(txt);
222 std::string left_part = "";
223 std::string right_part = "";
224 S32 cursorPos = mInputEditor->getCursor();
225
226 if (cursorPos < (S32)txt.length())
227 {
228 right_part = txt.substr(cursorPos);
229 left_part = txt.substr(0, cursorPos);
230 to_match = std::string(left_part);
231 }
232 else
233 {
234 to_match = std::string(txt);
235 left_part = txt;
236 }
237
238 std::string pattern_s = "(^|.*[\\.\\?!:;,\\*\\(\\s]+)([a-z0-9]+)$";
239 boost::match_results<std::string::const_iterator> what;
240 boost::regex expression(pattern_s, boost::regex::icase);
241 if (boost::regex_search(to_match, what, expression, boost::match_extra))
242 {
243 to_match = what[2];
244 if (to_match.length() < 3)
245 return handled;
246 }
247 else
248 return handled;
249
250 for (U32 i=0; i<avatar_ids.size(); i++)
251 {
252 if (avatar_ids[i] == gAgent.getID() || avatar_ids[i].isNull())
253 continue;
254/*
255 // Commented out for now... doesn't work above 1024 meters as usual
256 F32 dist = F32(dist_vec(positions[i], gAgent.getPositionGlobal()));
257 if (dist > CHAT_NORMAL_RADIUS)
258 continue;
259*/
260
261 std::string agent_name = " ";
262 std::string agent_surname = " ";
263
264 if(!gCacheName->getName(avatar_ids[i], agent_name, agent_surname) && (agent_name == " " || agent_surname == " "))
265 continue;
266
267 std::string test_name(agent_name);
268 std::transform(test_name.begin(), test_name.end(), test_name.begin(), tolower);
269
270 if (test_name.find(to_match) == 0)
271 {
272 std::string rest_of_match = agent_name.substr(to_match.length(), agent_name.length());
273 mInputEditor->setText(left_part.substr(0, left_part.length() - to_match.length()) + agent_name + right_part);
274 mInputEditor->setSelection(cursorPos, cursorPos + rest_of_match.length());
275 return TRUE;
276 }
277 }
278 }
279 }
280 }
208 281
209 return handled; 282 return handled;
210} 283}
@@ -598,9 +671,7 @@ void LLChatBar::onInputEditorKeystroke( LLLineEditor* caller, void* userdata )
598 KEY key = gKeyboard->currentKey(); 671 KEY key = gKeyboard->currentKey();
599 672
600 // Ignore "special" keys, like backspace, arrows, etc. 673 // Ignore "special" keys, like backspace, arrows, etc.
601 if (length > 1 674 if (length > 1 && raw_text[0] == '/' && key < KEY_SPECIAL)
602 && raw_text[0] == '/'
603 && key < KEY_SPECIAL)
604 { 675 {
605 // we're starting a gesture, attempt to autocomplete 676 // we're starting a gesture, attempt to autocomplete
606 677
diff --git a/linden/indra/newview/llfloaterchat.cpp b/linden/indra/newview/llfloaterchat.cpp
index 1cf85de..b1c1356 100644
--- a/linden/indra/newview/llfloaterchat.cpp
+++ b/linden/indra/newview/llfloaterchat.cpp
@@ -456,7 +456,7 @@ void LLFloaterChat::updateSettings()
456BOOL LLFloaterChat::isOwnNameInText(const std::string &text_line) 456BOOL LLFloaterChat::isOwnNameInText(const std::string &text_line)
457{ 457{
458 std::string my_name = gSavedSettings.getString("FirstName"); 458 std::string my_name = gSavedSettings.getString("FirstName");
459 std::string pattern_s = "(^|.*[\\.\\?!:;\\*\\(\\s]+)(" + my_name + ")([,\\.\\?!:;\\*\\)\\s]+.*|$)"; 459 std::string pattern_s = "(^|.*[',\\.\\?!:;\\*\\(\\s]+)(" + my_name + ")([',\\.\\?!:;\\*\\)\\s]+.*|$)";
460 boost::smatch what; 460 boost::smatch what;
461 boost::regex e1(pattern_s, boost::regex::icase); 461 boost::regex e1(pattern_s, boost::regex::icase);
462 462
diff --git a/linden/indra/newview/llfloatergroups.cpp b/linden/indra/newview/llfloatergroups.cpp
index f00489c..daf1709 100644
--- a/linden/indra/newview/llfloatergroups.cpp
+++ b/linden/indra/newview/llfloatergroups.cpp
@@ -65,7 +65,7 @@
65std::map<const LLUUID, LLFloaterGroupPicker*> LLFloaterGroupPicker::sInstances; 65std::map<const LLUUID, LLFloaterGroupPicker*> LLFloaterGroupPicker::sInstances;
66 66
67// helper functions 67// helper functions
68void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const std::string& none_text, U64 powers_mask = GP_ALL_POWERS); 68void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const std::string& none_text, bool group_picker, U64 powers_mask = GP_ALL_POWERS);
69 69
70///---------------------------------------------------------------------------- 70///----------------------------------------------------------------------------
71/// Class LLFloaterGroupPicker 71/// Class LLFloaterGroupPicker
@@ -121,7 +121,7 @@ void LLFloaterGroupPicker::setPowersMask(U64 powers_mask)
121BOOL LLFloaterGroupPicker::postBuild() 121BOOL LLFloaterGroupPicker::postBuild()
122{ 122{
123 const std::string none_text = getString("none"); 123 const std::string none_text = getString("none");
124 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text, mPowersMask); 124 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text, true, mPowersMask);
125 125
126 childSetAction("OK", onBtnOK, this); 126 childSetAction("OK", onBtnOK, this);
127 127
@@ -206,7 +206,7 @@ void LLPanelGroups::reset()
206 childSetTextArg("groupcount", "[MAX]", llformat("%d", gHippoLimits->getMaxAgentGroups())); 206 childSetTextArg("groupcount", "[MAX]", llformat("%d", gHippoLimits->getMaxAgentGroups()));
207 207
208 const std::string none_text = getString("none"); 208 const std::string none_text = getString("none");
209 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text); 209 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text, false);
210 enableButtons(); 210 enableButtons();
211} 211}
212 212
@@ -218,7 +218,7 @@ BOOL LLPanelGroups::postBuild()
218 childSetTextArg("groupcount", "[MAX]", llformat("%d", gHippoLimits->getMaxAgentGroups())); 218 childSetTextArg("groupcount", "[MAX]", llformat("%d", gHippoLimits->getMaxAgentGroups()));
219 219
220 const std::string none_text = getString("none"); 220 const std::string none_text = getString("none");
221 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text); 221 init_group_list(getChild<LLScrollListCtrl>("group list"), gAgent.getGroupID(), none_text, false);
222 222
223 childSetAction("Activate", onBtnActivate, this); 223 childSetAction("Activate", onBtnActivate, this);
224 224
@@ -344,13 +344,13 @@ void LLPanelGroups::onBtnTitles(void* userdata)
344 344
345void LLPanelGroups::create() 345void LLPanelGroups::create()
346{ 346{
347 llinfos << "LLPanelGroups::create" << llendl; 347 //llinfos << "LLPanelGroups::create" << llendl;
348 LLFloaterGroupInfo::showCreateGroup(NULL); 348 LLFloaterGroupInfo::showCreateGroup(NULL);
349} 349}
350 350
351void LLPanelGroups::activate() 351void LLPanelGroups::activate()
352{ 352{
353 llinfos << "LLPanelGroups::activate" << llendl; 353 //llinfos << "LLPanelGroups::activate" << llendl;
354 LLCtrlListInterface *group_list = childGetListInterface("group list"); 354 LLCtrlListInterface *group_list = childGetListInterface("group list");
355 LLUUID group_id; 355 LLUUID group_id;
356 if (group_list) 356 if (group_list)
@@ -368,7 +368,7 @@ void LLPanelGroups::activate()
368 368
369void LLPanelGroups::info() 369void LLPanelGroups::info()
370{ 370{
371 llinfos << "LLPanelGroups::info" << llendl; 371 //llinfos << "LLPanelGroups::info" << llendl;
372 LLCtrlListInterface *group_list = childGetListInterface("group list"); 372 LLCtrlListInterface *group_list = childGetListInterface("group list");
373 LLUUID group_id; 373 LLUUID group_id;
374 if (group_list && (group_id = group_list->getCurrentID()).notNull()) 374 if (group_list && (group_id = group_list->getCurrentID()).notNull())
@@ -406,7 +406,7 @@ void LLPanelGroups::startIM()
406 406
407void LLPanelGroups::leave() 407void LLPanelGroups::leave()
408{ 408{
409 llinfos << "LLPanelGroups::leave" << llendl; 409 //llinfos << "LLPanelGroups::leave" << llendl;
410 LLCtrlListInterface *group_list = childGetListInterface("group list"); 410 LLCtrlListInterface *group_list = childGetListInterface("group list");
411 LLUUID group_id; 411 LLUUID group_id;
412 if (group_list && (group_id = group_list->getCurrentID()).notNull()) 412 if (group_list && (group_id = group_list->getCurrentID()).notNull())
@@ -446,7 +446,7 @@ void LLPanelGroups::invite()
446 group_id = group_list->getCurrentID(); 446 group_id = group_list->getCurrentID();
447 } 447 }
448 448
449 LLFloaterGroupInvite::showForGroup(group_id); 449 LLFloaterGroupInvite::showForGroup(group_id);
450} 450}
451 451
452void LLPanelGroups::titles() 452void LLPanelGroups::titles()
@@ -477,10 +477,15 @@ bool LLPanelGroups::callbackLeaveGroup(const LLSD& notification, const LLSD& res
477void LLPanelGroups::onGroupList(LLUICtrl* ctrl, void* userdata) 477void LLPanelGroups::onGroupList(LLUICtrl* ctrl, void* userdata)
478{ 478{
479 LLPanelGroups* self = (LLPanelGroups*)userdata; 479 LLPanelGroups* self = (LLPanelGroups*)userdata;
480 if(self) self->enableButtons(); 480 if (self)
481 {
482 self->enableButtons();
483 // check to see if group checkboxes have changed
484 self->applyChangesToGroups();
485 }
481} 486}
482 487
483void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const std::string& none_text, U64 powers_mask) 488void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const std::string& none_text, bool group_picker, U64 powers_mask)
484{ 489{
485 S32 count = gAgent.mGroups.count(); 490 S32 count = gAgent.mGroups.count();
486 LLUUID id; 491 LLUUID id;
@@ -501,6 +506,11 @@ void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const s
501 style = "BOLD"; 506 style = "BOLD";
502 } 507 }
503 508
509 // 0 - Group Name
510 // 1 - Group Notices
511 // 2 - Group Chat
512 // 3 - Group Listing in Profile
513
504 LLSD element; 514 LLSD element;
505 element["id"] = id; 515 element["id"] = id;
506 element["columns"][0]["column"] = "name"; 516 element["columns"][0]["column"] = "name";
@@ -508,27 +518,97 @@ void init_group_list(LLScrollListCtrl* ctrl, const LLUUID& highlight_id, const s
508 element["columns"][0]["font"] = "SANSSERIF"; 518 element["columns"][0]["font"] = "SANSSERIF";
509 element["columns"][0]["font-style"] = style; 519 element["columns"][0]["font-style"] = style;
510 520
521 if (!group_picker)
522 {
523 LLSD& receive_notices_column = element["columns"][1];
524 receive_notices_column["column"] = "receive_notices";
525 receive_notices_column["type"] = "checkbox";
526 receive_notices_column["value"] = group_datap->mAcceptNotices;
527
528 LLSD& join_group_chat_column = element["columns"][2];
529 join_group_chat_column["column"] = "join_group_chat";
530 join_group_chat_column["type"] = "checkbox";
531 join_group_chat_column["value"] = !gIMMgr->getIgnoreGroup(id);
532
533 LLSD& list_in_profile_column = element["columns"][3];
534 list_in_profile_column["column"] = "list_in_profile";
535 list_in_profile_column["type"] = "checkbox";
536 list_in_profile_column["value"] = group_datap->mListInProfile;
537 }
538
511 group_list->addElement(element, ADD_SORTED); 539 group_list->addElement(element, ADD_SORTED);
512 } 540 }
513 } 541 }
514 542
515 // add "none" to list at top 543 // add "none" to list at top
544 std::string style = "NORMAL";
545 if (highlight_id.isNull())
516 { 546 {
517 std::string style = "NORMAL"; 547 style = "BOLD";
518 if (highlight_id.isNull())
519 {
520 style = "BOLD";
521 }
522 LLSD element;
523 element["id"] = LLUUID::null;
524 element["columns"][0]["column"] = "name";
525 element["columns"][0]["value"] = none_text;
526 element["columns"][0]["font"] = "SANSSERIF";
527 element["columns"][0]["font-style"] = style;
528
529 group_list->addElement(element, ADD_TOP);
530 } 548 }
549 LLSD element;
550 element["id"] = LLUUID::null;
551 element["columns"][0]["column"] = "name";
552 //UGLY hack to make sure "none" is always on top -- MC
553 element["columns"][0]["value"] = " (" + none_text + ")";
554 element["columns"][0]["font"] = "SANSSERIF";
555 element["columns"][0]["font-style"] = style;
556
557 if (!group_picker)
558 {
559 LLSD& receive_notices_column = element["columns"][1];
560 receive_notices_column["column"] = "receive_notices";
561 receive_notices_column["type"] = "checkbox";
562 receive_notices_column["value"] = FALSE;
563 receive_notices_column["enabled"] = FALSE;
564
565 LLSD& join_group_chat_column = element["columns"][2];
566 join_group_chat_column["column"] = "join_group_chat";
567 join_group_chat_column["type"] = "checkbox";
568 join_group_chat_column["value"] = FALSE;
569 join_group_chat_column["enabled"] = FALSE;
570
571 LLSD& list_in_profile_column = element["columns"][3];
572 list_in_profile_column["column"] = "list_in_profile";
573 list_in_profile_column["type"] = "checkbox";
574 list_in_profile_column["value"] = FALSE;
575 list_in_profile_column["enabled"] = FALSE;
576 }
577
578 group_list->addElement(element, ADD_TOP);
531 579
532 group_list->selectByValue(highlight_id); 580 group_list->selectByValue(highlight_id);
533} 581}
534 582
583void LLPanelGroups::applyChangesToGroups()
584{
585 LLScrollListCtrl* group_list = getChild<LLScrollListCtrl>("group list");
586 if (group_list)
587 {
588 // just in case we want to allow selecting multiple groups ever -- MC
589 std::vector<LLScrollListItem*> selected = group_list->getAllSelected();
590 for (std::vector<LLScrollListItem*>::iterator itr = selected.begin(); itr != selected.end(); ++itr)
591 {
592 LLUUID group_id = (*itr)->getValue();
593 BOOL receive_notices = (*itr)->getColumn(1)->getValue().asBoolean();
594 BOOL join_group_chat = (*itr)->getColumn(2)->getValue().asBoolean();
595 BOOL list_in_profile = (*itr)->getColumn(3)->getValue().asBoolean();
596
597 LLGroupData group_datap;
598 if (gAgent.getGroupData(group_id, group_datap))
599 {
600 // notices and profile
601 if ((receive_notices != group_datap.mAcceptNotices) || (list_in_profile != group_datap.mListInProfile))
602 {
603 gAgent.setUserGroupFlags(group_id, receive_notices, list_in_profile);
604 }
605
606 // chat
607 if (join_group_chat != (!gIMMgr->getIgnoreGroup(group_id)))
608 {
609 gIMMgr->updateIgnoreGroup(group_id, join_group_chat);
610 }
611 }
612 }
613 }
614}
diff --git a/linden/indra/newview/llfloatergroups.h b/linden/indra/newview/llfloatergroups.h
index c0d06e7..91021f0 100644
--- a/linden/indra/newview/llfloatergroups.h
+++ b/linden/indra/newview/llfloatergroups.h
@@ -102,6 +102,7 @@ protected:
102 102
103 // highlight_id is a group id to highlight 103 // highlight_id is a group id to highlight
104 void enableButtons(); 104 void enableButtons();
105 void applyChangesToGroups();
105 106
106 static void onGroupList(LLUICtrl* ctrl, void* userdata); 107 static void onGroupList(LLUICtrl* ctrl, void* userdata);
107 static void onBtnCreate(void* userdata); 108 static void onBtnCreate(void* userdata);
diff --git a/linden/indra/newview/llfloaterworldmap.cpp b/linden/indra/newview/llfloaterworldmap.cpp
index 4f678c5..781cf4d 100644
--- a/linden/indra/newview/llfloaterworldmap.cpp
+++ b/linden/indra/newview/llfloaterworldmap.cpp
@@ -247,8 +247,8 @@ BOOL LLFloaterWorldMap::postBuild()
247 childSetAction("Clear", onClearBtn, this); 247 childSetAction("Clear", onClearBtn, this);
248 childSetAction("copy_slurl", onCopySLURL, this); 248 childSetAction("copy_slurl", onCopySLURL, this);
249 249
250 mCurZoomVal = log(gMapScale)/log(2.f); 250 mCurZoomVal = log(LLWorldMapView::sMapScale)/log(2.f);
251 childSetValue("zoom slider", gMapScale); 251 childSetValue("zoom slider", LLWorldMapView::sMapScale);
252 252
253 setDefaultBtn(NULL); 253 setDefaultBtn(NULL);
254 254
diff --git a/linden/indra/newview/llfloaterworldmap.h b/linden/indra/newview/llfloaterworldmap.h
index 2153921..83345ed 100644
--- a/linden/indra/newview/llfloaterworldmap.h
+++ b/linden/indra/newview/llfloaterworldmap.h
@@ -68,8 +68,6 @@ public:
68 static void toggle(void*); 68 static void toggle(void*);
69 static void hide(void*); 69 static void hide(void*);
70 70
71 static void addServer(const std::string& server);
72
73 /*virtual*/ void reshape( S32 width, S32 height, BOOL called_from_parent = TRUE ); 71 /*virtual*/ void reshape( S32 width, S32 height, BOOL called_from_parent = TRUE );
74 /*virtual*/ BOOL handleHover(S32 x, S32 y, MASK mask); 72 /*virtual*/ BOOL handleHover(S32 x, S32 y, MASK mask);
75 /*virtual*/ BOOL handleScrollWheel(S32 x, S32 y, S32 clicks); 73 /*virtual*/ BOOL handleScrollWheel(S32 x, S32 y, S32 clicks);
@@ -103,7 +101,6 @@ public:
103 void clearLocationSelection(BOOL clear_ui = FALSE); 101 void clearLocationSelection(BOOL clear_ui = FALSE);
104 void clearAvatarSelection(BOOL clear_ui = FALSE); 102 void clearAvatarSelection(BOOL clear_ui = FALSE);
105 void clearLandmarkSelection(BOOL clear_ui = FALSE); 103 void clearLandmarkSelection(BOOL clear_ui = FALSE);
106 void clearGridSelection(BOOL clear_ui = FALSE);
107 104
108 // Adjust the maximally zoomed out limit of the zoom slider so you can 105 // Adjust the maximally zoomed out limit of the zoom slider so you can
109 // see the whole world, plus a little. 106 // see the whole world, plus a little.
@@ -118,9 +115,8 @@ public:
118protected: 115protected:
119 static void onPanBtn( void* userdata ); 116 static void onPanBtn( void* userdata );
120 117
121 static void onGridManager(void* data);
122
123 static void onGoHome(void* data); 118 static void onGoHome(void* data);
119
124 static void onLandmarkComboPrearrange( LLUICtrl* ctrl, void* data ); 120 static void onLandmarkComboPrearrange( LLUICtrl* ctrl, void* data );
125 static void onLandmarkComboCommit( LLUICtrl* ctrl, void* data ); 121 static void onLandmarkComboCommit( LLUICtrl* ctrl, void* data );
126 122
@@ -162,14 +158,13 @@ protected:
162 static void onLocationCommit( void* userdata ); 158 static void onLocationCommit( void* userdata );
163 static void onCommitLocation( LLUICtrl* ctrl, void* userdata ); 159 static void onCommitLocation( LLUICtrl* ctrl, void* userdata );
164 static void onCommitSearchResult( LLUICtrl* ctrl, void* userdata ); 160 static void onCommitSearchResult( LLUICtrl* ctrl, void* userdata );
165 static void onSelectServer(LLUICtrl*, void* userdata);
166 161
167 void cacheLandmarkPosition(); 162 void cacheLandmarkPosition();
168 163
169protected: 164protected:
170 LLTabContainer* mTabs; 165 LLTabContainer* mTabs;
171 166
172 // Sets gMapScale, in pixels per region 167 // Sets sMapScale, in pixels per region
173 F32 mCurZoomVal; 168 F32 mCurZoomVal;
174 LLFrameTimer mZoomTimer; 169 LLFrameTimer mZoomTimer;
175 170
diff --git a/linden/indra/newview/llimpanel.cpp b/linden/indra/newview/llimpanel.cpp
index 6cf7ffb..797e997 100644
--- a/linden/indra/newview/llimpanel.cpp
+++ b/linden/indra/newview/llimpanel.cpp
@@ -59,6 +59,7 @@
59#include "llfloateractivespeakers.h" 59#include "llfloateractivespeakers.h"
60#include "llfloateravatarinfo.h" 60#include "llfloateravatarinfo.h"
61#include "llfloaterchat.h" 61#include "llfloaterchat.h"
62#include "llfloaterfriends.h"
62#include "llkeyboard.h" 63#include "llkeyboard.h"
63#include "lllineeditor.h" 64#include "lllineeditor.h"
64#include "llmenucommands.h" 65#include "llmenucommands.h"
@@ -1133,7 +1134,8 @@ LLFloaterIMPanel::LLFloaterIMPanel(
1133 mSpeakers(NULL), 1134 mSpeakers(NULL),
1134 mSpeakerPanel(NULL), 1135 mSpeakerPanel(NULL),
1135 mFirstKeystrokeTimer(), 1136 mFirstKeystrokeTimer(),
1136 mLastKeystrokeTimer() 1137 mLastKeystrokeTimer(),
1138 mIMPanelType(IM_PANEL_PLAIN)
1137{ 1139{
1138 mSessionInitialTargetIDs = ids; 1140 mSessionInitialTargetIDs = ids;
1139 init(session_label); 1141 init(session_label);
@@ -1151,27 +1153,32 @@ void LLFloaterIMPanel::init(const std::string& session_label)
1151 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this); 1153 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this);
1152 xml_filename = "floater_instant_message_group.xml"; 1154 xml_filename = "floater_instant_message_group.xml";
1153 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel); 1155 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel);
1156 mIMPanelType = IM_PANEL_GROUP;
1154 break; 1157 break;
1155 case IM_SESSION_INVITE: 1158 case IM_SESSION_INVITE:
1156 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this); 1159 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this);
1157 if (gAgent.isInGroup(mSessionUUID)) 1160 if (gAgent.isInGroup(mSessionUUID))
1158 { 1161 {
1159 xml_filename = "floater_instant_message_group.xml"; 1162 xml_filename = "floater_instant_message_group.xml";
1163 mIMPanelType = IM_PANEL_GROUP;
1160 } 1164 }
1161 else // must be invite to ad hoc IM 1165 else // must be invite to ad hoc IM
1162 { 1166 {
1163 xml_filename = "floater_instant_message_ad_hoc.xml"; 1167 xml_filename = "floater_instant_message_ad_hoc.xml";
1168 mIMPanelType = IM_PANEL_CONFERENCE;
1164 } 1169 }
1165 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel); 1170 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel);
1166 break; 1171 break;
1167 case IM_SESSION_P2P_INVITE: 1172 case IM_SESSION_P2P_INVITE:
1168 xml_filename = "floater_instant_message.xml"; 1173 xml_filename = "floater_instant_message.xml";
1169 mVoiceChannel = new LLVoiceChannelP2P(mSessionUUID, mSessionLabel, mOtherParticipantUUID); 1174 mVoiceChannel = new LLVoiceChannelP2P(mSessionUUID, mSessionLabel, mOtherParticipantUUID);
1175 mIMPanelType = IM_PANEL_PLAIN;
1170 break; 1176 break;
1171 case IM_SESSION_CONFERENCE_START: 1177 case IM_SESSION_CONFERENCE_START:
1172 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this); 1178 mFactoryMap["active_speakers_panel"] = LLCallbackMap(createSpeakersPanel, this);
1173 xml_filename = "floater_instant_message_ad_hoc.xml"; 1179 xml_filename = "floater_instant_message_ad_hoc.xml";
1174 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel); 1180 mVoiceChannel = new LLVoiceChannelGroup(mSessionUUID, mSessionLabel);
1181 mIMPanelType = IM_PANEL_CONFERENCE;
1175 break; 1182 break;
1176 // just received text from another user 1183 // just received text from another user
1177 case IM_NOTHING_SPECIAL: 1184 case IM_NOTHING_SPECIAL:
@@ -1183,10 +1190,12 @@ void LLFloaterIMPanel::init(const std::string& session_label)
1183 mCallBackEnabled = LLVoiceClient::getInstance()->isSessionCallBackPossible(mSessionUUID); 1190 mCallBackEnabled = LLVoiceClient::getInstance()->isSessionCallBackPossible(mSessionUUID);
1184 1191
1185 mVoiceChannel = new LLVoiceChannelP2P(mSessionUUID, mSessionLabel, mOtherParticipantUUID); 1192 mVoiceChannel = new LLVoiceChannelP2P(mSessionUUID, mSessionLabel, mOtherParticipantUUID);
1193 mIMPanelType = IM_PANEL_PLAIN;
1186 break; 1194 break;
1187 default: 1195 default:
1188 llwarns << "Unknown session type" << llendl; 1196 llwarns << "Unknown session type" << llendl;
1189 xml_filename = "floater_instant_message.xml"; 1197 xml_filename = "floater_instant_message.xml";
1198 mIMPanelType = IM_PANEL_PLAIN;
1190 break; 1199 break;
1191 } 1200 }
1192 1201
@@ -1296,6 +1305,14 @@ BOOL LLFloaterIMPanel::postBuild()
1296 1305
1297 // Profile combobox in floater_instant_message.xml 1306 // Profile combobox in floater_instant_message.xml
1298 childSetCommitCallback("profile_callee_btn", onCommitCombo, this); 1307 childSetCommitCallback("profile_callee_btn", onCommitCombo, this);
1308 LLComboBox* comboBox = getChild<LLComboBox>("profile_callee_btn");
1309 if (LLAvatarTracker::instance().getBuddyInfo(mOtherParticipantUUID) == NULL)
1310 {
1311 comboBox->add(getString("add_friend_string"), ADD_TOP);
1312 }
1313 comboBox->setCommitCallback(onCommitCombo);
1314 comboBox->setCallbackUserData(this);
1315
1299 childSetCommitCallback("group_info_btn", onCommitCombo, this); 1316 childSetCommitCallback("group_info_btn", onCommitCombo, this);
1300 1317
1301 childSetAction("start_call_btn", onClickStartCall, this); 1318 childSetAction("start_call_btn", onClickStartCall, this);
@@ -1875,27 +1892,32 @@ void LLFloaterIMPanel::onCommitCombo(LLUICtrl* caller, void* userdata)
1875 } 1892 }
1876 } 1893 }
1877 } 1894 }
1878 else if (caller->getValue().asString() == "pay_entry") 1895 // profile
1879 { 1896 else if (self->getIMType() == IM_PANEL_PLAIN)
1880 handle_pay_by_id(self->getOtherParticipantID());
1881 }
1882 else if (caller->getValue().asString() == "teleport_entry")
1883 {
1884 handle_lure(self->getOtherParticipantID());
1885 }
1886 else
1887 { 1897 {
1888 // group 1898 if (caller->getValue().asString() == "pay_entry")
1889 if (self->getOtherParticipantID() == self->getSessionID())
1890 { 1899 {
1891 LLFloaterGroupInfo::showFromUUID(self->getSessionID()); 1900 handle_pay_by_id(self->getOtherParticipantID());
1892 } 1901 }
1893 // profile 1902 else if (caller->getValue().asString() == "teleport_entry")
1894 else 1903 {
1904 handle_lure(self->getOtherParticipantID());
1905 }
1906 else if (caller->getValue().asString() == self->getString("add_friend_string"))
1907 {
1908 std::string fullname = self->getTitle();
1909 LLPanelFriends::requestFriendshipDialog(self->getOtherParticipantID(), fullname);
1910 }
1911 else
1895 { 1912 {
1896 LLFloaterAvatarInfo::showFromDirectory(self->getOtherParticipantID()); 1913 LLFloaterAvatarInfo::showFromDirectory(self->getOtherParticipantID());
1897 } 1914 }
1898 } 1915 }
1916 // group
1917 else if (self->getIMType() == IM_PANEL_GROUP)
1918 {
1919 LLFloaterGroupInfo::showFromUUID(self->getSessionID());
1920 }
1899 } 1921 }
1900} 1922}
1901 1923
diff --git a/linden/indra/newview/llimpanel.h b/linden/indra/newview/llimpanel.h
index 5887095..ddcbdc7 100644
--- a/linden/indra/newview/llimpanel.h
+++ b/linden/indra/newview/llimpanel.h
@@ -364,6 +364,18 @@ private:
364 364
365 typedef std::map<LLUUID, LLStyleSP> styleMap; 365 typedef std::map<LLUUID, LLStyleSP> styleMap;
366 static styleMap mStyleMap; 366 static styleMap mStyleMap;
367
368 typedef enum e_im_format
369 {
370 IM_PANEL_PLAIN,
371 IM_PANEL_GROUP,
372 IM_PANEL_CONFERENCE
373 } EIMPanelType;
374
375 EIMPanelType mIMPanelType;
376
377public:
378 EIMPanelType getIMType() { return mIMPanelType; }
367}; 379};
368 380
369 381
diff --git a/linden/indra/newview/llmapresponders.cpp b/linden/indra/newview/llmapresponders.cpp
index 140f390..9d974f2 100644
--- a/linden/indra/newview/llmapresponders.cpp
+++ b/linden/indra/newview/llmapresponders.cpp
@@ -4,7 +4,7 @@
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$ 5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 * 6 *
7 * Copyright (c) 2006-2009, Linden Research, Inc. 7 * Copyright (c) 2006-2010, Linden Research, Inc.
8 * 8 *
9 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
10 * The source code in this file ("Source Code") is provided by Linden Lab 10 * The source code in this file ("Source Code") is provided by Linden Lab
@@ -57,6 +57,8 @@ void LLMapLayerResponder::result(const LLSD& result)
57 57
58 LLWorldMap::getInstance()->mMapLayers[agent_flags].clear(); 58 LLWorldMap::getInstance()->mMapLayers[agent_flags].clear();
59 59
60 bool use_web_map_tiles = LLWorldMap::useWebMapTiles();
61
60 LLSD::array_const_iterator iter; 62 LLSD::array_const_iterator iter;
61 BOOL adjust = FALSE; 63 BOOL adjust = FALSE;
62 for(iter = result["LayerData"].beginArray(); iter != result["LayerData"].endArray(); ++iter) 64 for(iter = result["LayerData"].beginArray(); iter != result["LayerData"].endArray(); ++iter)
@@ -65,16 +67,24 @@ void LLMapLayerResponder::result(const LLSD& result)
65 67
66 LLWorldMapLayer new_layer; 68 LLWorldMapLayer new_layer;
67 new_layer.LayerDefined = TRUE; 69 new_layer.LayerDefined = TRUE;
68 new_layer.LayerImageID = layer_data["ImageID"];
69 new_layer.LayerImage = gImageList.getImage(new_layer.LayerImageID, MIPMAP_TRUE, FALSE);
70 gGL.getTexUnit(0)->bind(new_layer.LayerImage.get());
71 new_layer.LayerImage->setAddressMode(LLTexUnit::TAM_CLAMP);
72 70
73 new_layer.LayerExtents.mLeft = layer_data["Left"]; 71 new_layer.LayerExtents.mLeft = layer_data["Left"];
74 new_layer.LayerExtents.mRight = layer_data["Right"]; 72 new_layer.LayerExtents.mRight = layer_data["Right"];
75 new_layer.LayerExtents.mBottom = layer_data["Bottom"]; 73 new_layer.LayerExtents.mBottom = layer_data["Bottom"];
76 new_layer.LayerExtents.mTop = layer_data["Top"]; 74 new_layer.LayerExtents.mTop = layer_data["Top"];
77 75
76 new_layer.LayerImageID = layer_data["ImageID"];
77// if (use_web_map_tiles)
78// {
79// new_layer.LayerImage = LLWorldMap::loadObjectsTile((U32)new_layer.LayerExtents.mLeft, (U32)new_layer.LayerExtents.mBottom); // no good... Maybe using of level 2 and higher web maps ?
80// }
81// else
82// {
83 new_layer.LayerImage = gImageList.getImage(new_layer.LayerImageID, MIPMAP_TRUE, FALSE);
84// }
85 gGL.getTexUnit(0)->bind(new_layer.LayerImage.get());
86 new_layer.LayerImage->setAddressMode(LLTexUnit::TAM_CLAMP);
87
78 F32 x_meters = F32(new_layer.LayerExtents.mLeft*REGION_WIDTH_UNITS); 88 F32 x_meters = F32(new_layer.LayerExtents.mLeft*REGION_WIDTH_UNITS);
79 F32 y_meters = F32(new_layer.LayerExtents.mBottom*REGION_WIDTH_UNITS); 89 F32 y_meters = F32(new_layer.LayerExtents.mBottom*REGION_WIDTH_UNITS);
80 adjust = LLWorldMap::getInstance()->extendAABB(U32(x_meters), U32(y_meters), 90 adjust = LLWorldMap::getInstance()->extendAABB(U32(x_meters), U32(y_meters),
@@ -163,7 +173,14 @@ void LLMapLayerResponder::result(const LLSD& result)
163 siminfo->mRegionFlags = region_flags; 173 siminfo->mRegionFlags = region_flags;
164 siminfo->mWaterHeight = (F32) water_height; 174 siminfo->mWaterHeight = (F32) water_height;
165 siminfo->mMapImageID[agent_flags] = image_id; 175 siminfo->mMapImageID[agent_flags] = image_id;
166 siminfo->mCurrentImage = gImageList.getImage(siminfo->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE); 176 if (use_web_map_tiles)
177 {
178 siminfo->mCurrentImage = LLWorldMap::loadObjectsTile((U32)x_regions, (U32)y_regions);
179 }
180 else
181 {
182 siminfo->mCurrentImage = gImageList.getImage(siminfo->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE);
183 }
167 siminfo->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP); 184 siminfo->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP);
168 gGL.getTexUnit(0)->bind(siminfo->mCurrentImage.get()); 185 gGL.getTexUnit(0)->bind(siminfo->mCurrentImage.get());
169 186
diff --git a/linden/indra/newview/llmapresponders.h b/linden/indra/newview/llmapresponders.h
index 8fb1fb0..b6fb8e5 100644
--- a/linden/indra/newview/llmapresponders.h
+++ b/linden/indra/newview/llmapresponders.h
@@ -4,7 +4,7 @@
4 * 4 *
5 * $LicenseInfo:firstyear=2006&license=viewergpl$ 5 * $LicenseInfo:firstyear=2006&license=viewergpl$
6 * 6 *
7 * Copyright (c) 2006-2009, Linden Research, Inc. 7 * Copyright (c) 2006-2010, Linden Research, Inc.
8 * 8 *
9 * Second Life Viewer Source Code 9 * Second Life Viewer Source Code
10 * The source code in this file ("Source Code") is provided by Linden Lab 10 * The source code in this file ("Source Code") is provided by Linden Lab
diff --git a/linden/indra/newview/llstartup.cpp b/linden/indra/newview/llstartup.cpp
index 606262f..4fd4daa 100644
--- a/linden/indra/newview/llstartup.cpp
+++ b/linden/indra/newview/llstartup.cpp
@@ -1127,6 +1127,7 @@ bool idle_startup()
1127 requested_options.push_back("buddy-list"); 1127 requested_options.push_back("buddy-list");
1128 requested_options.push_back("ui-config"); 1128 requested_options.push_back("ui-config");
1129#endif 1129#endif
1130 requested_options.push_back("map-server-url");
1130 requested_options.push_back("tutorial_setting"); 1131 requested_options.push_back("tutorial_setting");
1131 requested_options.push_back("login-flags"); 1132 requested_options.push_back("login-flags");
1132 requested_options.push_back("global-textures"); 1133 requested_options.push_back("global-textures");
@@ -1769,7 +1770,15 @@ bool idle_startup()
1769 LLStartUp::setShouldAutoLogin(false); 1770 LLStartUp::setShouldAutoLogin(false);
1770 show_connect_box = true; 1771 show_connect_box = true;
1771 } 1772 }
1772 1773
1774 std::string map_server_url = LLUserAuth::getInstance()->getResponse("map-server-url");
1775 if(!map_server_url.empty())
1776 {
1777 gSavedSettings.setString("MapServerURL", map_server_url);
1778 //llwarns << "MapServerURL" << map_server_url << llendl;
1779 }
1780 // else llwarns << "MapServerURL empty"<< llendl;
1781
1773 // Pass the user information to the voice chat server interface. 1782 // Pass the user information to the voice chat server interface.
1774 gVoiceClient->userAuthorized(firstname, lastname, gAgentID); 1783 gVoiceClient->userAuthorized(firstname, lastname, gAgentID);
1775 } 1784 }
diff --git a/linden/indra/newview/llviewermenu.cpp b/linden/indra/newview/llviewermenu.cpp
index e37f33e..fd6e842 100644
--- a/linden/indra/newview/llviewermenu.cpp
+++ b/linden/indra/newview/llviewermenu.cpp
@@ -844,6 +844,9 @@ void init_client_menu(LLMenuGL* menu)
844 844
845 menu->append(new LLMenuItemCallGL("Clear Group Cache", 845 menu->append(new LLMenuItemCallGL("Clear Group Cache",
846 LLGroupMgr::debugClearAllGroups)); 846 LLGroupMgr::debugClearAllGroups));
847
848 menu->append(new LLMenuItemCheckGL("Use Web Map Tiles", menu_toggle_control, NULL, menu_check_control, (void*)"UseWebMapTiles"));
849
847 menu->appendSeparator(); 850 menu->appendSeparator();
848 851
849 sub_menu = new LLMenuGL("Rendering"); 852 sub_menu = new LLMenuGL("Rendering");
diff --git a/linden/indra/newview/llviewerparcelmgr.cpp b/linden/indra/newview/llviewerparcelmgr.cpp
index 21fca25..61b91fe 100644
--- a/linden/indra/newview/llviewerparcelmgr.cpp
+++ b/linden/indra/newview/llviewerparcelmgr.cpp
@@ -1071,7 +1071,19 @@ LLViewerParcelMgr::ParcelBuyInfo* LLViewerParcelMgr::setupParcelBuy(
1071 LLNotifications::instance().add("CannotBuyLandNoRegion"); 1071 LLNotifications::instance().add("CannotBuyLandNoRegion");
1072 return NULL; 1072 return NULL;
1073 } 1073 }
1074 1074
1075 /* Check for maturity being not higher than the current users ability and preference. */
1076 U8 sim_access = region->getSimAccess();
1077 const LLAgentAccess& agent_access = gAgent.getAgentAccess();
1078 // if the region is PG, we're happy already, so do nothing
1079 // but if we're set to avoid either mature or adult, get us outta here
1080 if (((sim_access == SIM_ACCESS_MATURE) && !agent_access.canAccessMature()) ||
1081 ((sim_access == SIM_ACCESS_ADULT) && !agent_access.canAccessAdult()))
1082 {
1083 LLNotifications::instance().add("CannotBuyLandMaturity");
1084 return NULL;
1085 }
1086
1075 if (is_claim) 1087 if (is_claim)
1076 { 1088 {
1077 llinfos << "Claiming " << mWestSouth << " to " << mEastNorth << llendl; 1089 llinfos << "Claiming " << mWestSouth << " to " << mEastNorth << llendl;
diff --git a/linden/indra/newview/llvoiceclient.cpp b/linden/indra/newview/llvoiceclient.cpp
index 660b60a..d67b9e3 100644
--- a/linden/indra/newview/llvoiceclient.cpp
+++ b/linden/indra/newview/llvoiceclient.cpp
@@ -1121,6 +1121,7 @@ LLVoiceClient::LLVoiceClient()
1121 mMicVolume = 0; 1121 mMicVolume = 0;
1122 1122
1123 mAudioSession = NULL; 1123 mAudioSession = NULL;
1124 mNextAudioSession = NULL;
1124 mAudioSessionChanged = false; 1125 mAudioSessionChanged = false;
1125 1126
1126 // Initial dirty state 1127 // Initial dirty state
diff --git a/linden/indra/newview/llworldmap.cpp b/linden/indra/newview/llworldmap.cpp
index 908cd87..c6242f6 100644
--- a/linden/indra/newview/llworldmap.cpp
+++ b/linden/indra/newview/llworldmap.cpp
@@ -37,6 +37,7 @@
37#include "llregionhandle.h" 37#include "llregionhandle.h"
38#include "message.h" 38#include "message.h"
39 39
40
40#include "llappviewer.h" // for gPacificDaylightTime 41#include "llappviewer.h" // for gPacificDaylightTime
41#include "llagent.h" 42#include "llagent.h"
42#include "llmapresponders.h" 43#include "llmapresponders.h"
@@ -46,9 +47,8 @@
46#include "llviewerimagelist.h" 47#include "llviewerimagelist.h"
47#include "llviewerregion.h" 48#include "llviewerregion.h"
48#include "llregionflags.h" 49#include "llregionflags.h"
49 50 #include "hippoGridManager.h"
50#include "hippoGridManager.h" 51bool LLWorldMap::sGotMapURL = false;
51
52const F32 REQUEST_ITEMS_TIMER = 10.f * 60.f; // 10 minutes 52const F32 REQUEST_ITEMS_TIMER = 10.f * 60.f; // 10 minutes
53 53
54// For DEV-17507, do lazy image loading in llworldmapview.cpp instead, 54// For DEV-17507, do lazy image loading in llworldmapview.cpp instead,
@@ -86,6 +86,11 @@ LLSimInfo::LLSimInfo()
86} 86}
87 87
88 88
89LLVector3d LLSimInfo::getGlobalOrigin() const
90{
91 return from_region_handle(mHandle);
92}
93
89LLVector3d LLSimInfo::getGlobalPos(LLVector3 local_pos) const 94LLVector3d LLSimInfo::getGlobalPos(LLVector3 local_pos) const
90{ 95{
91 LLVector3d pos = from_region_handle(mHandle); 96 LLVector3d pos = from_region_handle(mHandle);
@@ -514,16 +519,13 @@ void LLWorldMap::processMapLayerReply(LLMessageSystem* msg, void**)
514 519
515 LLWorldMap::getInstance()->mMapLayers[agent_flags].clear(); 520 LLWorldMap::getInstance()->mMapLayers[agent_flags].clear();
516 521
522// bool use_web_map_tiles = useWebMapTiles();
517 BOOL adjust = FALSE; 523 BOOL adjust = FALSE;
518 for (S32 block=0; block<num_blocks; ++block) 524 for (S32 block=0; block<num_blocks; ++block)
519 { 525 {
520 LLWorldMapLayer new_layer; 526 LLWorldMapLayer new_layer;
521 new_layer.LayerDefined = TRUE; 527 new_layer.LayerDefined = TRUE;
522 msg->getUUIDFast(_PREHASH_LayerData, _PREHASH_ImageID, new_layer.LayerImageID, block); 528 msg->getUUIDFast(_PREHASH_LayerData, _PREHASH_ImageID, new_layer.LayerImageID, block);
523 new_layer.LayerImage = gImageList.getImage(new_layer.LayerImageID, MIPMAP_TRUE, FALSE);
524
525 gGL.getTexUnit(0)->bind(new_layer.LayerImage.get());
526 new_layer.LayerImage->setAddressMode(LLTexUnit::TAM_CLAMP);
527 529
528 U32 left, right, top, bottom; 530 U32 left, right, top, bottom;
529 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Left, left, block); 531 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Left, left, block);
@@ -531,6 +533,18 @@ void LLWorldMap::processMapLayerReply(LLMessageSystem* msg, void**)
531 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Top, top, block); 533 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Top, top, block);
532 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Bottom, bottom, block); 534 msg->getU32Fast(_PREHASH_LayerData, _PREHASH_Bottom, bottom, block);
533 535
536// if (use_web_map_tiles)
537// {
538// new_layer.LayerImage = loadObjectsTile(left, bottom); // no good... Maybe using of level 2 and higher web maps ?
539// }
540// else
541// {
542 new_layer.LayerImage = gImageList.getImage(new_layer.LayerImageID, MIPMAP_TRUE, FALSE);
543// }
544
545 gGL.getTexUnit(0)->bind(new_layer.LayerImage.get());
546 new_layer.LayerImage->setAddressMode(LLTexUnit::TAM_CLAMP);
547
534 new_layer.LayerExtents.mLeft = left; 548 new_layer.LayerExtents.mLeft = left;
535 new_layer.LayerExtents.mRight = right; 549 new_layer.LayerExtents.mRight = right;
536 new_layer.LayerExtents.mBottom = bottom; 550 new_layer.LayerExtents.mBottom = bottom;
@@ -550,6 +564,26 @@ void LLWorldMap::processMapLayerReply(LLMessageSystem* msg, void**)
550} 564}
551 565
552// public static 566// public static
567bool LLWorldMap::useWebMapTiles()
568{
569 return gSavedSettings.getBOOL("UseWebMapTiles") &&
570 (( gHippoGridManager->getConnectedGrid()->isSecondLife() || sGotMapURL) && LLWorldMap::getInstance()->mCurrentMap == 0);
571}
572
573// public static
574LLPointer<LLViewerImage> LLWorldMap::loadObjectsTile(U32 grid_x, U32 grid_y)
575{
576 // Get the grid coordinates
577 std::string imageurl = gSavedSettings.getString("MapServerURL") + llformat("map-%d-%d-%d-objects.jpg", 1, grid_x, grid_y);
578
579 LLPointer<LLViewerImage> img = gImageList.getImageFromUrl(imageurl);
580 img->setBoostLevel(LLViewerImageBoostLevel::BOOST_MAP);
581
582 // Return the smart pointer
583 return img;
584}
585
586// public static
553void LLWorldMap::processMapBlockReply(LLMessageSystem* msg, void**) 587void LLWorldMap::processMapBlockReply(LLMessageSystem* msg, void**)
554{ 588{
555 U32 agent_flags; 589 U32 agent_flags;
@@ -565,6 +599,9 @@ void LLWorldMap::processMapBlockReply(LLMessageSystem* msg, void**)
565 599
566 bool found_null_sim = false; 600 bool found_null_sim = false;
567 601
602#ifdef IMMEDIATE_IMAGE_LOAD
603 bool use_web_map_tiles = useWebMapTiles();
604#endif
568 BOOL adjust = FALSE; 605 BOOL adjust = FALSE;
569 for (S32 block=0; block<num_blocks; ++block) 606 for (S32 block=0; block<num_blocks; ++block)
570 { 607 {
@@ -635,7 +672,14 @@ void LLWorldMap::processMapBlockReply(LLMessageSystem* msg, void**)
635 siminfo->mMapImageID[agent_flags] = image_id; 672 siminfo->mMapImageID[agent_flags] = image_id;
636 673
637#ifdef IMMEDIATE_IMAGE_LOAD 674#ifdef IMMEDIATE_IMAGE_LOAD
638 siminfo->mCurrentImage = gImageList.getImage(siminfo->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE); 675 if (use_web_map_tiles)
676 {
677 siminfo->mCurrentImage = loadObjectsTile((U32)x_regions, (U32)y_regions);
678 }
679 else
680 {
681 siminfo->mCurrentImage = gImageList.getImage(siminfo->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE);
682 }
639 gGL.getTexUnit(0)->bind(siminfo->mCurrentImage.get()); 683 gGL.getTexUnit(0)->bind(siminfo->mCurrentImage.get());
640 siminfo->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP); 684 siminfo->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP);
641#endif 685#endif
diff --git a/linden/indra/newview/llworldmap.h b/linden/indra/newview/llworldmap.h
index 6ce66ff..b7089f3 100644
--- a/linden/indra/newview/llworldmap.h
+++ b/linden/indra/newview/llworldmap.h
@@ -76,6 +76,8 @@ public:
76 LLSimInfo(); 76 LLSimInfo();
77 77
78 LLVector3d getGlobalPos(LLVector3 local_pos) const; 78 LLVector3d getGlobalPos(LLVector3 local_pos) const;
79 // Get the world coordinates of the SW corner of that region
80 LLVector3d getGlobalOrigin() const;
79 81
80public: 82public:
81 U64 mHandle; 83 U64 mHandle;
@@ -164,6 +166,10 @@ public:
164 static void processMapBlockReply(LLMessageSystem*, void**); 166 static void processMapBlockReply(LLMessageSystem*, void**);
165 static void processMapItemReply(LLMessageSystem*, void**); 167 static void processMapItemReply(LLMessageSystem*, void**);
166 168
169 static void gotMapServerURL(bool flag) { sGotMapURL = flag; }
170 static bool useWebMapTiles();
171 static LLPointer<LLViewerImage> loadObjectsTile(U32 grid_x, U32 grid_y);
172
167 void dump(); 173 void dump();
168 174
169 // Extend the bounding box of the list of simulators. Returns true 175 // Extend the bounding box of the list of simulators. Returns true
@@ -226,6 +232,8 @@ private:
226 std::string mSLURL; 232 std::string mSLURL;
227 url_callback_t mSLURLCallback; 233 url_callback_t mSLURLCallback;
228 bool mSLURLTeleport; 234 bool mSLURLTeleport;
235
236 static bool sGotMapURL;
229}; 237};
230 238
231#endif 239#endif
diff --git a/linden/indra/newview/llworldmapview.cpp b/linden/indra/newview/llworldmapview.cpp
index d8e5b3d..e12bd08 100644
--- a/linden/indra/newview/llworldmapview.cpp
+++ b/linden/indra/newview/llworldmapview.cpp
@@ -50,7 +50,6 @@
50#include "llfloatermap.h" 50#include "llfloatermap.h"
51#include "llfloaterworldmap.h" 51#include "llfloaterworldmap.h"
52#include "llfocusmgr.h" 52#include "llfocusmgr.h"
53//#include "llmutelist.h" info not being sent
54#include "lltextbox.h" 53#include "lltextbox.h"
55#include "lltextureview.h" 54#include "lltextureview.h"
56#include "lltracker.h" 55#include "lltracker.h"
@@ -103,6 +102,7 @@ F32 LLWorldMapView::sTargetPanY = 0.f;
103S32 LLWorldMapView::sTrackingArrowX = 0; 102S32 LLWorldMapView::sTrackingArrowX = 0;
104S32 LLWorldMapView::sTrackingArrowY = 0; 103S32 LLWorldMapView::sTrackingArrowY = 0;
105F32 LLWorldMapView::sPixelsPerMeter = 1.f; 104F32 LLWorldMapView::sPixelsPerMeter = 1.f;
105F32 LLWorldMapView::sMapScale = 128.f;
106F32 CONE_SIZE = 0.6f; 106F32 CONE_SIZE = 0.6f;
107 107
108std::map<std::string,std::string> LLWorldMapView::sStringsMap; 108std::map<std::string,std::string> LLWorldMapView::sStringsMap;
@@ -179,7 +179,7 @@ LLWorldMapView::LLWorldMapView(const std::string& name, const LLRect& rect )
179 mMouseDownY( 0 ), 179 mMouseDownY( 0 ),
180 mSelectIDStart(0) 180 mSelectIDStart(0)
181{ 181{
182 sPixelsPerMeter = gMapScale / REGION_WIDTH_METERS; 182 sPixelsPerMeter = sMapScale / REGION_WIDTH_METERS;
183 clearLastClick(); 183 clearLastClick();
184 184
185 const S32 DIR_WIDTH = 10; 185 const S32 DIR_WIDTH = 10;
@@ -240,14 +240,14 @@ void LLWorldMapView::cleanupTextures()
240// static 240// static
241void LLWorldMapView::setScale( F32 scale ) 241void LLWorldMapView::setScale( F32 scale )
242{ 242{
243 if (scale != gMapScale) 243 if (scale != sMapScale)
244 { 244 {
245 F32 old_scale = gMapScale; 245 F32 old_scale = sMapScale;
246 246
247 gMapScale = scale; 247 sMapScale = scale;
248 if (gMapScale == 0.f) 248 if (sMapScale == 0.f)
249 { 249 {
250 gMapScale = 0.1f; 250 sMapScale = 0.1f;
251 } 251 }
252 252
253 F32 ratio = (scale / old_scale); 253 F32 ratio = (scale / old_scale);
@@ -256,7 +256,7 @@ void LLWorldMapView::setScale( F32 scale )
256 sTargetPanX = sPanX; 256 sTargetPanX = sPanX;
257 sTargetPanY = sPanY; 257 sTargetPanY = sPanY;
258 258
259 sPixelsPerMeter = gMapScale / REGION_WIDTH_METERS; 259 sPixelsPerMeter = sMapScale / REGION_WIDTH_METERS;
260 } 260 }
261} 261}
262 262
@@ -354,11 +354,11 @@ void LLWorldMapView::draw()
354 354
355 // Find x and y position relative to camera's center. 355 // Find x and y position relative to camera's center.
356 LLVector3d rel_region_pos = origin_global - camera_global; 356 LLVector3d rel_region_pos = origin_global - camera_global;
357 F32 relative_x = (rel_region_pos.mdV[0] / REGION_WIDTH_METERS) * gMapScale; 357 F32 relative_x = (rel_region_pos.mdV[0] / REGION_WIDTH_METERS) * sMapScale;
358 F32 relative_y = (rel_region_pos.mdV[1] / REGION_WIDTH_METERS) * gMapScale; 358 F32 relative_y = (rel_region_pos.mdV[1] / REGION_WIDTH_METERS) * sMapScale;
359 359
360 F32 pix_width = gMapScale*(layer->LayerExtents.getWidth() + 1); 360 F32 pix_width = sMapScale*(layer->LayerExtents.getWidth() + 1);
361 F32 pix_height = gMapScale*(layer->LayerExtents.getHeight() + 1); 361 F32 pix_height = sMapScale*(layer->LayerExtents.getHeight() + 1);
362 362
363 // When the view isn't panned, 0,0 = center of rectangle 363 // When the view isn't panned, 0,0 = center of rectangle
364 F32 bottom = sPanY + half_height + relative_y; 364 F32 bottom = sPanY + half_height + relative_y;
@@ -439,6 +439,8 @@ void LLWorldMapView::draw()
439 const S32 MIN_REQUEST_PER_TICK = 1; 439 const S32 MIN_REQUEST_PER_TICK = 1;
440 S32 textures_requested_this_tick = 0; 440 S32 textures_requested_this_tick = 0;
441 441
442 bool use_web_map_tiles = LLWorldMap::useWebMapTiles();
443
442 for (LLWorldMap::sim_info_map_t::iterator it = LLWorldMap::getInstance()->mSimInfoMap.begin(); 444 for (LLWorldMap::sim_info_map_t::iterator it = LLWorldMap::getInstance()->mSimInfoMap.begin();
443 it != LLWorldMap::getInstance()->mSimInfoMap.end(); ++it) 445 it != LLWorldMap::getInstance()->mSimInfoMap.end(); ++it)
444 { 446 {
@@ -448,7 +450,7 @@ void LLWorldMapView::draw()
448 LLViewerImage* simimage = info->mCurrentImage; 450 LLViewerImage* simimage = info->mCurrentImage;
449 LLViewerImage* overlayimage = info->mOverlayImage; 451 LLViewerImage* overlayimage = info->mOverlayImage;
450 452
451 if (gMapScale < SIM_MAP_SCALE) 453 if (sMapScale < SIM_MAP_SCALE)
452 { 454 {
453 if (simimage != NULL) simimage->setBoostLevel(0); 455 if (simimage != NULL) simimage->setBoostLevel(0);
454 if (overlayimage != NULL) overlayimage->setBoostLevel(0); 456 if (overlayimage != NULL) overlayimage->setBoostLevel(0);
@@ -460,14 +462,14 @@ void LLWorldMapView::draw()
460 462
461 // Find x and y position relative to camera's center. 463 // Find x and y position relative to camera's center.
462 LLVector3d rel_region_pos = origin_global - camera_global; 464 LLVector3d rel_region_pos = origin_global - camera_global;
463 F32 relative_x = (rel_region_pos.mdV[0] / REGION_WIDTH_METERS) * gMapScale; 465 F32 relative_x = (rel_region_pos.mdV[0] / REGION_WIDTH_METERS) * sMapScale;
464 F32 relative_y = (rel_region_pos.mdV[1] / REGION_WIDTH_METERS) * gMapScale; 466 F32 relative_y = (rel_region_pos.mdV[1] / REGION_WIDTH_METERS) * sMapScale;
465 467
466 // When the view isn't panned, 0,0 = center of rectangle 468 // When the view isn't panned, 0,0 = center of rectangle
467 F32 bottom = sPanY + half_height + relative_y; 469 F32 bottom = sPanY + half_height + relative_y;
468 F32 left = sPanX + half_width + relative_x; 470 F32 left = sPanX + half_width + relative_x;
469 F32 top = bottom + gMapScale ; 471 F32 top = bottom + sMapScale ;
470 F32 right = left + gMapScale ; 472 F32 right = left + sMapScale ;
471 473
472 // Switch to world map texture (if available for this region) if either: 474 // Switch to world map texture (if available for this region) if either:
473 // 1. Tiles are zoomed out small enough, or 475 // 1. Tiles are zoomed out small enough, or
@@ -478,10 +480,10 @@ void LLWorldMapView::draw()
478 map_scale_cutoff = SIM_NULL_MAP_SCALE; 480 map_scale_cutoff = SIM_NULL_MAP_SCALE;
479 } 481 }
480 482
481 info->mShowAgentLocations = (gMapScale >= SIM_MAP_AGENT_SCALE); 483 info->mShowAgentLocations = (sMapScale >= SIM_MAP_AGENT_SCALE);
482 484
483 bool sim_visible = 485 bool sim_visible =
484 (gMapScale >= map_scale_cutoff) && 486 (sMapScale >= map_scale_cutoff) &&
485 (simimage != NULL) && 487 (simimage != NULL) &&
486 (simimage->getHasGLTexture()); 488 (simimage->getHasGLTexture());
487 489
@@ -521,7 +523,15 @@ void LLWorldMapView::draw()
521 (textures_requested_this_tick < MAX_REQUEST_PER_TICK))) 523 (textures_requested_this_tick < MAX_REQUEST_PER_TICK)))
522 { 524 {
523 textures_requested_this_tick++; 525 textures_requested_this_tick++;
524 info->mCurrentImage = gImageList.getImage(info->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE); 526 if (use_web_map_tiles)
527 {
528 LLVector3d region_pos = info->getGlobalOrigin();
529 info->mCurrentImage = LLWorldMap::loadObjectsTile((U32)(region_pos.mdV[VX] / REGION_WIDTH_UNITS), (U32)(region_pos.mdV[VY] / REGION_WIDTH_UNITS));
530 }
531 else
532 {
533 info->mCurrentImage = gImageList.getImage(info->mMapImageID[LLWorldMap::getInstance()->mCurrentMap], MIPMAP_TRUE, FALSE);
534 }
525 info->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP); 535 info->mCurrentImage->setAddressMode(LLTexUnit::TAM_CLAMP);
526 simimage = info->mCurrentImage; 536 simimage = info->mCurrentImage;
527 gGL.getTexUnit(0)->bind(simimage); 537 gGL.getTexUnit(0)->bind(simimage);
@@ -554,7 +564,7 @@ void LLWorldMapView::draw()
554 center_global.mdV[VX] += 128.0; 564 center_global.mdV[VX] += 128.0;
555 center_global.mdV[VY] += 128.0; 565 center_global.mdV[VY] += 128.0;
556 566
557 S32 draw_size = llround(gMapScale); 567 S32 draw_size = llround(sMapScale);
558 if (simimage != NULL) 568 if (simimage != NULL)
559 { 569 {
560 simimage->setBoostLevel(LLViewerImageBoostLevel::BOOST_MAP); 570 simimage->setBoostLevel(LLViewerImageBoostLevel::BOOST_MAP);
@@ -670,10 +680,10 @@ void LLWorldMapView::draw()
670 LLFontGL* font = LLFontGL::getFontSansSerifSmall(); 680 LLFontGL* font = LLFontGL::getFontSansSerifSmall();
671 681
672 std::string mesg; 682 std::string mesg;
673 if (gMapScale < sThresholdA) 683 if (sMapScale < sThresholdA)
674 { 684 {
675 } 685 }
676 else if (gMapScale < sThresholdB) 686 else if (sMapScale < sThresholdB)
677 { 687 {
678 // mesg = llformat( info->mAgents); 688 // mesg = llformat( info->mAgents);
679 } 689 }
@@ -794,13 +804,13 @@ void LLWorldMapView::draw()
794 gGL.setSceneBlendType(LLRender::BT_ALPHA); 804 gGL.setSceneBlendType(LLRender::BT_ALPHA);
795 805
796 // Infohubs 806 // Infohubs
797 if (gSavedSettings.getBOOL("MapShowInfohubs")) //(gMapScale >= sThresholdB) 807 if (gSavedSettings.getBOOL("MapShowInfohubs")) //(sMapScale >= sThresholdB)
798 { 808 {
799 drawGenericItems(LLWorldMap::getInstance()->mInfohubs, sInfohubImage); 809 drawGenericItems(LLWorldMap::getInstance()->mInfohubs, sInfohubImage);
800 } 810 }
801 811
802 // Telehubs 812 // Telehubs
803 if (gSavedSettings.getBOOL("MapShowTelehubs")) //(gMapScale >= sThresholdB) 813 if (gSavedSettings.getBOOL("MapShowTelehubs")) //(sMapScale >= sThresholdB)
804 { 814 {
805 drawGenericItems(LLWorldMap::getInstance()->mTelehubs, sTelehubImage); 815 drawGenericItems(LLWorldMap::getInstance()->mTelehubs, sTelehubImage);
806 } 816 }
@@ -972,7 +982,7 @@ void LLWorldMapView::drawImageStack(const LLVector3d& global_pos, LLUIImagePtr i
972 982
973void LLWorldMapView::drawAgents() 983void LLWorldMapView::drawAgents()
974{ 984{
975 F32 agents_scale = (gMapScale * 0.9f) / 256.f; 985 F32 agents_scale = (sMapScale * 0.9f) / 256.f;
976 986
977 LLColor4 avatar_color = gColors.getColor( "MapAvatar" ); 987 LLColor4 avatar_color = gColors.getColor( "MapAvatar" );
978 /*LLColor4 friend_color = gColors.getColor( "MapFriend" ); 988 /*LLColor4 friend_color = gColors.getColor( "MapFriend" );
@@ -1112,7 +1122,7 @@ void LLWorldMapView::drawEvents()
1112void LLWorldMapView::drawFrustum() 1122void LLWorldMapView::drawFrustum()
1113{ 1123{
1114 // Draw frustum 1124 // Draw frustum
1115 F32 meters_to_pixels = gMapScale/ REGION_WIDTH_METERS; 1125 F32 meters_to_pixels = sMapScale/ REGION_WIDTH_METERS;
1116 1126
1117 F32 horiz_fov = LLViewerCamera::getInstance()->getView() * LLViewerCamera::getInstance()->getAspect(); 1127 F32 horiz_fov = LLViewerCamera::getInstance()->getView() * LLViewerCamera::getInstance()->getAspect();
1118 F32 far_clip_meters = LLViewerCamera::getInstance()->getFar(); 1128 F32 far_clip_meters = LLViewerCamera::getInstance()->getFar();
@@ -1241,7 +1251,7 @@ LLVector3d LLWorldMapView::viewPosToGlobal( S32 x, S32 y )
1241 1251
1242 LLVector3 pos_local( (F32)x, (F32)y, 0.f ); 1252 LLVector3 pos_local( (F32)x, (F32)y, 0.f );
1243 1253
1244 pos_local *= ( REGION_WIDTH_METERS / gMapScale ); 1254 pos_local *= ( REGION_WIDTH_METERS / sMapScale );
1245 1255
1246 LLVector3d pos_global; 1256 LLVector3d pos_global;
1247 pos_global.setVec( pos_local ); 1257 pos_global.setVec( pos_local );
@@ -1875,7 +1885,7 @@ U32 LLWorldMapView::updateBlock(S32 block_x, S32 block_y)
1875 1885
1876U32 LLWorldMapView::updateVisibleBlocks() 1886U32 LLWorldMapView::updateVisibleBlocks()
1877{ 1887{
1878 if (gMapScale < SIM_MAP_SCALE) 1888 if (sMapScale < SIM_MAP_SCALE)
1879 { 1889 {
1880 // We don't care what is loaded if we're zoomed out 1890 // We don't care what is loaded if we're zoomed out
1881 return 0; 1891 return 0;
@@ -1883,7 +1893,7 @@ U32 LLWorldMapView::updateVisibleBlocks()
1883 1893
1884 LLVector3d camera_global = gAgent.getCameraPositionGlobal(); 1894 LLVector3d camera_global = gAgent.getCameraPositionGlobal();
1885 1895
1886 F32 pixels_per_region = gMapScale; 1896 F32 pixels_per_region = sMapScale;
1887 const S32 width = getRect().getWidth(); 1897 const S32 width = getRect().getWidth();
1888 const S32 height = getRect().getHeight(); 1898 const S32 height = getRect().getHeight();
1889 // Convert pan to sim coordinates 1899 // Convert pan to sim coordinates
diff --git a/linden/indra/newview/llworldmapview.h b/linden/indra/newview/llworldmapview.h
index 3245838..4814767 100644
--- a/linden/indra/newview/llworldmapview.h
+++ b/linden/indra/newview/llworldmapview.h
@@ -30,7 +30,10 @@
30 * $/LicenseInfo$ 30 * $/LicenseInfo$
31 */ 31 */
32 32
33// Global map of the world. 33// View of the global map of the world
34
35// The data (model) for the global map (a singleton, unique to the application instance) is
36// in LLWorldMap and is typically accessed using LLWorldMap::getInstance()
34 37
35#ifndef LL_LLWORLDMAPVIEW_H 38#ifndef LL_LLWORLDMAPVIEW_H
36#define LL_LLWORLDMAPVIEW_H 39#define LL_LLWORLDMAPVIEW_H
@@ -161,6 +164,8 @@ public:
161 static F32 sThresholdB; 164 static F32 sThresholdB;
162 static F32 sPixelsPerMeter; // world meters to map pixels 165 static F32 sPixelsPerMeter; // world meters to map pixels
163 166
167 static F32 sMapScale; // scale = size of a region in pixels
168
164 BOOL mItemPicked; 169 BOOL mItemPicked;
165 170
166 static F32 sPanX; // in pixels 171 static F32 sPanX; // in pixels
diff --git a/linden/indra/newview/skins/default/xui/da/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/da/floater_instant_message.xml
index 9b695b5..27dbdcb 100644
--- a/linden/indra/newview/skins/default/xui/da/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/da/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Tekst chat er ikke tilgængeligt i dette opkald. 34 Tekst chat er ikke tilgængeligt i dette opkald.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Tilføj ven
38 </string>
36 <flyout_button label="Profil..." name="profile_callee_btn"/> 39 <flyout_button label="Profil..." name="profile_callee_btn"/>
37 <button label="Opkald" name="start_call_btn" pad_right="7" width="120"/> 40 <button label="Opkald" name="start_call_btn" pad_right="7" width="120"/>
38 <button halign="right" label="Afbryd" name="end_call_btn" width="120"/> 41 <button halign="right" label="Afbryd" name="end_call_btn" width="120"/>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_about.xml b/linden/indra/newview/skins/default/xui/de/floater_about.xml
index f7b6e70..de0c20b 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_about.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_about.xml
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater name="floater_about" title="Über Second Life"> 2<floater name="floater_about" title="Über Second Life">
3 <text name="you_are_at"> 3 <text name="you_are_at">
4 Sie befinden sich in [POSITION] 4 Sie befinden sich auf [POSITION]
5 </text> 5 </text>
6</floater> 6</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_about_land.xml b/linden/indra/newview/skins/default/xui/de/floater_about_land.xml
index 93e7297..4d3d61e 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_about_land.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_about_land.xml
@@ -12,13 +12,13 @@
12 Typ: 12 Typ:
13 </text> 13 </text>
14 <text name="LandTypeText"> 14 <text name="LandTypeText">
15 Mainland / Homestead 15 Kontinent / Heimstatt
16 </text> 16 </text>
17 <text name="ContentRating"> 17 <text name="ContentRating">
18 Einstufung: 18 Einstufung:
19 </text> 19 </text>
20 <text name="ContentRatingText"> 20 <text name="ContentRatingText">
21 Adult 21 Erwachsen
22 </text> 22 </text>
23 <text name="Owner:"> 23 <text name="Owner:">
24 Eigentümer: 24 Eigentümer:
@@ -31,8 +31,8 @@
31 Gruppe: 31 Gruppe:
32 </text> 32 </text>
33 <button label="Einstellen..." label_selected="Einstellen..." name="Set..."/> 33 <button label="Einstellen..." label_selected="Einstellen..." name="Set..."/>
34 <check_box label="Übertragung an Gruppe zulassen" name="check deed" tool_tip="Ein Gruppen-Officer kann dieses Land der Gruppe übertragen. Das Land wird dann über die Landzuteilung der Gruppe verwaltet."/> 34 <check_box label="Übertragung an Gruppe zulassen" name="check deed" tool_tip="Ein Gruppen-Offizier kann dieses Land der Gruppe übertragen. Das Land wird dann über die Landzuteilung der Gruppe verwaltet."/>
35 <button label="Übertragen..." label_selected="Übertragen..." name="Deed..." tool_tip="Sie können Land nur übertragen, wenn Sie in der ausgewählten Gruppe Officer sind."/> 35 <button label="Übertragen..." label_selected="Übertragen..." name="Deed..." tool_tip="Sie können Land nur übertragen, wenn Sie in der ausgewählten Gruppe Offizier sind."/>
36 <check_box label="Eigentümer leistet Beitrag durch Übertragung" name="check contrib" tool_tip="Wenn das Land an die Gruppe übertragen wird, trägt der frühere Eigentümer ausreichend Landnutzungsrechte bei, um es zu halten."/> 36 <check_box label="Eigentümer leistet Beitrag durch Übertragung" name="check contrib" tool_tip="Wenn das Land an die Gruppe übertragen wird, trägt der frühere Eigentümer ausreichend Landnutzungsrechte bei, um es zu halten."/>
37 <text name="For Sale:"> 37 <text name="For Sale:">
38 Zum Verkauf: 38 Zum Verkauf:
@@ -41,7 +41,7 @@
41 Nicht zu verkaufen. 41 Nicht zu verkaufen.
42 </text> 42 </text>
43 <text name="For Sale: Price L$[PRICE]."> 43 <text name="For Sale: Price L$[PRICE].">
44 Preis: [PRICE] L$ ([PRICE_PER_SQM] L$/qm.). 44 Preis: [PRICE] [CURRENCY] ([PRICE_PER_SQM] [CURRENCY]/qm.).
45 </text> 45 </text>
46 <text name="SalePending"/> 46 <text name="SalePending"/>
47 <button bottom="-222" label="Land verkaufen..." label_selected="Land verkaufen..." name="Sell Land..."/> 47 <button bottom="-222" label="Land verkaufen..." label_selected="Land verkaufen..." name="Sell Land..."/>
@@ -59,7 +59,7 @@
59 Gekauft am: 59 Gekauft am:
60 </text> 60 </text>
61 <text name="DateClaimText"> 61 <text name="DateClaimText">
62 Dienstag, 15. Aug. 2006, 13:47:25 62 Die 15. Aug. 13:47:25 2006
63 </text> 63 </text>
64 <text name="PriceLabel"> 64 <text name="PriceLabel">
65 Gebiet: 65 Gebiet:
@@ -75,9 +75,9 @@
75 </text> 75 </text>
76 <button label="Land kaufen..." label_selected="Land kaufen..." name="Buy Land..."/> 76 <button label="Land kaufen..." label_selected="Land kaufen..." name="Buy Land..."/>
77 <button label="Für Gruppe kaufen..." label_selected="Für Gruppe kaufen..." name="Buy For Group..."/> 77 <button label="Für Gruppe kaufen..." label_selected="Für Gruppe kaufen..." name="Buy For Group..."/>
78 <button label="Pass kaufen..." label_selected="Pass kaufen..." name="Buy Pass..." tool_tip="Ein Pass gibt Ihnen zeitbegrenzten Zugang zu diesem Land."/> 78 <button label="Pass kaufen..." label_selected="Pass kaufen..." name="Buy Pass..." tool_tip="Ein Pass gibt Ihnen vorübergehenden Zugang zu diesem Land."/>
79 <button label="Land aufgeben..." label_selected="Land aufgeben..." name="Abandon Land..."/> 79 <button label="Land aufgeben..." label_selected="Land aufgeben..." name="Abandon Land..."/>
80 <button label="Land in Besitz nehmen..." label_selected="Land in Besitz nehmen..." name="Reclaim Land..."/> 80 <button label="Land in Rückesitz nehmen..." label_selected="Land in Rückbesitz nehmen..." name="Reclaim Land..."/>
81 <button label="Linden-Verkauf..." label_selected="Linden-Verkauf..." name="Linden Sale..." tool_tip="Land muss Eigentum und auf Inhalt gesetzt sein und nicht zur Auktion stehen."/> 81 <button label="Linden-Verkauf..." label_selected="Linden-Verkauf..." name="Linden Sale..." tool_tip="Land muss Eigentum und auf Inhalt gesetzt sein und nicht zur Auktion stehen."/>
82 <string name="new users only"> 82 <string name="new users only">
83 Nur neue Benutzer 83 Nur neue Benutzer
@@ -110,7 +110,7 @@
110 (öffentlich) 110 (öffentlich)
111 </string> 111 </string>
112 <string name="none_text"> 112 <string name="none_text">
113 (keiner) 113 (niemand)
114 </string> 114 </string>
115 <string name="sale_pending_text"> 115 <string name="sale_pending_text">
116 (Wird verkauft) 116 (Wird verkauft)
@@ -128,19 +128,19 @@
128 Name: 128 Name:
129 </text> 129 </text>
130 <text name="estate_name_text"> 130 <text name="estate_name_text">
131 Mainland 131 Kontinent
132 </text> 132 </text>
133 <text name="estate_owner_lbl"> 133 <text name="estate_owner_lbl">
134 Eigentümer: 134 Eigentümer:
135 </text> 135 </text>
136 <text name="estate_owner_text"> 136 <text name="estate_owner_text">
137 (keiner) 137 (niemand)
138 </text> 138 </text>
139 <text_editor name="covenant_editor"> 139 <text_editor name="covenant_editor">
140 Für dieses Grundstück fehlt der Vertrag. 140 Für dieses Grundstück fehlt der Vertrag.
141 </text_editor> 141 </text_editor>
142 <text name="covenant_timestamp_text"> 142 <text name="covenant_timestamp_text">
143 Letzte Änderung am Mittwoch, den 31. Dez. 1969, 16:00:00 143 Letzte Änderung am Mittwoch 31. Dez. 1969, 16:00:00
144 </text> 144 </text>
145 <text name="region_section_lbl"> 145 <text name="region_section_lbl">
146 Region: 146 Region:
@@ -155,13 +155,13 @@
155 Typ: 155 Typ:
156 </text> 156 </text>
157 <text name="region_landtype_text"> 157 <text name="region_landtype_text">
158 Mainland / Homestead 158 Kontinent / Heimstatt
159 </text> 159 </text>
160 <text name="region_maturity_lbl"> 160 <text name="region_maturity_lbl">
161 Einstufung: 161 Einstufung:
162 </text> 162 </text>
163 <text name="region_maturity_text"> 163 <text name="region_maturity_text">
164 Adult 164 Erwachsen
165 </text> 165 </text>
166 <text name="resellable_lbl"> 166 <text name="resellable_lbl">
167 Wiederverkauf: 167 Wiederverkauf:
@@ -173,22 +173,22 @@
173 Unterteilen: 173 Unterteilen:
174 </text> 174 </text>
175 <text name="changeable_clause"> 175 <text name="changeable_clause">
176 Land in dieser Region kann nicht zusammengelegt/geteilt 176 Land in dieser Region kann nicht zusammengelegt/geteilt werden.
177werden.
178 </text> 177 </text>
179 <string name="can_resell"> 178 <string name="can_resell">
180 Gekauftes Land in dieser Region kann wiederverkauft werden. 179 Gekauftes Land in dieser Region kann wiederverkauft werden.
181 </string> 180 </string>
182 <string name="can_not_resell"> 181 <string name="can_not_resell">
183 Gekauftes Land in dieser Region kann nicht wiederverkauft werden. 182 Gekauftes Land in dieser Region kann nicht wiederverkauft
183werden.
184 </string> 184 </string>
185 <string name="can_change"> 185 <string name="can_change">
186 Gekauftes Land in dieser Region kann zusammengelegt und 186 Gekauftes Land in dieser Region kann zusammengelegt oder
187geteilt werden. 187geteilt werden.
188 </string> 188 </string>
189 <string name="can_not_change"> 189 <string name="can_not_change">
190 Gekauftes Land in dieser Region kann nicht zusammengelegt 190 Gekauftes Land in dieser Region kann nicht zusammengelegt oder
191und geteilt werden. 191geteilt werden.
192 </string> 192 </string>
193 </panel> 193 </panel>
194 <panel label="Objekte" name="land_objects_panel"> 194 <panel label="Objekte" name="land_objects_panel">
@@ -196,7 +196,7 @@ und geteilt werden.
196 Objektbonusfaktor in Region: [BONUS] 196 Objektbonusfaktor in Region: [BONUS]
197 </text> 197 </text>
198 <text name="Simulator primitive usage:"> 198 <text name="Simulator primitive usage:">
199 Primitive in Simulator: 199 Primitiva in Simulator:
200 </text> 200 </text>
201 <text name="objects_available"> 201 <text name="objects_available">
202 [COUNT] von [MAX] ([AVAILABLE] verfügbar) 202 [COUNT] von [MAX] ([AVAILABLE] verfügbar)
@@ -244,7 +244,7 @@ und geteilt werden.
244 <button label="Anzeigen" label_selected="Anzeigen" name="ShowOther" right="-135" width="60"/> 244 <button label="Anzeigen" label_selected="Anzeigen" name="ShowOther" right="-135" width="60"/>
245 <button label="Zurückgeben..." label_selected="Zurückgeben..." name="ReturnOther..." right="-10" tool_tip="Objekte an ihre Eigentümer zurückgeben." width="119"/> 245 <button label="Zurückgeben..." label_selected="Zurückgeben..." name="ReturnOther..." right="-10" tool_tip="Objekte an ihre Eigentümer zurückgeben." width="119"/>
246 <text left="14" name="Selected / sat upon:" width="140"> 246 <text left="14" name="Selected / sat upon:" width="140">
247 Ausgewählt/gesessen auf: 247 Ausgewählt / gesessen auf:
248 </text> 248 </text>
249 <text left="204" name="selected_objects_text" width="48"> 249 <text left="204" name="selected_objects_text" width="48">
250 [COUNT] 250 [COUNT]
@@ -261,7 +261,7 @@ und geteilt werden.
261 <name_list name="owner list"> 261 <name_list name="owner list">
262 <column label="Typ" name="type"/> 262 <column label="Typ" name="type"/>
263 <column label="Name" name="name"/> 263 <column label="Name" name="name"/>
264 <column label="hlen" name="count"/> 264 <column label="Anzahl" name="count"/>
265 <column label="Aktuellster" name="mostrecent"/> 265 <column label="Aktuellster" name="mostrecent"/>
266 </name_list> 266 </name_list>
267 </panel> 267 </panel>
@@ -269,8 +269,8 @@ und geteilt werden.
269 <text name="allow_label"> 269 <text name="allow_label">
270 Anderen Einwohnern gestatten: 270 Anderen Einwohnern gestatten:
271 </text> 271 </text>
272 <check_box label="Terrain bearbeiten" name="edit land check" tool_tip="Falls aktiviert, kann jeder Ihr Land terraformen. Am besten ist es, wenn Sie diese Option deaktiviert lassen. Sie können Ihr eigenes Land jederzeit bearbeiten."/> 272 <check_box label="Terrain bearbeiten" name="edit land check" tool_tip="Falls aktiviert, kann jeder Ihr Land terraformen. Am besten ist es, diese Option deaktiviert zu lassen. Sie können Ihr eigenes Land jederzeit bearbeiten."/>
273 <check_box label="Landmarken erstellen" name="check landmark"/> 273 <check_box label="Landmarke erstellen" name="check landmark"/>
274 <check_box label="Fliegen" name="check fly" tool_tip="Falls aktiviert, können Einwohner auf Ihrem Land fliegen. Falls nicht aktiviert, können Einwohner lediglich auf Ihr Land fliegen und dort landen (dann jedoch nicht wieder weiterfliegen) oder über Ihr Land hinweg fliegen."/> 274 <check_box label="Fliegen" name="check fly" tool_tip="Falls aktiviert, können Einwohner auf Ihrem Land fliegen. Falls nicht aktiviert, können Einwohner lediglich auf Ihr Land fliegen und dort landen (dann jedoch nicht wieder weiterfliegen) oder über Ihr Land hinweg fliegen."/>
275 <text name="allow_label2"> 275 <text name="allow_label2">
276 Objekte erstellen: 276 Objekte erstellen:
@@ -283,16 +283,16 @@ und geteilt werden.
283 <check_box label="Alle Einwohner" name="all object entry check"/> 283 <check_box label="Alle Einwohner" name="all object entry check"/>
284 <check_box label="Gruppe" name="group object entry check"/> 284 <check_box label="Gruppe" name="group object entry check"/>
285 <text name="allow_label4"> 285 <text name="allow_label4">
286 Skripts ausführen: 286 Skripte ausführen:
287 </text> 287 </text>
288 <check_box label="Alle Einwohner" name="check other scripts"/> 288 <check_box label="Alle Einwohner" name="check other scripts"/>
289 <check_box label="Gruppe" name="check group scripts"/> 289 <check_box label="Gruppe" name="check group scripts"/>
290 <text name="land_options_label"> 290 <text name="land_options_label">
291 Landoptionen: 291 Landoptionen:
292 </text> 292 </text>
293 <check_box label="Sicher (kein Schaden)" name="check safe" tool_tip="Falls aktiviert, wird Land auf Option „Sicher“ eingestellt, Kampfschäden sind deaktiviert. Falls nicht aktiviert, sind Kampfschäden aktiviert."/> 293 <check_box label="Sicher (kein Schaden)" name="check safe" tool_tip="Falls aktiviert, wird Land auf Option „Sicher“ gestellt, Kampfschäden sind deaktiviert. Falls nicht aktiviert, sind Kampfschäden aktiviert."/>
294 <check_box label="Kein Stoßen" name="PushRestrictCheck" tool_tip="Verhindert Skripte am Stoßen. Durch Aktivieren dieser Option verhindern Sie störendes Verhalten auf Ihrem Land."/> 294 <check_box label="Kein Stoßen" name="PushRestrictCheck" tool_tip="Hindert Skripte am Stoßen. Durch Aktivieren dieser Option verhindern Sie störendes Verhalten auf Ihrem Land."/>
295 <check_box label="Ort in Suche anzeigen (30 L$/Woche) unter" name="ShowDirectoryCheck" tool_tip="Diese Parzelle in Suchergebnissen anzeigen."/> 295 <check_box label="Ort in Suche anzeigen ([DIRECTORYFEE]) unter" name="ShowDirectoryCheck" tool_tip="Diese Parzelle in Suchergebnissen anzeigen."/>
296 <string name="search_enabled_tooltip"> 296 <string name="search_enabled_tooltip">
297 Diese Parzelle in Suchergebnissen anzeigen. 297 Diese Parzelle in Suchergebnissen anzeigen.
298 </string> 298 </string>
@@ -305,25 +305,25 @@ Nur große Parzellen können in der Suche aufgeführt werden.
305 </string> 305 </string>
306 <combo_box name="land category with adult"> 306 <combo_box name="land category with adult">
307 <combo_item name="AnyCategory"> 307 <combo_item name="AnyCategory">
308 Alle Kategorien 308 Jede Kategorie
309 </combo_item> 309 </combo_item>
310 <combo_item name="LindenLocation"> 310 <combo_item name="LindenLocation">
311 Lindenort 311 Linden Position
312 </combo_item> 312 </combo_item>
313 <combo_item name="Adult"> 313 <combo_item name="Adult">
314 Adult 314 Erwachsen
315 </combo_item> 315 </combo_item>
316 <combo_item name="Arts&amp;Culture"> 316 <combo_item name="Arts&amp;Culture">
317 Kunst &amp; Kultur 317 Kunst &amp; Kultur
318 </combo_item> 318 </combo_item>
319 <combo_item name="Business"> 319 <combo_item name="Business">
320 Business 320 Gewerbe
321 </combo_item> 321 </combo_item>
322 <combo_item name="Educational"> 322 <combo_item name="Educational">
323 Bildung 323 Bildung
324 </combo_item> 324 </combo_item>
325 <combo_item name="Gaming"> 325 <combo_item name="Gaming">
326 Spielen 326 Spiele
327 </combo_item> 327 </combo_item>
328 <combo_item name="Hangout"> 328 <combo_item name="Hangout">
329 Treffpunkt 329 Treffpunkt
@@ -332,13 +332,13 @@ Nur große Parzellen können in der Suche aufgeführt werden.
332 Anfängergerecht 332 Anfängergerecht
333 </combo_item> 333 </combo_item>
334 <combo_item name="Parks&amp;Nature"> 334 <combo_item name="Parks&amp;Nature">
335 Parks und Natur 335 Parks &amp; Natur
336 </combo_item> 336 </combo_item>
337 <combo_item name="Residential"> 337 <combo_item name="Residential">
338 Wohngebiet 338 Wohngebiet
339 </combo_item> 339 </combo_item>
340 <combo_item name="Shopping"> 340 <combo_item name="Shopping">
341 Shopping 341 Einkaufen
342 </combo_item> 342 </combo_item>
343 <combo_item name="Other"> 343 <combo_item name="Other">
344 Sonstige 344 Sonstige
@@ -346,22 +346,22 @@ Nur große Parzellen können in der Suche aufgeführt werden.
346 </combo_box> 346 </combo_box>
347 <combo_box left="266" name="land category" width="130"> 347 <combo_box left="266" name="land category" width="130">
348 <combo_item name="AnyCategory"> 348 <combo_item name="AnyCategory">
349 Alle Kategorien 349 Jede Kategorie
350 </combo_item> 350 </combo_item>
351 <combo_item name="LindenLocation"> 351 <combo_item name="LindenLocation">
352 Lindenort 352 Linden Position
353 </combo_item> 353 </combo_item>
354 <combo_item name="Arts&amp;Culture"> 354 <combo_item name="Arts&amp;Culture">
355 Kunst und Kultur 355 Kunst &amp; Kultur
356 </combo_item> 356 </combo_item>
357 <combo_item name="Business"> 357 <combo_item name="Business">
358 Business 358 Gewerbe
359 </combo_item> 359 </combo_item>
360 <combo_item name="Educational"> 360 <combo_item name="Educational">
361 Bildung 361 Bildung
362 </combo_item> 362 </combo_item>
363 <combo_item name="Gaming"> 363 <combo_item name="Gaming">
364 Spielen 364 Spiele
365 </combo_item> 365 </combo_item>
366 <combo_item name="Hangout"> 366 <combo_item name="Hangout">
367 Treffpunkt 367 Treffpunkt
@@ -370,31 +370,31 @@ Nur große Parzellen können in der Suche aufgeführt werden.
370 Anfängergerecht 370 Anfängergerecht
371 </combo_item> 371 </combo_item>
372 <combo_item name="Parks&amp;Nature"> 372 <combo_item name="Parks&amp;Nature">
373 Parks und Natur 373 Parks &amp; Natur
374 </combo_item> 374 </combo_item>
375 <combo_item name="Residential"> 375 <combo_item name="Residential">
376 Wohngebiet 376 Wohngebiet
377 </combo_item> 377 </combo_item>
378 <combo_item name="Shopping"> 378 <combo_item name="Shopping">
379 Shopping 379 Einkaufen
380 </combo_item> 380 </combo_item>
381 <combo_item name="Other"> 381 <combo_item name="Other">
382 Sonstige 382 Sonstige
383 </combo_item> 383 </combo_item>
384 </combo_box> 384 </combo_box>
385 <button label="?" label_selected="?" name="?"/> 385 <button label="?" label_selected="?" name="?"/>
386 <check_box label="Mature-Inhalt" name="MatureCheck" tool_tip=""/> 386 <check_box label="Reifer Inhalt" name="MatureCheck" tool_tip=""/>
387 <string name="mature_check_mature"> 387 <string name="mature_check_mature">
388 Mature-Inhalt 388 Reifer Inhalt
389 </string> 389 </string>
390 <string name="mature_check_adult"> 390 <string name="mature_check_adult">
391 Adult-Inhalt 391 Erwachsenen-Inhalt
392 </string> 392 </string>
393 <string name="mature_check_mature_tooltip"> 393 <string name="mature_check_mature_tooltip">
394 Die Informationen oder Inhalte Ihrer Parzelle sind „Mature“. 394 Die Informationen oder Inhalte Ihrer Parzelle sind als Reif klassifiziert.
395 </string> 395 </string>
396 <string name="mature_check_adult_tooltip"> 396 <string name="mature_check_adult_tooltip">
397 Die Informationen oder Inhalte Ihrer Parzelle sind „Adult“. 397 Die Informationen oder Inhalte Ihrer Parzelle sind als Erwachsen klassifiziert.
398 </string> 398 </string>
399 <text name="Snapshot:"> 399 <text name="Snapshot:">
400 Foto: 400 Foto:
@@ -406,7 +406,7 @@ Nur große Parzellen können in der Suche aufgeführt werden.
406 <string name="landing_point_none"> 406 <string name="landing_point_none">
407 (keiner) 407 (keiner)
408 </string> 408 </string>
409 <button label="Festlegen" label_selected="Festlegen" left="234" name="Set" tool_tip="Legt den Landepunkt fest, an dem Besucher ankommen. Legt die Position Ihres Avatars innerhalb dieser Parzelle fest." width="70"/> 409 <button label="Festlegen" label_selected="Festlegen" left="234" name="Set" tool_tip="Legt den Landepunkt fest, an dem Besucher ankommen. Legt den Punkt auf der Position Ihres Avatars innerhalb dieser Parzelle fest." width="70"/>
410 <button label="Löschen" label_selected="Löschen" left="312" name="Clear" tool_tip="Landepunkt löschen." width="70"/> 410 <button label="Löschen" label_selected="Löschen" left="312" name="Clear" tool_tip="Landepunkt löschen." width="70"/>
411 <text name="Teleport Routing: "> 411 <text name="Teleport Routing: ">
412 Teleport-Route: 412 Teleport-Route:
@@ -433,7 +433,7 @@ Nur große Parzellen können in der Suche aufgeführt werden.
433 <text name="with media:"> 433 <text name="with media:">
434 Medientyp: 434 Medientyp:
435 </text> 435 </text>
436 <combo_box name="media type" tool_tip="Geben Sie einen URL für den Film, die Webseite oder ein anderes Medium ein"/> 436 <combo_box name="media type" tool_tip="Geben Sie ein, ob die URL für einen Film, eine Webseite oder ein anderes Medium ist"/>
437 <text name="at URL:"> 437 <text name="at URL:">
438 Medien-URL: 438 Medien-URL:
439 </text> 439 </text>
@@ -496,7 +496,7 @@ Optionen:
496 Eine oder mehrere dieser Optionen gelten auf Grundstücksebene 496 Eine oder mehrere dieser Optionen gelten auf Grundstücksebene
497 </string> 497 </string>
498 <check_box label="Gruppenzugang erlauben: [GROUP]" name="GroupCheck" tool_tip="Gruppe im Register „Allgemein“ festlegen."/> 498 <check_box label="Gruppenzugang erlauben: [GROUP]" name="GroupCheck" tool_tip="Gruppe im Register „Allgemein“ festlegen."/>
499 <check_box label="Pässe verkaufen an:" name="PassCheck" tool_tip="Ermöglicht befristeten Zugang zu dieser Parzelle"/> 499 <check_box label="Pässe verkaufen an:" name="PassCheck" tool_tip="Ermöglicht verübergehenden Zugang zu dieser Parzelle"/>
500 <combo_box name="pass_combo"> 500 <combo_box name="pass_combo">
501 <combo_item name="Anyone"> 501 <combo_item name="Anyone">
502 Jeden 502 Jeden
@@ -505,18 +505,18 @@ Optionen:
505 Gruppe 505 Gruppe
506 </combo_item> 506 </combo_item>
507 </combo_box> 507 </combo_box>
508 <spinner label="Preis in L$:" name="PriceSpin"/> 508 <spinner label="Preis in [CURRENCY]:" name="PriceSpin"/>
509 <spinner label="Online-Zeit:" name="HoursSpin"/> 509 <spinner label="Zugangs-Zeiten:" name="HoursSpin"/>
510 <text label="Immer erlauben" name="AllowedText"> 510 <text label="Immer erlauben" name="AllowedText">
511 Zulässige Einwohner 511 Zulässige Einwohner
512 </text> 512 </text>
513 <name_list name="AccessList" tool_tip="([LISTED] angezeigt, max. [MAX])"/> 513 <name_list name="AccessList" tool_tip="([LISTED] angezeigt, [MAX] max.)"/>
514 <button label="Hinzufügen..." label_selected="Hinzufügen..." name="add_allowed"/> 514 <button label="Hinzufügen..." label_selected="Hinzufügen..." name="add_allowed"/>
515 <button label="Entfernen" label_selected="Entfernen" name="remove_allowed"/> 515 <button label="Entfernen" label_selected="Entfernen" name="remove_allowed"/>
516 <text label="Verbannen" name="BanCheck"> 516 <text label="Verbannen" name="BanCheck">
517 Verbannte Einwohner 517 Verbannte Einwohner
518 </text> 518 </text>
519 <name_list name="BannedList" tool_tip="([LISTED] angezeigt, max. [MAX])"/> 519 <name_list name="BannedList" tool_tip="([LISTED] angezeigt, [MAX] max.)"/>
520 <button label="Hinzufügen..." label_selected="Hinzufügen..." name="add_banned"/> 520 <button label="Hinzufügen..." label_selected="Hinzufügen..." name="add_banned"/>
521 <button label="Entfernen" label_selected="Entfernen" name="remove_banned"/> 521 <button label="Entfernen" label_selected="Entfernen" name="remove_banned"/>
522 </panel> 522 </panel>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_animation_preview.xml b/linden/indra/newview/skins/default/xui/de/floater_animation_preview.xml
index 299b6a7..d25a031 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_animation_preview.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_animation_preview.xml
@@ -14,7 +14,7 @@
14 <text name="hand_label"> 14 <text name="hand_label">
15 Handhaltung 15 Handhaltung
16 </text> 16 </text>
17 <combo_box label="" name="hand_pose_combo" tool_tip="Steuert während der Animation die Bewegung der Hände."> 17 <combo_box label="" name="hand_pose_combo" tool_tip="Steuert die Bewegung der Hände während der Animation.">
18 <combo_item name="Spread"> 18 <combo_item name="Spread">
19 Dehnen 19 Dehnen
20 </combo_item> 20 </combo_item>
@@ -22,7 +22,7 @@
22 Entspannt 22 Entspannt
23 </combo_item> 23 </combo_item>
24 <combo_item name="PointBoth"> 24 <combo_item name="PointBoth">
25 Beide zeigen 25 Beide zeigend
26 </combo_item> 26 </combo_item>
27 <combo_item name="Fist"> 27 <combo_item name="Fist">
28 Faust 28 Faust
@@ -31,7 +31,7 @@
31 Links entspannt 31 Links entspannt
32 </combo_item> 32 </combo_item>
33 <combo_item name="PointLeft"> 33 <combo_item name="PointLeft">
34 Nach links zeigen 34 Links zeigend
35 </combo_item> 35 </combo_item>
36 <combo_item name="FistLeft"> 36 <combo_item name="FistLeft">
37 Linke Faust 37 Linke Faust
@@ -40,7 +40,7 @@
40 Rechts entspannt 40 Rechts entspannt
41 </combo_item> 41 </combo_item>
42 <combo_item name="PointRight"> 42 <combo_item name="PointRight">
43 Nach rechts zeigen 43 Rechts zeigend
44 </combo_item> 44 </combo_item>
45 <combo_item name="FistRight"> 45 <combo_item name="FistRight">
46 Rechte Faust 46 Rechte Faust
@@ -52,7 +52,7 @@
52 Tippt 52 Tippt
53 </combo_item> 53 </combo_item>
54 <combo_item name="PeaceRight"> 54 <combo_item name="PeaceRight">
55 Friedensrecht 55 Friedenszeichen rechts
56 </combo_item> 56 </combo_item>
57 </combo_box> 57 </combo_box>
58 <text name="emote_label"> 58 <text name="emote_label">
@@ -72,7 +72,7 @@
72 Verärgert 72 Verärgert
73 </combo_item> 73 </combo_item>
74 <combo_item name="BigSmile"> 74 <combo_item name="BigSmile">
75 Grinst 75 Grinsen
76 </combo_item> 76 </combo_item>
77 <combo_item name="Bored"> 77 <combo_item name="Bored">
78 Gelangweilt 78 Gelangweilt
@@ -99,7 +99,7 @@
99 Bäääh 99 Bäääh
100 </combo_item> 100 </combo_item>
101 <combo_item name="Repulsed"> 101 <combo_item name="Repulsed">
102 Zurückgestoßen 102 Abgestoen
103 </combo_item> 103 </combo_item>
104 <combo_item name="Sad"> 104 <combo_item name="Sad">
105 Traurig 105 Traurig
@@ -128,27 +128,27 @@
128 Stehend 128 Stehend
129 </combo_item> 129 </combo_item>
130 <combo_item name="Walking"> 130 <combo_item name="Walking">
131 Geht 131 Gehend
132 </combo_item> 132 </combo_item>
133 <combo_item name="Sitting"> 133 <combo_item name="Sitting">
134 Sitzt 134 Sitzend
135 </combo_item> 135 </combo_item>
136 <combo_item name="Flying"> 136 <combo_item name="Flying">
137 Fliegend 137 Fliegend
138 </combo_item> 138 </combo_item>
139 </combo_box> 139 </combo_box>
140 <spinner label="Eingang glätten (s)" label_width="105" name="ease_in_time" tool_tip="Einblendungsgeschwindigkeit von Animationen (in Sekunden)." width="175"/> 140 <spinner label="Einblenden (s)" label_width="105" name="ease_in_time" tool_tip="Einblendungsgeschwindigkeit von Animationen (in Sekunden)." width="175"/>
141 <spinner bottom_delta="-20" label="Ausgang glätten (s)" label_width="105" left="10" name="ease_out_time" tool_tip="Ausblendungsgeschwindigkeit von Animationen (in Sekunden)." width="175"/> 141 <spinner bottom_delta="-20" label="Ausblenden (s)" label_width="105" left="10" name="ease_out_time" tool_tip="Ausblendungsgeschwindigkeit von Animationen (in Sekunden)." width="175"/>
142 <button bottom_delta="-32" label="" name="play_btn" tool_tip="Animation stoppen/wiedergeben."/> 142 <button bottom_delta="-32" label="" name="play_btn" tool_tip="Animation wiedergeben/anhalten."/>
143 <button label="" name="stop_btn" tool_tip="Animation anhalten"/> 143 <button label="" name="stop_btn" tool_tip="Animation stoppen."/>
144 <slider label="" name="playback_slider"/> 144 <slider label="" name="playback_slider"/>
145 <text name="bad_animation_text"> 145 <text name="bad_animation_text">
146 Animationsdatei konnte nicht gelesen werden. 146 Animationsdatei konnte nicht gelesen werden.
147 147
148Wir empfehlen exportierte BVH-Dateien aus Poser 4. 148Wir empfehlen aus Poser 4 exportierte BVH-Dateien.
149 </text> 149 </text>
150 <button label="Abbrechen" name="cancel_btn"/> 150 <button label="Abbrechen" name="cancel_btn"/>
151 <button label="Hochladen ([AMOUNT] L$)" name="ok_btn"/> 151 <button label="Hochladen ([UPLOADFEE])" name="ok_btn"/>
152 <string name="failed_to_initialize"> 152 <string name="failed_to_initialize">
153 Bewegung konnte nicht initialisiert werden 153 Bewegung konnte nicht initialisiert werden
154 </string> 154 </string>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_ao.xml b/linden/indra/newview/skins/default/xui/de/floater_ao.xml
index c0731ea..f080bb2 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_ao.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_ao.xml
@@ -2,28 +2,28 @@
2<floater name="geminifloater" title="Animation Overrider"> 2<floater name="geminifloater" title="Animation Overrider">
3 <view_border name="ao_notecard"/> 3 <view_border name="ao_notecard"/>
4 <view_border name="ao_notecard_vis"/> 4 <view_border name="ao_notecard_vis"/>
5 <text name="Give inventory" tool_tip="ZHAO Notiz hier fallen lassen. Konfiguration und Animationen müssen im gleichen Inventar Ordner liegen!"> 5 <text name="Give inventory" tool_tip="ZHAO Notiz hier einstellen. Konfiguration und Animationen müssen im gleichen Inventar-Ordner liegen!">
6 ZHAO II Konfiguration hier fallen lassen. 6 ZHAO II Konfiguration hier einstellen.
7 </text> 7 </text>
8 <view_border name="ao_notecard_disp"/> 8 <view_border name="ao_notecard_disp"/>
9 <text name="ao_nc_text" tool_tip=""> 9 <text name="ao_nc_text" tool_tip="">
10 Aktuell: ITEM 10 Aktuell festgesetzt: ITEM
11 </text> 11 </text>
12 <button name="opencard" label="Laden"/> 12 <button name="opencard" label="Ansehen"/>
13 <button name="reloadcard" label="Neuladen"/> 13 <button name="reloadcard" label="Neuladen"/>
14 <button label="Mehr &gt;&gt;" name="more_btn" tool_tip="Erweiterte Optionen"/> 14 <button label="Mehr &gt;&gt;" name="more_btn" tool_tip="Erweiterte Optionen"/>
15 <button label="&lt;&lt; Weniger" name="less_btn" tool_tip="Erweiterte Optionen"/> 15 <button label="&lt;&lt; Weniger" name="less_btn" tool_tip="Erweiterte Optionen"/>
16 <check_box label="Anims übersteuern" name="EmeraldAOEnabled"/> 16 <check_box label="Aktivierung Animationsüberlagerung" name="EmeraldAOEnabled"/>
17 <check_box label="Sitzen übersteuern" name="EmeraldAOSitsEnabled"/> 17 <check_box label="Aktivierung Sitzüberlagerung" name="EmeraldAOSitsEnabled"/>
18 <text name="buttons_desc"> 18 <text name="buttons_desc">
19 Stand: 19 Stände:
20 </text> 20 </text>
21 <combo_box name="stands" label=""/> 21 <combo_box name="stands" label=""/>
22 <button name="prevstand" tool_tip="vorheriger Stand" label="&lt;&lt;"/> 22 <button name="prevstand" tool_tip="vorheriger Stand" label="&lt;&lt;"/>
23 <button name="nextstand" tool_tip="nächster Stand" label="&gt;&gt;"/> 23 <button name="nextstand" tool_tip="nächster Stand" label="&gt;&gt;"/>
24 <check_box label="zufällige Stand Ani" name="EmeraldAOStandRandomize"/> 24 <check_box label="zufällige Stand-Ani" name="EmeraldAOStandRandomize"/>
25 <check_box label="keine Stand Ani bei Mouselook" name="EmeraldAONoStandsInMouselook"/> 25 <check_box label="keine Stand-Ani bei Mouselook" name="EmeraldAONoStandsInMouselook"/>
26 <spinner name="standtime" label="Stand Zeit" tool_tip="AO Stand zeit in Sekunden"/> 26 <spinner name="standtime" label="Zeit je Stand" tool_tip="AO Standzeit in Sekunden"/>
27 <tab_container label="Default" name="tabcontainer"> 27 <tab_container label="Default" name="tabcontainer">
28 <panel label="Standard Anis" name="tabdefaultanims"> 28 <panel label="Standard Anis" name="tabdefaultanims">
29 <text name="textdefaultwalk"> 29 <text name="textdefaultwalk">
@@ -39,7 +39,7 @@
39 </text> 39 </text>
40 <combo_box name="jumps" label=""/> 40 <combo_box name="jumps" label=""/>
41 <text name="textdefaultsit"> 41 <text name="textdefaultsit">
42 Standard sitzen: 42 Standard Sitz:
43 </text> 43 </text>
44 <combo_box name="sits" label=""/> 44 <combo_box name="sits" label=""/>
45 <text name="textdefaultgsit"> 45 <text name="textdefaultgsit">
@@ -47,19 +47,19 @@
47 </text> 47 </text>
48 <combo_box name="gsits" label=""/> 48 <combo_box name="gsits" label=""/>
49 <text name="textdefaultcrouch"> 49 <text name="textdefaultcrouch">
50 Standard geduckt: 50 Standard Hocke:
51 </text> 51 </text>
52 <combo_box name="crouchs" label=""/> 52 <combo_box name="crouchs" label=""/>
53 <text name="textdefaultcrouchwalk"> 53 <text name="textdefaultcrouchwalk">
54 Standard geduckt Gang: 54 Standard geduckter Gang:
55 </text> 55 </text>
56 <combo_box name="cwalks" label=""/> 56 <combo_box name="cwalks" label=""/>
57 <text name="textdefaultfall"> 57 <text name="textdefaultfall">
58 Standard fallen: 58 Standard Fall:
59 </text> 59 </text>
60 <combo_box name="falls" label=""/> 60 <combo_box name="falls" label=""/>
61 <text name="textdefaulthover"> 61 <text name="textdefaulthover">
62 Standard scheweben: 62 Standard Schweben:
63 </text> 63 </text>
64 <combo_box name="hovers" label=""/> 64 <combo_box name="hovers" label=""/>
65 <text name="textdefaultfly"> 65 <text name="textdefaultfly">
diff --git a/linden/indra/newview/skins/default/xui/de/floater_auction.xml b/linden/indra/newview/skins/default/xui/de/floater_auction.xml
index 42f6a07..3117222 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_auction.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_auction.xml
@@ -4,6 +4,6 @@
4 <button label="Foto" label_selected="Foto" name="snapshot_btn" /> 4 <button label="Foto" label_selected="Foto" name="snapshot_btn" />
5 <button label="OK" label_selected="OK" name="ok_btn" /> 5 <button label="OK" label_selected="OK" name="ok_btn" />
6 <text name="already for sale"> 6 <text name="already for sale">
7 Parzellen, die bereits zum Verkauf stehen, können nicht auktioniert werden. 7 Parzellen, die bereits zum Verkauf stehen, können nicht versteigert werden.
8 </text> 8 </text>
9</floater> 9</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_avatar_picker.xml b/linden/indra/newview/skins/default/xui/de/floater_avatar_picker.xml
index c546d91..3d40c60 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_avatar_picker.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_avatar_picker.xml
@@ -7,7 +7,7 @@
7Einwohners ein: 7Einwohners ein:
8 </text> 8 </text>
9 <line_editor bottom_delta="-36" name="Edit" /> 9 <line_editor bottom_delta="-36" name="Edit" />
10 <button label="Suchen" label_selected="Suchen" name="Find"/> 10 <button label="Finden" label_selected="Finden" name="Find"/>
11 <scroll_list height="74" name="SearchResults" bottom_delta="-79"/> 11 <scroll_list height="74" name="SearchResults" bottom_delta="-79"/>
12 </panel> 12 </panel>
13 <panel label="Visitenkarten" name="CallingCardsPanel"> 13 <panel label="Visitenkarten" name="CallingCardsPanel">
diff --git a/linden/indra/newview/skins/default/xui/de/floater_avatar_textures.xml b/linden/indra/newview/skins/default/xui/de/floater_avatar_textures.xml
index 823d6de..49159cd 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_avatar_textures.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_avatar_textures.xml
@@ -6,26 +6,26 @@
6 <text name="composite_label" width="150"> 6 <text name="composite_label" width="150">
7 Zusammengesetzte Texturen 7 Zusammengesetzte Texturen
8 </text> 8 </text>
9 <button label="Läd IDs in Konsole ab" label_selected="Abladen" name="Dump"/> 9 <button label="Lädt IDs in Konsole ab" label_selected="Abladen" name="Dump"/>
10 <texture_picker label="Haare" name="hair-baked"/> 10 <texture_picker label="Haare" name="hair-baked"/>
11 <texture_picker label="Haar" name="hair"/> 11 <texture_picker label="Haar" name="hair"/>
12 <texture_picker label="Kopf" name="head-baked"/> 12 <texture_picker label="Kopf" name="head-baked"/>
13 <texture_picker label="Make-Uup" name="head bodypaint"/> 13 <texture_picker label="Make-Up" name="head bodypaint"/>
14 <texture_picker label="Augen" name="eyes-baked"/> 14 <texture_picker label="Augen" name="eyes-baked"/>
15 <texture_picker label="Auge" name="iris"/> 15 <texture_picker label="Auge" name="iris"/>
16 <texture_picker label="Oberkörper" name="upper-baked"/> 16 <texture_picker label="Oberkörper" name="upper-baked"/>
17 <texture_picker label="Oberkörpertattoo" name="upper bodypaint"/> 17 <texture_picker label="Oberkörper-Tätowierung" name="upper bodypaint"/>
18 <texture_picker label="Unterhemd" name="undershirt"/> 18 <texture_picker label="Unterhemd" name="undershirt"/>
19 <texture_picker label="Handschuhe" name="gloves"/> 19 <texture_picker label="Handschuhe" name="gloves"/>
20 <texture_picker label="Hemd" name="shirt"/> 20 <texture_picker label="Hemd" name="shirt"/>
21 <texture_picker label="Oberjacke" name="upper jacket"/> 21 <texture_picker label="Jackenoberteil" name="upper jacket"/>
22 <texture_picker label="Unterkörper" name="lower-baked"/> 22 <texture_picker label="Unterkörper" name="lower-baked"/>
23 <texture_picker label="Unterkörper-Tätowierung" name="lower bodypaint"/> 23 <texture_picker label="Unterkörper-Tätowierung" name="lower bodypaint"/>
24 <texture_picker label="Unterhose" name="underpants"/> 24 <texture_picker label="Unterhose" name="underpants"/>
25 <texture_picker label="Socken" name="socks"/> 25 <texture_picker label="Socken" name="socks"/>
26 <texture_picker label="Schuhe" name="shoes"/> 26 <texture_picker label="Schuhe" name="shoes"/>
27 <texture_picker label="Hose" name="pants"/> 27 <texture_picker label="Hose" name="pants"/>
28 <texture_picker label="Jacke" name="lower jacket"/> 28 <texture_picker label="Jackenunterteil" name="lower jacket"/>
29 <texture_picker label="Rock" name="skirt-baked"/> 29 <texture_picker label="Rock" name="skirt-baked"/>
30 <texture_picker label="Rock" name="skirt"/> 30 <texture_picker label="Rock" name="skirt"/>
31</floater> 31</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_beacons.xml b/linden/indra/newview/skins/default/xui/de/floater_beacons.xml
index 0992727..37b3a98 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_beacons.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_beacons.xml
@@ -1,15 +1,15 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes"?> 1<?xml version="1.0" encoding="utf-8" standalone="yes"?>
2<floater name="beacons" title="Beacons"> 2<floater name="beacons" title="Leitstrahl">
3 <panel name="beacons_panel"> 3 <panel name="beacons_panel">
4 <check_box label="Auf Berührung beschränkte Skriptobjekte" name="touch_only"/> 4 <check_box label="Auf Berührung beschränkte Skriptobjekte" name="touch_only"/>
5 <check_box label="Skripting-Objekte" name="scripted"/> 5 <check_box label="Skripting-Objekte" name="scripted"/>
6 <check_box label="Physische Objekte" name="physical"/> 6 <check_box label="Physische Objekte" name="physical"/>
7 <check_box label="Soundquellen" name="sounds"/> 7 <check_box label="Soundquellen" name="sounds"/>
8 <check_box label="Partikelquellen" name="particles"/> 8 <check_box label="Partikelquellen" name="particles"/>
9 <check_box label="Glanzlichter anzeigen" name="highlights"/> 9 <check_box label="Hervorhebungen anzeigen" name="highlights"/>
10 <check_box label="Beacons anzeigen" name="beacons"/> 10 <check_box label="Leitstrahlen anzeigen" name="beacons"/>
11 <text name="beacon_width_label"> 11 <text name="beacon_width_label">
12 Beacon-Breite: 12 Leitstrahl-Breite:
13 </text> 13 </text>
14 </panel> 14 </panel>
15</floater> 15</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_build_options.xml b/linden/indra/newview/skins/default/xui/de/floater_build_options.xml
index de3617e..0541116 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_build_options.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_build_options.xml
@@ -1,8 +1,27 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater name="build options floater" title="Rasteroptionen"> 2<floater name="build options floater" title="Erweiterte Bauoptionen">
3 <spinner label="Rastereinheit (Meter)" name="GridResolution" /> 3 <text name="text_box7">
4 <spinner label="Rastergröße (Meter)" name="GridDrawSize" /> 4 Rasteroptionen:</text>
5 <check_box label="Einrasten von Untereinheiten aktivieren" name="GridSubUnit" /> 5 <spinner label="Rastereinheit (m)" name="GridResolution" />
6 <spinner label="Rastergröße (m)" name="GridDrawSize" />
7 <check_box label="Untereinheiten einrasten" name="GridSubUnit" />
6 <check_box label="Querschnitte anzeigen" name="GridCrossSection" /> 8 <check_box label="Querschnitte anzeigen" name="GridCrossSection" />
7 <slider label="Rasterdeckkraft" name="GridOpacity" /> 9 <slider label="Rasterdeckkraft" name="GridOpacity" />
10 <text name="text_box3">
11 Objektgröße:</text>
12 <spinner label="X-Größe:" name="X size" />
13 <spinner label="Y-Größe:" name="Y size" />
14 <spinner label="Z-Größe:" name="Z size" />
15 <text name="text_box6">
16 Angelpunkt der Achsen:</text>
17 <check_box label="Größen in Prozent" tool_tip="Standardeinstellung sind Prozent und alle Achsen auf 50" name="PivotPercToggle" />
18 <check_box label="Selektionsumrisse zeigen" name="BuildPrefsRenderHighlight_toggle" />
19 <check_box label="Selektionsdistanz limitieren" name="limit_select_dist_check" />
20 <check_box label="Achsen auf Hauptprim zeigen" tool_tip="Standardverhalten ist die Anzeige der Achsen auf dem Massensenter des gesamten Objekts. Aktiviert werden die Achsen stattdessen auf dem Hauptprim eines Objektes gezeigt." name="BuildPrefsActualRoot_toggle" />
21 <check_box label="Objekteintritt mit Landesgruppe" tool_tip="Objekte auf Gruppenland mit dieser Gruppe erzeugen (wenn möglich." name="grouplandrez" />
22 <spinner label="Dezimalstellen Bearbeitung" tool_tip="Setzt die Standard-Genauigkeit für bewegen, Größe ändern und rotieren fest." name="spinner_decimal" />
23 <button label="Übernehmen" name="btn_apply" />
24 <button label="Abbrechen" name="btn_cancel" />
25 <button label="OK" name="btn_ok" />
26 <button label="Standard wiederherstellen" name="btn_reset" />
8</floater> 27</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_bulk_perms.xml b/linden/indra/newview/skins/default/xui/de/floater_bulk_perms.xml
index f058a0e..828a72b 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_bulk_perms.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_bulk_perms.xml
@@ -1,5 +1,5 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes"?> 1<?xml version="1.0" encoding="utf-8" standalone="yes"?>
2<floater name="floaterbulkperms" title="Mehrere Inhaltsberechtigungen ändern"> 2<floater name="floaterbulkperms" title="Inhaltsberechtigungen im Paket ändern">
3 <text name="applyto"> 3 <text name="applyto">
4 Inhaltsarten 4 Inhaltsarten
5 </text> 5 </text>
@@ -10,8 +10,8 @@
10 <check_box label="Landmarken" name="check_landmark"/> 10 <check_box label="Landmarken" name="check_landmark"/>
11 <check_box label="Notizkarten" name="check_notecard"/> 11 <check_box label="Notizkarten" name="check_notecard"/>
12 <check_box label="Objekte" name="check_object"/> 12 <check_box label="Objekte" name="check_object"/>
13 <check_box label="Skripts" name="check_script"/> 13 <check_box label="Skripte" name="check_script"/>
14 <check_box label="Sounds" name="check_sound"/> 14 <check_box label="Klänge" name="check_sound"/>
15 <check_box label="Texturen" name="check_texture"/> 15 <check_box label="Texturen" name="check_texture"/>
16 <button label="Alle auswählen" label_selected="Alle" name="check_all"/> 16 <button label="Alle auswählen" label_selected="Alle" name="check_all"/>
17 <button label="Keine" label_selected="Keine" name="check_none"/> 17 <button label="Keine" label_selected="Keine" name="check_none"/>
@@ -19,7 +19,7 @@
19 Neue Berechtigungen 19 Neue Berechtigungen
20 </text> 20 </text>
21 <check_box label="Mit Gruppe teilen" name="share_with_group"/> 21 <check_box label="Mit Gruppe teilen" name="share_with_group"/>
22 <check_box label="Kopieren allen erlauben" name="everyone_copy"/> 22 <check_box label="Allen kopieren erlauben" name="everyone_copy"/>
23 <text name="NextOwnerLabel"> 23 <text name="NextOwnerLabel">
24 Nächster Eigentümer kann: 24 Nächster Eigentümer kann:
25 </text> 25 </text>
@@ -36,9 +36,9 @@
36 Berechtigungen werden eingestellt auf [NAME] 36 Berechtigungen werden eingestellt auf [NAME]
37 </string> 37 </string>
38 <string name="start_text"> 38 <string name="start_text">
39 Start: Anforderung auf Änderung der Berechtigung... 39 Start: Anforderung auf Änderung der Berechtigungen...
40 </string> 40 </string>
41 <string name="done_text"> 41 <string name="done_text">
42 Ende: Anforderung auf Änderung der Berechtigung. 42 Ende: Anforderung auf Änderung der Berechtigungen.
43 </string> 43 </string>
44</floater> 44</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_buy_contents.xml b/linden/indra/newview/skins/default/xui/de/floater_buy_contents.xml
index 01858b3..8424a7f 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_buy_contents.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_buy_contents.xml
@@ -4,7 +4,7 @@
4 [NAME] enthält: 4 [NAME] enthält:
5 </text> 5 </text>
6 <text name="buy_text"> 6 <text name="buy_text">
7 [AMOUNT] L$ von [NAME] kaufen? 7 Für[CURRENCY][AMOUNT] von [NAME] kaufen?
8 </text> 8 </text>
9 <button label="Abbrechen" label_selected="Abbrechen" name="cancel_btn" width="73" /> 9 <button label="Abbrechen" label_selected="Abbrechen" name="cancel_btn" width="73" />
10 <button label="Kaufen" label_selected="Kaufen" name="buy_btn" /> 10 <button label="Kaufen" label_selected="Kaufen" name="buy_btn" />
@@ -16,6 +16,6 @@
16 (kein Bearbeiten) 16 (kein Bearbeiten)
17 </text> 17 </text>
18 <text name="no_transfer_text"> 18 <text name="no_transfer_text">
19 (kein Transferieren) 19 (kein Übertragen)
20 </text> 20 </text>
21</floater> 21</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_buy_currency.xml b/linden/indra/newview/skins/default/xui/de/floater_buy_currency.xml
index 787f469..d678327 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_buy_currency.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_buy_currency.xml
@@ -14,22 +14,22 @@
14 </text> 14 </text>
15 <button label="Gehe zu Website" name="error_web" /> 15 <button label="Gehe zu Website" name="error_web" />
16 <text name="contacting"> 16 <text name="contacting">
17 LindeX wird kontaktiert... 17 Geldwechsler wird kontaktiert...
18 </text> 18 </text>
19 <text name="buy_action_unknown"> 19 <text name="buy_action_unknown">
20 L$ an der LindeX kaufen 20 [CURRENCY] am Geldwechsler kaufen
21 </text> 21 </text>
22 <text name="buy_action"> 22 <text name="buy_action">
23 [NAME] L$ [PRICE] 23 [NAME] [CURRENCY] [PRICE]
24 </text> 24 </text>
25 <text name="currency_action" width="90"> 25 <text name="currency_action" width="90">
26 L$ kaufen 26 [CURRENCY] kaufen
27 </text> 27 </text>
28 <line_editor left_delta="55" name="currency_amt"> 28 <line_editor left_delta="55" name="currency_amt">
29 1234 29 1234
30 </line_editor> 30 </line_editor>
31 <text name="currency_est"> 31 <text name="currency_est">
32 für ca. [USD] US$ 32 für ca. [REALCURRENCY] [USD]
33 </text> 33 </text>
34 <text name="getting_data"> 34 <text name="getting_data">
35 Daten werden geladen... 35 Daten werden geladen...
@@ -38,31 +38,32 @@
38 Sie haben zurzeit 38 Sie haben zurzeit
39 </text> 39 </text>
40 <text name="balance_amount"> 40 <text name="balance_amount">
41 [AMT] L$ 41 [AMT] [CURRENCY]
42 </text> 42 </text>
43 <text name="buying_label"> 43 <text name="buying_label">
44 Sie kaufen 44 Sie kaufen
45 </text> 45 </text>
46 <text name="buying_amount"> 46 <text name="buying_amount">
47 [AMT] L$ 47 [AMT] [CURRENCY]
48 </text> 48 </text>
49 <text name="total_label"> 49 <text name="total_label">
50 Ihr neuer Kontostand: 50 Ihr neuer Kontostand:
51 </text> 51 </text>
52 <text name="total_amount"> 52 <text name="total_amount">
53 [AMT] L$ 53 [AMT] [CURRENCY]
54 </text> 54 </text>
55 <text name="purchase_warning_repurchase"> 55 <text name="purchase_warning_repurchase">
56 Dieser Einkauf betrifft ausschließlich Geld. 56 Besttigen dieses Kaufs erwirbt ausschließlich Geld.
57Wiederholen Sie den Vorgang. 57Wiederholen Sie den Vorgang.
58 </text> 58 </text>
59 <text name="purchase_warning_notenough"> 59 <text name="purchase_warning_notenough">
60 Sie kaufen nicht genügend Geld. 60 Sie kaufen nicht genügend Geld.
61Kaufen Sie mehr. 61Erhöhen Sie den Betrag.
62 </text> 62 </text>
63 <button label="Kaufen" name="buy_btn" /> 63 <button label="Kaufen" name="buy_btn" />
64 <button label="Abbrechen" name="cancel_btn" /> 64 <button label="Abbrechen" name="cancel_btn" />
65 <text name="buy_currency"> 65 <text name="buy_currency">
66 [LINDENS] L$ für ca. [USD] US$ kaufen 66 [CURRENCY] [LINDENS] für ca. [REALCURRENCY] [USD]
67kaufen
67 </text> 68 </text>
68</floater> 69</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_buy_land.xml b/linden/indra/newview/skins/default/xui/de/floater_buy_land.xml
index 44ae6b0..c929470 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_buy_land.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_buy_land.xml
@@ -31,7 +31,7 @@
31 Wiederverkauf möglich oder nicht möglich. 31 Wiederverkauf möglich oder nicht möglich.
32 </text> 32 </text>
33 <text name="changeable_clause"> 33 <text name="changeable_clause">
34 Darft oder darf nicht zusammengelegt/unterteilt werden. 34 Darf oder darf nicht zusammengelegt/unterteilt werden.
35 </text> 35 </text>
36 <text name="covenant_text"> 36 <text name="covenant_text">
37 Sie müssen dem Grundstücksvertrag zustimmen: 37 Sie müssen dem Grundstücksvertrag zustimmen:
@@ -99,7 +99,7 @@ Diese Parzelle ist 512 qm groß.
99 Sie haben 2.100 L$. 99 Sie haben 2.100 L$.
100 </text> 100 </text>
101 <text name="currency_action"> 101 <text name="currency_action">
102 Mehr L$ kaufen 102 Mehr [CURRENCY] kaufen
103 </text> 103 </text>
104 <line_editor name="currency_amt"> 104 <line_editor name="currency_amt">
105 1000 105 1000
@@ -114,10 +114,10 @@ Diese Parzelle ist 512 qm groß.
114 <button label="Kaufen" name="buy_btn"/> 114 <button label="Kaufen" name="buy_btn"/>
115 <button label="Abbrechen" name="cancel_btn"/> 115 <button label="Abbrechen" name="cancel_btn"/>
116 <string name="can_resell"> 116 <string name="can_resell">
117 Verkauf möglich. 117 Weiterverkauf möglich.
118 </string> 118 </string>
119 <string name="can_not_resell"> 119 <string name="can_not_resell">
120 Verkauf nicht möglich. 120 Weiterverkauf nicht möglich.
121 </string> 121 </string>
122 <string name="can_change"> 122 <string name="can_change">
123 Zusammenlegen/unterteilen möglich. 123 Zusammenlegen/unterteilen möglich.
@@ -126,7 +126,7 @@ Diese Parzelle ist 512 qm groß.
126 Zusammenlegen/unterteilen nicht möglich. 126 Zusammenlegen/unterteilen nicht möglich.
127 </string> 127 </string>
128 <string name="cant_buy_for_group"> 128 <string name="cant_buy_for_group">
129 Sie sind nicht berechtigt, Land für die aktive Gruppe zu kaufen. 129 Sie sind nicht berechtigt, Land für Ihre aktive Gruppe zu kaufen.
130 </string> 130 </string>
131 <string name="no_land_selected"> 131 <string name="no_land_selected">
132 Kein Land ausgewählt. 132 Kein Land ausgewählt.
@@ -136,7 +136,7 @@ Diese Parzelle ist 512 qm groß.
136Verkleinern Sie Ihre Auswahl. 136Verkleinern Sie Ihre Auswahl.
137 </string> 137 </string>
138 <string name="no_permission"> 138 <string name="no_permission">
139 Sie sind nicht berechtigt, Land für die aktive Gruppe zu kaufen. 139 Sie sind nicht berechtigt, Land für Ihre aktive Gruppe zu kaufen.
140 </string> 140 </string>
141 <string name="parcel_not_for_sale"> 141 <string name="parcel_not_for_sale">
142 Die ausgewählte Parzelle steht nicht zum Verkauf. 142 Die ausgewählte Parzelle steht nicht zum Verkauf.
@@ -169,7 +169,7 @@ Verkleinern Sie Ihre Auswahl.
169 Bei Landkauf: 169 Bei Landkauf:
170 </string> 170 </string>
171 <string name="buying_for_group"> 171 <string name="buying_for_group">
172 Landkauf für Gruppe: 172 Bei Landkauf für Gruppe:
173 </string> 173 </string>
174 <string name="cannot_buy_now"> 174 <string name="cannot_buy_now">
175 Kaufen jetzt nicht möglich: 175 Kaufen jetzt nicht möglich:
@@ -181,7 +181,7 @@ Verkleinern Sie Ihre Auswahl.
181 nicht benötigt 181 nicht benötigt
182 </string> 182 </string>
183 <string name="must_upgrade"> 183 <string name="must_upgrade">
184 Sie müssen Ihr Konto upgraden, um Land kaufen zu können. 184 Sie müssen Ihr Konto erweitern, um Land kaufen zu können.
185 </string> 185 </string>
186 <string name="cant_own_land"> 186 <string name="cant_own_land">
187 Mit Ihrem Konto können Sie Land kaufen. 187 Mit Ihrem Konto können Sie Land kaufen.
@@ -190,10 +190,10 @@ Verkleinern Sie Ihre Auswahl.
190 Sie besitzen [BUYER] qm Land. 190 Sie besitzen [BUYER] qm Land.
191 </string> 191 </string>
192 <string name="pay_to_for_land"> 192 <string name="pay_to_for_land">
193 [SELLER] [AMOUNT] L$ für das Land bezahlen 193 [SELLER] [AMOUNT] [CURRENCY] für das Land bezahlen
194 </string> 194 </string>
195 <string name="buy_for_US"> 195 <string name="buy_for_US">
196 [AMOUNT] L$ für circa [AMOUNT2] US$ kaufen, 196 [AMOUNT] [CURRENCY] für circa [AMOUNT2] US$ kaufen,
197 </string> 197 </string>
198 <string name="parcel_meters"> 198 <string name="parcel_meters">
199 Diese Parzelle ist [AMOUNT] qm groß. 199 Diese Parzelle ist [AMOUNT] qm groß.
@@ -215,29 +215,29 @@ unterstützt [AMOUNT2] Objekte
215 Objekte nicht im Verkauf mit eingeschlossen 215 Objekte nicht im Verkauf mit eingeschlossen
216 </string> 216 </string>
217 <string name="info_price_string"> 217 <string name="info_price_string">
218 [PRICE] L$ 218 [PRICE] [CURRENCY]
219([PRICE_PER_SQM] L$/qm) 219([PRICE_PER_SQM] [CURRENCY] /qm)
220[SOLD_WITH_OBJECTS] 220[SOLD_WITH_OBJECTS]
221 </string> 221 </string>
222 <string name="insufficient_land_credits"> 222 <string name="insufficient_land_credits">
223 Die Gruppe [GROUP] benötigt ausreichende gespendete Landnutzungsrechte, um die Parzelle abzudecken, bevor der Kauf abgeschlossen werden kann. 223 Die Gruppe [GROUP] benötigt ausreichende gespendete Landnutzungsrechte, um die Parzelle abzudecken, bevor der Kauf abgeschlossen werden kann.
224 </string> 224 </string>
225 <string name="have_enough_lindens"> 225 <string name="have_enough_lindens">
226 Sie haben [AMOUNT] L$, genug zum Kauf dieses Landes. 226 Sie haben [AMOUNT] [CURRENCY], genug zum Kauf dieses Landes.
227 </string> 227 </string>
228 <string name="not_enough_lindens"> 228 <string name="not_enough_lindens">
229 Sie haben nur [AMOUNT] L$, brauchen aber mindestens [AMOUNT2] L$. 229 Sie haben nur [AMOUNT] [CURRENCY] , brauchen aber mindestens [AMOUNT2] [CURRENCY] .
230 </string> 230 </string>
231 <string name="balance_left"> 231 <string name="balance_left">
232 Nach dem Einkauf verbleiben Ihnen noch [AMOUNT] L$. 232 Nach dem Einkauf verbleiben Ihnen noch [AMOUNT] [CURRENCY].
233 </string> 233 </string>
234 <string name="balance_needed"> 234 <string name="balance_needed">
235 Für dieses Land müssen Sie mindestens [AMOUNT] L$ kaufen. 235 Für dieses Land müssen Sie mindestens [AMOUNT] [CURRENCY] kaufen.
236 </string> 236 </string>
237 <string name="no_parcel_selected"> 237 <string name="no_parcel_selected">
238 (keine Parzelle ausgewählt) 238 (keine Parzelle ausgewählt)
239 </string> 239 </string>
240 <string name="buy_currency"> 240 <string name="buy_currency">
241 [LINDENS] L$ für ca. [USD] US$ kaufen 241 [LINDENS] [CURRENCY] für ca. [USD] US$ kaufen
242 </string> 242 </string>
243</floater> 243</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_buy_object.xml b/linden/indra/newview/skins/default/xui/de/floater_buy_object.xml
index 3cfa59f..1ec4b4b 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_buy_object.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_buy_object.xml
@@ -4,7 +4,7 @@
4 samt Inhalt: 4 samt Inhalt:
5 </text> 5 </text>
6 <text name="buy_text"> 6 <text name="buy_text">
7 [AMOUNT] L$ von [NAME] kaufen? 7 Von [NAME] für [AMOUNT] [CURRENCY] kaufen?
8 </text> 8 </text>
9 <button label="Abbrechen" label_selected="Abbrechen" name="cancel_btn" width="73" /> 9 <button label="Abbrechen" label_selected="Abbrechen" name="cancel_btn" width="73" />
10 <button label="Kaufen" label_selected="Kaufen" name="buy_btn" /> 10 <button label="Kaufen" label_selected="Kaufen" name="buy_btn" />
@@ -21,6 +21,6 @@
21 (kein Bearbeiten) 21 (kein Bearbeiten)
22 </text> 22 </text>
23 <text name="no_transfer_text"> 23 <text name="no_transfer_text">
24 (kein Transferieren) 24 (kein Übertragen)
25 </text> 25 </text>
26</floater> 26</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_chat_history.xml b/linden/indra/newview/skins/default/xui/de/floater_chat_history.xml
index d5370dc..fb136f8 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_chat_history.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_chat_history.xml
@@ -28,7 +28,7 @@
28 Dem Objekt „[OBJECTNAME]“, ein Objekt von „[OWNERNAME]“, in [REGIONNAME] [REGIONPOS], wurde folgende Berechtigung verweigert: [PERMISSIONS]. 28 Dem Objekt „[OBJECTNAME]“, ein Objekt von „[OWNERNAME]“, in [REGIONNAME] [REGIONPOS], wurde folgende Berechtigung verweigert: [PERMISSIONS].
29 </string> 29 </string>
30 <string name="ScriptTakeMoney"> 30 <string name="ScriptTakeMoney">
31 Linden-Dollar (L$) von Ihnen nehmen 31 Geld von Ihnen nehmen
32 </string> 32 </string>
33 <string name="ActOnControlInputs"> 33 <string name="ActOnControlInputs">
34 Steuerung festlegen 34 Steuerung festlegen
@@ -68,11 +68,14 @@
68 </combo_item> 68 </combo_item>
69 </combo_box> 69 </combo_box>
70 <check_box label="Stummgeschalteten Text anzeigen" name="show mutes"/> 70 <check_box label="Stummgeschalteten Text anzeigen" name="show mutes"/>
71 <check_box label="Chat übersetzen (powered by Google)" name="translate chat" />
71 <button label="&lt; &lt;" label_selected="&gt; &gt;" name="toggle_active_speakers_btn" tool_tip="Klicken Sie hier, um eine Liste der aktiven Teilnehmer an dieser IM-Sitzung anzuzeigen."/> 72 <button label="&lt; &lt;" label_selected="&gt; &gt;" name="toggle_active_speakers_btn" tool_tip="Klicken Sie hier, um eine Liste der aktiven Teilnehmer an dieser IM-Sitzung anzuzeigen."/>
72 <panel name="chat_panel"> 73 <panel name="chat_panel">
73 <string name="gesture_label"> 74 <string name="gesture_label">
74 Gesten 75 Gesten
75 </string> 76 </string>
77 <!--<spinner label="Kanal" name="channel_control"
78tool_tip="Standardkanal für In-Welt-Chat festlegen"/>-->
76 <line_editor label="Zum Chatten hier klicken." name="Chat Editor" right="-75"/> 79 <line_editor label="Zum Chatten hier klicken." name="Chat Editor" right="-75"/>
77 <flyout_button label="Sagen" left="-70" name="Say" tool_tip="(Eingabe)" width="75"> 80 <flyout_button label="Sagen" left="-70" name="Say" tool_tip="(Eingabe)" width="75">
78 <flyout_button_item name="shout_item"> 81 <flyout_button_item name="shout_item">
diff --git a/linden/indra/newview/skins/default/xui/de/floater_chatterbox-vertical.xml b/linden/indra/newview/skins/default/xui/de/floater_chatterbox-vertical.xml
new file mode 100644
index 0000000..de51ecc
--- /dev/null
+++ b/linden/indra/newview/skins/default/xui/de/floater_chatterbox-vertical.xml
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<multi_floater name="floater_chatterbox" title="Unterhalten" />
3 <string name="unread_count_string_singular">
4 Ungelesene IM
5 </string>
6 <string name="unread_count_string_plural">
7 Ungelesene IMs
8 </string>
9</multi_floater>
10
diff --git a/linden/indra/newview/skins/default/xui/de/floater_chatterbox.xml b/linden/indra/newview/skins/default/xui/de/floater_chatterbox.xml
index 548b615..de51ecc 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_chatterbox.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_chatterbox.xml
@@ -1,2 +1,10 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<multi_floater name="floater_chatterbox" title="Unterhalten" /> 2<multi_floater name="floater_chatterbox" title="Unterhalten" />
3 <string name="unread_count_string_singular">
4 Ungelesene IM
5 </string>
6 <string name="unread_count_string_plural">
7 Ungelesene IMs
8 </string>
9</multi_floater>
10
diff --git a/linden/indra/newview/skins/default/xui/de/floater_critical.xml b/linden/indra/newview/skins/default/xui/de/floater_critical.xml
index 0b14792..d18d7d4 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_critical.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_critical.xml
@@ -1,5 +1,5 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater name="modal container" title=" "> 2<floater name="modal container" title="">
3 <button label="Weiter" label_selected="Weiter" name="Continue" /> 3 <button label="Weiter" label_selected="Weiter" name="Continue" />
4 <button label="Abbrechen" label_selected="Abbrechen" name="Cancel" /> 4 <button label="Abbrechen" label_selected="Abbrechen" name="Cancel" />
5 <text name="tos_title"> 5 <text name="tos_title">
diff --git a/linden/indra/newview/skins/default/xui/de/floater_customize.xml b/linden/indra/newview/skins/default/xui/de/floater_customize.xml
index b27e5d2..c528b61 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_customize.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_customize.xml
@@ -1,7 +1,7 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes"?> 1<?xml version="1.0" encoding="utf-8" standalone="yes"?>
2<floater name="floater customize" title="Aussehen"> 2<floater name="floater customize" title="Aussehen">
3 <tab_container name="customize tab container"> 3 <tab_container name="customize tab container">
4 <panel label="Körperteile" name="body_parts_placeholder"/> 4 <panel label="Körperteile" name="body_parts_placeholder" />
5 <panel label="Form" name="Shape"> 5 <panel label="Form" name="Shape">
6 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> 6 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/>
7 <button label="Körper" label_selected="Körper" name="Body"/> 7 <button label="Körper" label_selected="Körper" name="Body"/>
@@ -12,8 +12,8 @@
12 <button label="Mund" label_selected="Mund" name="Mouth"/> 12 <button label="Mund" label_selected="Mund" name="Mouth"/>
13 <button label="Kinn" label_selected="Kinn" name="Chin"/> 13 <button label="Kinn" label_selected="Kinn" name="Chin"/>
14 <button label="Oberkörper" label_selected="Oberkörper" name="Torso"/> 14 <button label="Oberkörper" label_selected="Oberkörper" name="Torso"/>
15 <button label="Beine" label_selected="Beine" name="Legs"/> 15 <button label="Beine" label_selected="Beine" name="Legs" />
16 <radio_group name="sex radio"> 16 <radio_group control_name="AvatarSex" name="sex radio">
17 <radio_item length="1" name="radio" type="string"> 17 <radio_item length="1" name="radio" type="string">
18 Weiblich 18 Weiblich
19 </radio_item> 19 </radio_item>
@@ -51,10 +51,11 @@ und diese anziehen.
51 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 51 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
52 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> 52 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
53 </panel> 53 </panel>
54
54 <panel label="Haut" name="Skin"> 55 <panel label="Haut" name="Skin">
55 <button label="Hautfarbe" label_selected="Hautfarbe" left="2" name="Skin Color" width="92"/> 56 <button label="Hautfarbe" label_selected="Hautfarbe" left="2" name="Skin Color" width="92"/>
56 <button label="Gesichtsdetails" label_selected="Gesichtsdetails" left="2" name="Face Detail" width="92"/> 57 <button label="Gesichtsdetails" label_selected="Gesichtsdetails" left="2" name="Face Detail" width="92"/>
57 <button label="Make-Uup" label_selected="Make-Uup" left="2" name="Makeup" width="92"/> 58 <button label="Make-Up" label_selected="Make-Up" left="2" name="Makeup" width="92"/>
58 <button label="Körperdetails" label_selected="Körperdetails" left="2" name="Body Detail" width="92"/> 59 <button label="Körperdetails" label_selected="Körperdetails" left="2" name="Body Detail" width="92"/>
59 <text length="1" name="title" type="string"> 60 <text length="1" name="title" type="string">
60 [DESC] 61 [DESC]
@@ -82,9 +83,9 @@ und diese anziehen.
82 <text name="Item Action Label" right="100"> 83 <text name="Item Action Label" right="100">
83 Haut: 84 Haut:
84 </text> 85 </text>
85 <texture_picker label="Kopftattoo" name="Head Tattoos" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 86 <texture_picker label="Kopftattoo" name="Head Tattoos" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
86 <texture_picker label="Obere Tattoos" name="Upper Tattoos" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 87 <texture_picker label="Obere Tattoos" name="Upper Tattoos" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
87 <texture_picker label="Untere Tattoos" name="Lower Tattoos" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 88 <texture_picker label="Untere Tattoos" name="Lower Tattoos" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
88 <button label="Neue Haut" label_selected="Neue Haut" name="Create New"/> 89 <button label="Neue Haut" label_selected="Neue Haut" name="Create New"/>
89 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 90 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
90 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> 91 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
@@ -121,7 +122,7 @@ und diese anziehen.
121 <text name="Item Action Label" right="100"> 122 <text name="Item Action Label" right="100">
122 Haare: 123 Haare:
123 </text> 124 </text>
124 <texture_picker label="Textur" name="Texture" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 125 <texture_picker label="Textur" name="Texture" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
125 <button label="Neue Haare" label_selected="Neue Haare" name="Create New"/> 126 <button label="Neue Haare" label_selected="Neue Haare" name="Create New"/>
126 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 127 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
127 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> 128 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
@@ -154,7 +155,7 @@ und diese anziehen.
154 <text name="Item Action Label" right="100"> 155 <text name="Item Action Label" right="100">
155 Augen: 156 Augen:
156 </text> 157 </text>
157 <texture_picker label="Iris" name="Iris" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 158 <texture_picker label="Iris" name="Iris" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
158 <button label="Neue Augen" label_selected="Neue Augen" name="Create New"/> 159 <button label="Neue Augen" label_selected="Neue Augen" name="Create New"/>
159 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 160 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
160 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> 161 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
@@ -162,8 +163,8 @@ und diese anziehen.
162 </panel> 163 </panel>
163 <panel label="Kleidung" name="clothes_placeholder"/> 164 <panel label="Kleidung" name="clothes_placeholder"/>
164 <panel label="Hemd" name="Shirt"> 165 <panel label="Hemd" name="Shirt">
165 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 166 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
166 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 167 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
167 <button label="Neues Hemd" label_selected="Neues Hemd" name="Create New"/> 168 <button label="Neues Hemd" label_selected="Neues Hemd" name="Create New"/>
168 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 169 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
169 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 170 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -197,8 +198,8 @@ und dieses anziehen.
197 </text> 198 </text>
198 </panel> 199 </panel>
199 <panel label="Hose" name="Pants"> 200 <panel label="Hose" name="Pants">
200 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 201 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
201 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 202 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
202 <button label="Neue Hose" label_selected="Neue Hose" name="Create New"/> 203 <button label="Neue Hose" label_selected="Neue Hose" name="Create New"/>
203 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 204 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
204 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 205 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -258,8 +259,8 @@ und diese anziehen.
258 <text name="Item Action Label" right="100"> 259 <text name="Item Action Label" right="100">
259 Schuhe: 260 Schuhe:
260 </text> 261 </text>
261 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 262 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
262 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 263 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
263 <button label="Neue Schuhe" label_selected="Neue Schuhe" name="Create New"/> 264 <button label="Neue Schuhe" label_selected="Neue Schuhe" name="Create New"/>
264 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 265 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
265 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 266 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -328,9 +329,9 @@ und diese anziehen.
328 <text name="Item Action Label" right="100"> 329 <text name="Item Action Label" right="100">
329 Jacke: 330 Jacke:
330 </text> 331 </text>
331 <texture_picker label="Oberstoff" name="Upper Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 332 <texture_picker label="Stoff oben" name="Upper Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
332 <texture_picker label="Unterstoff" name="Lower Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 333 <texture_picker label="Stoff unten" name="Lower Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
333 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 334 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
334 <button label="Neue Jacke" label_selected="Neue Jacke" name="Create New"/> 335 <button label="Neue Jacke" label_selected="Neue Jacke" name="Create New"/>
335 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 336 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
336 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 337 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -364,8 +365,8 @@ und diese anziehen.
364 <text name="Item Action Label" right="100"> 365 <text name="Item Action Label" right="100">
365 Handschuhe: 366 Handschuhe:
366 </text> 367 </text>
367 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 368 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
368 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 369 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
369 <button label="Neue Handschuhe" label_selected="Neue Handschuhe" name="Create New"/> 370 <button label="Neue Handschuhe" label_selected="Neue Handschuhe" name="Create New"/>
370 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 371 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
371 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 372 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -399,8 +400,8 @@ und dieses anziehen.
399 <text name="Item Action Label" right="100"> 400 <text name="Item Action Label" right="100">
400 Unterhemd: 401 Unterhemd:
401 </text> 402 </text>
402 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 403 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
403 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 404 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
404 <button label="Neues Unterhemd" label_selected="Neues Unterhemd" name="Create New"/> 405 <button label="Neues Unterhemd" label_selected="Neues Unterhemd" name="Create New"/>
405 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 406 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
406 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 407 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -434,8 +435,8 @@ und diese anziehen.
434 <text name="Item Action Label" right="100"> 435 <text name="Item Action Label" right="100">
435 Unterhose: 436 Unterhose:
436 </text> 437 </text>
437 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 438 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
438 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 439 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
439 <button label="Neue Unterhose" label_selected="Neue Unterhose" name="Create New"/> 440 <button label="Neue Unterhose" label_selected="Neue Unterhose" name="Create New"/>
440 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 441 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
441 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 442 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
@@ -469,16 +470,105 @@ und diesen anziehen.
469 <text name="Item Action Label" right="100"> 470 <text name="Item Action Label" right="100">
470 Rock: 471 Rock:
471 </text> 472 </text>
472 <texture_picker label="Stoff" name="Fabric" tool_tip="Klicken Sie hier, um ein Bild auszuwählen"/> 473 <texture_picker label="Stoff" name="Fabric" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
473 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Klicken Sie hier, um die Farbauswahl zu öffnen"/> 474 <color_swatch label="Farbe/Ton" name="Color/Tint" tool_tip="Hier klicken, um die Farbauswahl zu öffnen"/>
474 <button label="Neuer Rock" label_selected="Neuer Rock" name="Create New"/> 475 <button label="Neuer Rock" label_selected="Neuer Rock" name="Create New"/>
475 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/> 476 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
476 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/> 477 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
477 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/> 478 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
478 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/> 479 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/>
479 </panel> 480 </panel>
481 <panel label="Tätowierung" name="Tattoo">
482 <text length="1" name="title" type="string">
483 [DESC]
484 </text>
485 <text length="1" name="title_no_modify" type="string">
486 [DESC]: bearbeiten nicht möglich
487 </text>
488 <text length="1" name="title_loading" type="string">
489 [DESC]: wird geladen...
490 </text>
491 <text length="1" name="title_not_worn" type="string">
492 [DESC]: nicht getragen
493 </text>
494 <text length="1" name="path" type="string">
495 In [PATH]
496 </text>
497 <text length="1" name="not worn instructions" type="string">
498 Ziehen Sie eine Tätowierung aus dem Inventar auf Ihren Avatar,
499um ihn zu tragen. Sie können auch eine neuen Tätowierung erstellen
500und diese anziehen.
501 </text>
502 <text length="1" name="no modify instructions" type="string">
503 Sie sind nicht berechtigt, diese Kleidung zu bearbeiten.
504 </text>
505 <text name="Item Action Label" right="100">
506 Tätowierung:
507 </text>
508 <texture_picker label="Kopftattoo" name="Head Tattoo" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
509 <texture_picker label="Tattoo oben" name="Upper Tattoo" tool_tip="Hier klicken, um ein Bild auszuwählen"/>
510 <texture_picker label="Tattoo unten" name="Lower Tattoo" tool_tip="Hier klicken, um ein Bild auszuwählen"/> <button font="SansSerifSmall" label="Neue Tätowierung" label_selected="Neue Tätowierung" name="Create New"/>
511 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
512 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
513 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
514 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/>
515 </panel>
516 <panel label="Transparenz" name="Alpha">
517 <text length="1" name="title" type="string">
518 [DESC]
519 </text>
520 <text length="1" name="title_no_modify" type="string">
521 [DESC]: bearbeiten nicht möglich
522 </text>
523 <text length="1" name="title_loading" type="string">
524 [DESC]: wird geladen...
525 </text>
526 <text length="1" name="title_not_worn" type="string">
527 [DESC]: nicht getragen
528 </text>
529 <text length="1" name="path" type="string">
530 In [PATH]
531 </text>
532 <text length="1" name="not worn instructions" type="string">
533 Ziehen Sie eine Transparenz-Maske aus dem Inventar auf Ihren Avatar,
534um ihn zu tragen. Sie können auch eine neue Maske erstellen
535und diese anziehen.
536 </text>
537 <text length="1" name="no modify instructions" type="string">
538 Sie sind nicht berechtigt, diese Kleidung zu bearbeiten.
539 </text>
540 <text name="Item Action Label" right="100">
541 Transparenz:
542 </text>
543 <texture_picker label="Transp. Kopf" name="Head Alpha" tool_tip="Hier klicken, um ein Bild auszuwählen" width="68" left_delta="85" />
544 <texture_picker label="Transp. oben" name="Upper Alpha" tool_tip="Hier klicken, um ein Bild auszuwählen" width="68" left_delta="85" />
545 <texture_picker label="Transp. unten" name="Lower Alpha" tool_tip="Hier klicken, um ein Bild auszuwählen" width="68" left_delta="85" />
546 <texture_picker label="Transp. Haar" name="Hair Alpha" tool_tip="Hier klicken, um ein Bild auszuwählen" width="68" left_delta="85" />
547 <texture_picker label="Transp. Augen" name="Eye Alpha" tool_tip="Hier klicken, um ein Bild auszuwählen" width="68" left_delta="85" />
548 <button label="Neue Maske" label_selected="Neue Maske" name="Create New"/>
549 <button font="SansSerifSmall" label="Ausziehen" label_selected="Ausziehen" name="Take Off"/>
550 <button font="SansSerifSmall" label="Speichern" label_selected="Speichern" left="107" name="Save"/>
551 <button font="SansSerifSmall" label="Speichern unter..." label_selected="Speichern unter..." left="194" name="Save As" width="105"/>
552 <button font="SansSerifSmall" label="Zurücksetzen" label_selected="Zurücksetzen" name="Revert"/>
553 </panel>
480 </tab_container> 554 </tab_container>
481 <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/> 555
482 <button label="OK" label_selected="OK" name="Ok"/> 556 <text type="string" name="AvatarHeightText">
557 Avatar Größe:
558 </text>
559 <text type="string" name="HeightText">
560 Avatar Größe
561 </text>
562 <text type="string" name="HeightText2">
563 Avatar Größe2
564 </text>
565 <text type="string" name="includes_shoes">
566 (inkl. Schuhe)
567 </text>
568
569 <button name="Import" label="Import." label_selected="Importieren" />
570 <button name="Export" label="Export." label_selected="Exportieren" />
483 <button label="Outfit erstellen..." label_selected="Outfit erstellen..." name="Make Outfit" width="115"/> 571 <button label="Outfit erstellen..." label_selected="Outfit erstellen..." name="Make Outfit" width="115"/>
572 <button label="Abbrechen" label_selected="Abbrechen" name="Cancel"/>
573 <button label="OK" label_selected="OK" name="Ok"/>
484</floater> 574</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_dictionaries.xml b/linden/indra/newview/skins/default/xui/de/floater_dictionaries.xml
new file mode 100644
index 0000000..8c034b9
--- /dev/null
+++ b/linden/indra/newview/skins/default/xui/de/floater_dictionaries.xml
@@ -0,0 +1,11 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater name="EmeraldIRC_dictionaries" title="Neue Wörterbücher herunterladen">
3 <text name="EmDics_txt">
4Unten stehend ist eine Liste weiterer Wörterbücher, die
5von der Imprudence Internetseite heruntergeladen
6werden können.
7
8Suchen Sie bitte das Gewünschte aus und klicken Sie
9auf die Schaltfläche „Herunterladen“.</text>
10 <button label="Herunterladen" name="Emerald_dic_download" />
11</floater> \ No newline at end of file
diff --git a/linden/indra/newview/skins/default/xui/de/floater_directory.xml b/linden/indra/newview/skins/default/xui/de/floater_directory.xml
index c3bc8f0..2c61c75 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_directory.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_directory.xml
@@ -1,6 +1,37 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes"?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater name="directory" title="Suchen"> 2<floater name="directory" title="Suche">
3 <tab_container name="Directory Tabs"> 3 <tab_container name="Directory Tabs">
4 <panel label="All" name="find_all_old_panel">
5 <string name="searching_text">
6 Suchen...
7 </string>
8 <string name="not_found_text">
9 Nicht gefunden.
10 </string>
11 <button label="&lt; Vor" label_selected="&lt; Vor" name="&lt; Prev" />
12 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
13 <text name="find">
14 Finden:
15 </text>
16 <line_editor name="name" />
17 <button label="Suchen" label_selected="Suchen" name="Search" />
18 <check_box control_name="ShowPGSearchAll" label="„PG“-Inhalt" name="incpg" />
19 <check_box control_name="ShowMatureSearchAll" label="Inhalt „Reif“" name="incmature" />
20 <check_box control_name="ShowAdultSearchAll" label="Inhalt „Erwachsen“" name="incadult" />
21 <scroll_list name="results">
22 <column label="" name="icon" width="24" />
23 <column label="Name" name="name" width="235" />
24 <column label="Preis" name="price" width="90" />
25 <column label="Datum" name="date" width="90" />
26 <column label="Zeit" name="time" width="-1" />
27 <column label="Traffic" name="dwell" width="90" />
28 <column label="Bereich" name="area" width="90" />
29 <column label="[CURRENCY]/qm" name="per_meter" width="90" />
30 <column label="Online" name="online" width="90" />
31 <column label="Mitglieder" name="members" width="90" />
32 </scroll_list>
33 <text name="result_text" />
34 </panel>
4 <panel label="Alle" name="find_all_panel"> 35 <panel label="Alle" name="find_all_panel">
5 <string name="searching_text"> 36 <string name="searching_text">
6 Suchen... 37 Suchen...
@@ -9,13 +40,14 @@
9 Nicht gefunden. 40 Nicht gefunden.
10 </string> 41 </string>
11 <text name="find"> 42 <text name="find">
12 Suchen: 43 Finden:
13 </text> 44 </text>
14 <line_editor label="Suchen" name="search_editor" tool_tip="Second Life durchsuchen"/> 45 <line_editor label="Suche" name="search_editor" tool_tip="Das Internet durchsuchen" />
15 <button label="Zurück" name="back_btn"/> 46 <button label="Zurück" name="back_btn"/>
16 <button label="Weiter" name="forward_btn"/> 47 <button label="Weiter" name="forward_btn"/>
17 <button label="Suchen" name="search_btn"/> 48 <button label="Suchen" name="search_btn"/>
18 <combo_box name="Category"> 49 <combo_box name="Category">
50 <combo_box name="Category">
19 <combo_item name="AnyCategory"> 51 <combo_item name="AnyCategory">
20 Alle Kategorien 52 Alle Kategorien
21 </combo_item> 53 </combo_item>
@@ -35,10 +67,12 @@
35 Wiki 67 Wiki
36 </combo_item> 68 </combo_item>
37 </combo_box> 69 </combo_box>
38 <check_box label="PG-Inhalt" name="incpg"/> 70 <check_box control_name="ShowPGSearchAll" label="„PG“-Inhalt" name="incpg" />
39 <check_box label="Mature-Inhalt" name="incmature"/> 71 <check_box control_name="ShowMatureSearchAll" label="Inhalt „Reif“" name="incmature" />
40 <check_box label="Adult-Inhalt" name="incadult"/> 72 <check_box control_name="ShowAdultSearchAll" label="Inhalt „Erwachsen“" name="incadult" />
41 <button label="?" label_selected="?" name="?"/> 73 <button label="?" label_selected="?" name="?" />
74 <web_browser name="find_browser" />
75 <text name="status_text" />
42 <string name="loading_text"> 76 <string name="loading_text">
43 Wird geladen... 77 Wird geladen...
44 </string> 78 </string>
@@ -48,7 +82,8 @@
48 <string name="redirect_404_url"> 82 <string name="redirect_404_url">
49 http://secondlife.com/app/search/notfound.html 83 http://secondlife.com/app/search/notfound.html
50 </string> 84 </string>
51 </panel> 85 <string name="default_search_page">"http://secondlife.com/app/search/index.php?"</string>
86 </panel>
52 <panel label="Anzeigen" name="classified_panel"> 87 <panel label="Anzeigen" name="classified_panel">
53 <string name="searching_text"> 88 <string name="searching_text">
54 Suchen... 89 Suchen...
@@ -57,41 +92,41 @@
57 Nicht gefunden. 92 Nicht gefunden.
58 </string> 93 </string>
59 <text name="find"> 94 <text name="find">
60 Suchen: 95 Finden:
61 </text> 96 </text>
62 <line_editor name="name"/> 97 <line_editor name="name" />
63 <check_box label="PG-Inhalt" name="incpg"/> 98 <check_box control_name="ShowPGClassifieds" label="PG-Inhalt" name="incpg" />
64 <check_box label="Mature-Inhalt" name="incmature"/> 99 <check_box control_name="ShowMatureClassifieds" label="Inhalt „Reif“" name="incmature" />
65 <check_box label="Adult-Inhalt" name="incadult"/> 100 <check_box control_name="ShowAdultClassifieds" label="Inhalt „Erwachsen“" name="incadult" />
66 <combo_box name="Category"> 101 <combo_box name="Category">
67 <combo_item name="AnyCategory"> 102 <combo_item name="AnyCategory" value="0">
68 Alle Kategorien 103 Alle Kategorien
69 </combo_item> 104 </combo_item>
70 <combo_item name="Shopping"> 105 <combo_item name="Shopping" value="1">
71 Shopping 106 Einkaufen
72 </combo_item> 107 </combo_item>
73 <combo_item name="LandRental"> 108 <combo_item name="LandRental" value="2">
74 Land mieten 109 Land mieten
75 </combo_item> 110 </combo_item>
76 <combo_item name="PropertyRental"> 111 <combo_item name="PropertyRental" value="3">
77 Immobilie mieten 112 Grundstück mieten
78 </combo_item> 113 </combo_item>
79 <combo_item name="SpecialAttraction"> 114 <combo_item name="SpecialAttraction" value="4">
80 Attraktionen 115 Attraktionen
81 </combo_item> 116 </combo_item>
82 <combo_item name="NewProducts"> 117 <combo_item name="NewProducts" value="5">
83 Neue Produkte 118 Neue Produkte
84 </combo_item> 119 </combo_item>
85 <combo_item name="Employment"> 120 <combo_item name="Employment" value="6">
86 Stellenangebote 121 Stellenangebote
87 </combo_item> 122 </combo_item>
88 <combo_item name="Wanted"> 123 <combo_item name="Wanted" value="7">
89 Gesucht 124 Gesucht
90 </combo_item> 125 </combo_item>
91 <combo_item name="Service"> 126 <combo_item name="Service" value="8">
92 Dienstleistungen 127 Dienstleistungen
93 </combo_item> 128 </combo_item>
94 <combo_item name="Personal"> 129 <combo_item name="Personal" value="9">
95 Persönlich 130 Persönlich
96 </combo_item> 131 </combo_item>
97 </combo_box> 132 </combo_box>
@@ -100,15 +135,17 @@
100 <button label="Anzeige aufgeben..." label_selected="Anzeige aufgeben..." name="Place an Ad..."/> 135 <button label="Anzeige aufgeben..." label_selected="Anzeige aufgeben..." name="Place an Ad..."/>
101 <button label="Löschen" label_selected="Löschen" name="Delete"/> 136 <button label="Löschen" label_selected="Löschen" name="Delete"/>
102 <scroll_list name="results"> 137 <scroll_list name="results">
103 <column label="" name="icon"/> 138 <column label="" name="icon" width="24" />
104 <column label="" name="type"/> 139 <column label="" name="type" width="-1" />
105 <column label="Name" name="name"/> 140 <column label="Name" name="name" width="225" />
106 <column label="Price" name="price"/> 141 <column label="Preis" name="price" width="55" />
107 </scroll_list> 142 </scroll_list>
108 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;"/> 143 <text name="result_text" />
109 <button label="&lt; Vorherige" label_selected="&lt; Vorherige" name="&lt; Prev"/> 144 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
145 <button label="&lt; Vor" label_selected="&lt; Vor"
146 name="&lt; Prev" />
110 </panel> 147 </panel>
111 <panel label="Events" name="events_panel"> 148 <panel label="Events" left="1" name="events_panel">
112 <string name="searching_text"> 149 <string name="searching_text">
113 Suchen... 150 Suchen...
114 </string> 151 </string>
@@ -116,9 +153,9 @@
116 Nicht gefunden. 153 Nicht gefunden.
117 </string> 154 </string>
118 <text name="text2"> 155 <text name="text2">
119 Suchen: 156 Finden:
120 </text> 157 </text>
121 <line_editor name="event_search_text"/> 158 <line_editor name="event_search_text" />
122 <radio_group name="date_mode"> 159 <radio_group name="date_mode">
123 <radio_item name="current"> 160 <radio_item name="current">
124 Stattfindend und anstehend 161 Stattfindend und anstehend
@@ -127,14 +164,14 @@
127 Datum 164 Datum
128 </radio_item> 165 </radio_item>
129 </radio_group> 166 </radio_group>
130 <button label="&lt;&lt;" label_selected="&lt;&lt;" name="&lt;&lt;" tool_tip="Einen Tag zurück"/> 167 <button label="&lt;&lt;" label_selected="&lt;&lt;" name="&lt;&lt;" tool_tip="Einen Tag zurück" />
131 <text name="date_text"> 168 <text name="date_text">
132 6/6 169 6/6
133 </text> 170 </text>
134 <button label="&gt;&gt;" label_selected="&gt;&gt;" name="&gt;&gt;" tool_tip="Einen Tag weiter"/> 171 <button label="&gt;&gt;" label_selected="&gt;&gt;" name="&gt;&gt;" tool_tip="Einen Tag weiter" />
135 <button label="Heute" label_selected="Heute" name="Today" tool_tip="Heutige Events anzeigen"/> 172 <button label="Heute" label_selected="Heute" name="Today" tool_tip="Heutige Events anzeigen" />
136 <text name="text"> 173 <text name="text">
137 Kategorie: 174 Kategorie:
138 </text> 175 </text>
139 <combo_box name="category combo" width="195" left="222"> 176 <combo_box name="category combo" width="195" left="222">
140 <combo_item name="All"> 177 <combo_item name="All">
@@ -174,21 +211,23 @@
174 Sonstiges 211 Sonstiges
175 </combo_item> 212 </combo_item>
176 </combo_box> 213 </combo_box>
177 <check_box label="PG-Inhalt" name="incpg"/> 214 <check_box control_name="ShowPGEvents" label="PG-Inhalt" name="incpg" />
178 <check_box label="Mature-Inhalt" name="incmature"/> 215 <check_box control_name="ShowMatureEvents" label="Inhalt „Reif“" name="incmature" />
179 <check_box label="Adult-Inhalt" name="incadult"/> 216 <check_box control_name="ShowAdultEvents" label="Inhalt „Erwachsen“" name="incadult" />
180 <button label="Suchen" label_selected="Suchen" name="Search" tool_tip="Suchen"/> 217 <button label="Suchen" label_selected="Suchen" name="Search" />
181 <button label="Löschen" label_selected="Löschen" name="Delete"/> 218 <button label="Löschen" label_selected="Löschen" name="Delete" />
182 <scroll_list name="results"> 219 <scroll_list name="results">
183 <column label="" name="icon"/> 220 <column label="" name="icon" width="24" />
184 <column label="" name="type"/> 221 <column label="" name="type" width="-1" />
185 <column label="Name" name="name"/> 222 <column dynamicwidth="true" label="Name" name="name" />
186 <column label="Time (PT)" name="date"/> 223 <column label="Datum" name="date" sort="time" width="106" />
187 <column label="" name="event_id"/> 224 <column label="" name="event_id" width="-1" />
188 <column label="Time" name="time"/> 225 <column label="Zeit" name="time" width="-1" />
189 </scroll_list> 226 </scroll_list>
190 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;"/> 227 <text name="result_text" />
191 <button label="&lt; Vorherige" label_selected="&lt; Vorherige" name="&lt; Prev"/> 228 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
229 <button label="&lt; Vor" label_selected="&lt; Vor"
230 name="&lt; Prev" />
192 </panel> 231 </panel>
193 <panel label="Showcase" name="showcase_panel"> 232 <panel label="Showcase" name="showcase_panel">
194 <string name="searching_text"> 233 <string name="searching_text">
@@ -199,13 +238,18 @@
199 </string> 238 </string>
200 <button label="Zurück" name="back_btn"/> 239 <button label="Zurück" name="back_btn"/>
201 <button label="Weiter" name="forward_btn"/> 240 <button label="Weiter" name="forward_btn"/>
241 <!-- No mature content checkbox, showcase is all PG -->
242 <web_browser name="showcase_browser" />
243 <text name="status_text" />
202 <string name="loading_text"> 244 <string name="loading_text">
203 Wird geladen... 245 Wird geladen...
204 </string> 246 </string>
205 <string name="done_text"> 247 <string name="done_text">
206 Fertig 248 Fertig
207 </string> 249 </string>
208 </panel> 250 <string name="redirect_404_url">http://secondlife.com/app/search/notfound.html</string>
251 <string name="default_search_page">"http://secondlife.com/app/showcase/index.php?"</string>
252 </panel>
209 <panel label="Landverkauf" name="land_sales_panel"> 253 <panel label="Landverkauf" name="land_sales_panel">
210 <string name="searching_text"> 254 <string name="searching_text">
211 Suchen... 255 Suchen...
@@ -214,15 +258,16 @@
214 Nicht gefunden. 258 Nicht gefunden.
215 </string> 259 </string>
216 <string name="land_help_text"> 260 <string name="land_help_text">
217 Land kann direkt für Linden Dollar (L$) oder bei einer Auktion für L$ oder US$ erworben werden. 261 Land kann direkt für in-Welt Geld oder bei einer Auktion für echtes oder in-Welt Geld erworben werden.
218Um direkt zu kaufen, klicken Sie auf dem betreffenden Land in der Titelleiste auf den Namen. 262Um direkt zu kaufen, klicken Sie auf dem betreffenden Land in der Titelleiste auf den Namen.
219 </string> 263 </string>
220 <text name="find"> 264 <text name="find" v_pad="0" width="50">
221 Suchen: 265 Finden:
222 </text> 266 </text>
223 <check_box label="PG-Inhalt" name="incpg"/> 267 <check_box control_name="ShowPGLand" label="„PG“-Inhalt" name="incpg" />
224 <check_box label="Mature-Inhalt" name="incmature"/> 268 <check_box control_name="ShowMatureLand" label="Inhalt „Reif“" name="incmature" />
225 <check_box label="Adult-Inhalt" name="incadult"/> 269 <check_box control_name="ShowAdultLand" label="Inhalt „Erwachsen“" name="incadult" />
270 <combo_box name="type">
226 <combo_box name="type" width="135"> 271 <combo_box name="type" width="135">
227 <combo_item name="AllTypes"> 272 <combo_item name="AllTypes">
228 Alle Typen 273 Alle Typen
@@ -234,31 +279,33 @@ Um direkt zu kaufen, klicken Sie auf dem betreffenden Land in der Titelleiste au
234 Verkauf - Mainland 279 Verkauf - Mainland
235 </combo_item> 280 </combo_item>
236 <combo_item name="EstateSales"> 281 <combo_item name="EstateSales">
237 Verkauf - Immobilien 282 Verkauf - Grundstück
238 </combo_item> 283 </combo_item>
239 </combo_box> 284 </combo_box>
240 <check_box label="Preis &#8804; " name="pricecheck"/> 285 <check_box control_name="FindLandPrice" label="Preis &#8804; " name="pricecheck" />
241 <text left="183" name="pricecheck_symbol"> 286 <text name="pricecheck_symbol">
242 L$ 287 [CURRENCY]
243 </text> 288 </text>
244 <check_box label="Gebiet &#8805; " name="areacheck"/> 289 <check_box control_name="FindLandArea" label="Bereich &#8805; " name="areacheck" />
245 <text left="183" name="areacheck_symbol"> 290 <text name="areacheck_symbol">
246 qm 291 m²
247 </text> 292 </text>
248 <line_editor left="130" name="priceedit"/> 293 <line_editor name="priceedit" />
249 <line_editor left="130" name="areaedit"/> 294 <line_editor name="areaedit" />
250 <button label="Suchen" label_selected="Suchen" name="Search"/> 295 <button label="Suchen" label_selected="Suchen" name="Search" />
251 <scroll_list name="results"> 296 <scroll_list name="results">
252 <column label="" name="icon"/> 297 <column label="" name="icon" width="24" />
253 <column label="" name="type"/> 298 <column label="" name="type" width="-1" />
254 <column label="Name" name="name"/> 299 <column dynamicwidth="true" label="Name" name="name" />
255 <column label="Typ" name="landtype"/> 300 <column label="Type" name="landtype" width="50" />
256 <column label="L$ Price" name="price"/> 301 <column label="Preis in [CURRENCY]" name="price" width="65" />
257 <column label="Area" name="area"/> 302 <column label="Bereich" name="area" width="50" />
258 <column label="L$/qm" name="per_meter"/> 303 <column label="[CURRENCY]/m²" name="per_meter" />
259 </scroll_list> 304 </scroll_list>
260 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;"/> 305 <text name="result_text" />
261 <button label="&lt; Vorherige" label_selected="&lt; Vorherige" name="&lt; Prev"/> 306 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
307 <button label="&lt; Vor" label_selected="&lt; Vor"
308 name="&lt; Prev" />
262 </panel> 309 </panel>
263 <panel label="Orte" name="places_panel"> 310 <panel label="Orte" name="places_panel">
264 <string name="searching_text"> 311 <string name="searching_text">
@@ -268,145 +315,163 @@ Um direkt zu kaufen, klicken Sie auf dem betreffenden Land in der Titelleiste au
268 Nicht gefunden. 315 Nicht gefunden.
269 </string> 316 </string>
270 <text name="find"> 317 <text name="find">
271 Suchen: 318 Finden:
272 </text> 319 </text>
273 <line_editor name="name"/> 320 <line_editor name="name" />
274 <check_box label="PG-Inhalt" name="incpg"/> 321 <check_box control_name="ShowPGSims" label="PG-Inhalt" name="incpg" />
275 <check_box label="Mature-Inhalt" name="incmature"/> 322 <check_box control_name="ShowMatureSims" label="Inhalt „Reif“" name="incmature" />
276 <check_box label="Adult-Inhalt" name="incadult"/> 323 <check_box control_name="ShowAdultSims" label="Inhalt „Erwachsen“" name="incadult" />
277 <combo_box name="Category"> 324 <combo_box name="Category">
278 <combo_item name="AnyCategory"> 325 <combo_item name="AnyCategory" value="any">
279 Alle Kategorien 326 Alle Kategorien
280 </combo_item> 327 </combo_item>
281 <combo_item name="LindenLocation"> 328 <combo_item name="LindenLocation" value="linden">
282 Lindenort 329 Linden-Position
283 </combo_item> 330 </combo_item>
284 <combo_item name="Arts&amp;Culture"> 331 <combo_item name="Arts&amp;Culture" value="arts">
285 Kunst und Kultur 332 Kunst &amp; Kultur
286 </combo_item> 333 </combo_item>
287 <combo_item name="Business"> 334 <combo_item name="Business" value="store">
288 Business 335 Gewerbe
289 </combo_item> 336 </combo_item>
290 <combo_item name="Educational"> 337 <combo_item name="Educational" value="educational">
291 Bildung 338 Bildung
292 </combo_item> 339 </combo_item>
293 <combo_item name="Gaming"> 340 <combo_item name="Gaming" value="game">
294 Spielen 341 Spielen
295 </combo_item> 342 </combo_item>
296 <combo_item name="Hangout"> 343 <combo_item name="Hangout" value="gather">
297 Treffpunkt 344 Treffpunkt
298 </combo_item> 345 </combo_item>
299 <combo_item name="NewcomerFriendly"> 346 <combo_item name="NewcomerFriendly" value="newcomer">
300 Anfängergerecht 347 Anfängergerecht
301 </combo_item> 348 </combo_item>
302 <combo_item name="Parks&amp;Nature"> 349 <combo_item name="Parks&amp;Nature" value="park">
303 Parks und Natur 350 Parks &amp; Natur
304 </combo_item> 351 </combo_item>
305 <combo_item name="Residential"> 352 <combo_item name="Residential" value="home">
306 Wohngebiet 353 Wohngebiet
307 </combo_item> 354 </combo_item>
308 <combo_item name="Shopping"> 355 <combo_item name="Shopping" value="shopping">
309 Shopping 356 Einkaufen
310 </combo_item> 357 </combo_item>
311 <combo_item name="Other"> 358 <combo_item name="Other" value="other">
312 Sonstige 359 Sonstige
313 </combo_item> 360 </combo_item>
314 </combo_box> 361 </combo_box>
315 <combo_box name="Category_Adult"> 362 <!-- This is used only during the AO transition and can be deleted once the AO transition is
316 <combo_item name="AnyCategory"> 363 complete. It is identical to the combo box above except that it has the Adult category.
364 You might also want to set it back to default visible and enabled. -->
365 <combo_box allow_text_entry="false" bottom="-46" enabled="false" follows="right|top" height="18" left="230"
366 max_chars="20" mouse_opaque="true" name="Category_Adult" width="128" visible="false">
367 <combo_item name="AnyCategory" value="any">
317 Alle Kategorien 368 Alle Kategorien
318 </combo_item> 369 </combo_item>
319 <combo_item name="LindenLocation"> 370 <combo_item name="LindenLocation" value="linden">
320 Lindenort 371 Linden-Position
321 </combo_item> 372 </combo_item>
322 <combo_item name="Adult"> 373 <combo_item name="Adult" value="adult">
323 Adult 374 Erwachsen
324 </combo_item> 375 </combo_item>
325 <combo_item name="Arts&amp;Culture"> 376 <combo_item name="Arts&amp;Culture" value="arts">
326 Kunst &amp; Kultur 377 Kunst &amp; Kultur
327 </combo_item> 378 </combo_item>
328 <combo_item name="Business"> 379 <combo_item name="Business" value="store">
329 Business 380 Gewerbe
330 </combo_item> 381 </combo_item>
331 <combo_item name="Educational"> 382 <combo_item name="Educational" value="educational">
332 Bildung 383 Bildung
333 </combo_item> 384 </combo_item>
334 <combo_item name="Gaming"> 385 <combo_item name="Gaming" value="game">
335 Spielen 386 Spielen
336 </combo_item> 387 </combo_item>
337 <combo_item name="Hangout"> 388 <combo_item name="Hangout" value="gather">
338 Treffpunkt 389 Treffpunkt
339 </combo_item> 390 </combo_item>
340 <combo_item name="NewcomerFriendly"> 391 <combo_item name="NewcomerFriendly" value="newcomer">
341 Anfängergerecht 392 Anfängergerecht
342 </combo_item> 393 </combo_item>
343 <combo_item name="Parks&amp;Nature"> 394 <combo_item name="Parks&amp;Nature" value="park">
344 Parks und Natur 395 Parks &amp; Natur
345 </combo_item> 396 </combo_item>
346 <combo_item name="Residential"> 397 <combo_item name="Residential" value="home">
347 Wohngebiet 398 Wohngebiet
348 </combo_item> 399 </combo_item>
349 <combo_item name="Shopping"> 400 <combo_item name="Shopping" value="shopping">
350 Shopping 401 Einkaufen
351 </combo_item> 402 </combo_item>
352 <combo_item name="Other"> 403 <combo_item name="Other" value="other">
353 Sonstige 404 Sonstige
354 </combo_item> 405 </combo_item>
355 </combo_box> 406 </combo_box>
356 <button label="Suchen" label_selected="Suchen" name="Search"/> 407 <button label="Suchen" label_selected="Suchen" name="Search" />
357 <scroll_list name="results"> 408 <scroll_list name="results">
358 <column label="" name="icon"/> 409 <column label="" name="icon" width="24" />
359 <column label="" name="type"/> 410 <column label="" name="type" width="-1" />
360 <column label="Name" name="name"/> 411 <column dynamicwidth="true" label="Name" name="name" />
361 <column label="Traffic" name="dwell"/> 412 <column label="Traffic" name="dwell" width="75" />
362 </scroll_list> 413 </scroll_list>
363 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;"/> 414 <text name="result_text" />
364 <button label="&lt; Vorherige" label_selected="&lt; Vorherige" name="&lt; Prev"/> 415 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
416 <button label="&lt; Vor" label_selected="&lt; Vor"
417 name="&lt; Prev" />
365 </panel> 418 </panel>
366 <panel label="Leute" name="people_panel"> 419 <panel label="Leute" name="people_panel">
367 <string name="searching_text"> 420 <string name="searching_text">
368 Suchen... 421 Suchen...
369 </string> 422 </string>
370 <string name="not_found_text"> 423 <string name="not_found_text">
371 Nicht gefunden. 424 Nicht gefunden.
372 </string> 425 </string>
373 <text left_delta="38" name="find"> 426 <text name="find">
374 Suchen: 427 Finden:
375 </text> 428 </text>
376 <line_editor left_delta="48" name="name"/> 429 <line_editor name="name" />
377 <button label="Suchen" label_selected="Suchen" name="Search"/> 430 <button label="Suchen" label_selected="Suchen" name="Search" />
378 <scroll_list name="results" width="286"> 431 <scroll_list name="results">
379 <column label="" name="icon"/> 432 <column label="" name="icon" width="24" />
380 <column label="" name="type"/> 433 <column label="" name="type" width="-1" />
381 <column label="Name" name="name" width="234"/> 434 <column label="Name" name="name" width="274" />
382 </scroll_list> 435 </scroll_list>
383 <button right="290" label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;"/> 436 <text name="result_text" />
384 <button right="204" label="&lt; Vorherige" label_selected="&lt; Vorherige" name="&lt; Prev"/> 437 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
438 <button label="&lt; Vor" label_selected="&lt; Vor"
439 name="&lt; Prev" />
385 </panel> 440 </panel>
386 <panel label="Gruppen" name="groups_panel"> 441 <panel label="Gruppen" name="groups_panel">
387 <string name="searching_text"> 442 <string name="searching_text">
388 Suchen... 443 Suchen...
389 </string> 444 </string>
390 <string name="not_found_text"> 445 <string name="not_found_text">
391 Nicht gefunden. 446 Nicht gefunden.
392 </string> 447 </string>
393 <text left_delta="38" name="find"> 448 <button label="Weiter &gt;" label_selected="Weiter &gt;" name="Next &gt;" />
394 Suchen: 449 <button label="&lt; Vor" label_selected="&lt; Vor"
450 name="&lt; Prev" />
451 <text name="find">
452 Finden:
395 </text> 453 </text>
396 <line_editor label="Suchen" name="search_editor" tool_tip="Second Life durchsuchen"/> 454 <line_editor name="name" />
397 <button label="Zuck" name="back_btn"/> 455 <button label="Suchen" label_selected="Suchen" name="Search" />
398 <button label="Weiter" name="forward_btn"/> 456 <check_box control_name="ShowPGGroups" label="„PG“-Inhalt" name="incpg" />
399 <button label="Suchen" name="search_btn"/> 457 <check_box control_name="ShowMatureGroups" label="Inhalt „Reif“" name="incmature" />
400 <check_box label="PG-Inhalt" name="incpg"/> 458 <check_box control_name="ShowAdultGroups" label="Inhalt „Erwachsen“" name="incadult" />
401 <check_box label="Mature-Inhalt" name="incmature"/> 459 <scroll_list name="results">
402 <check_box label="Adult-Inhalt" name="incadult"/> 460 <column label="" name="icon" sort="score" sort_ascending="false" width="24" />
403 <string name="loading_text"> 461 <column label="" name="type" width="-1" />
404 Wird geladen... 462 <column dynamicwidth="true" label="Name" name="name" />
405 </string> 463 <column label="Mitglieder" name="members" />
406 <string name="done_text"> 464 <column label="" name="score" width="-1" />
407 Fertig 465 </scroll_list>
408 </string> 466 <text name="result_text" />
409 </panel> 467 </panel>
410 </tab_container> 468 </tab_container>
411 <panel left="310" name="Panel Avatar" width="470" /> 469 <panel name="classified_details_panel" />
470 <panel name="Panel Avatar" />
471 <panel name="event_details_panel" />
472 <panel name="group_details_panel_holder" />
473 <panel name="group_details_panel" />
474 </panel>
475 <panel name="place_details_panel" />
476 <panel name="place_details_small_panel" />
412</floater> 477</floater>
diff --git a/linden/indra/newview/skins/default/xui/de/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/de/floater_instant_message.xml
index 1e926c4..ea822e4 100644
--- a/linden/indra/newview/skins/default/xui/de/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/de/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Für diese Verbindung ist kein Text-Chat verfügbar. 34 Für diese Verbindung ist kein Text-Chat verfügbar.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Freund hinzufügen
38 </string>
36 <flyout_button label="Profil..." name="profile_callee_btn"/> 39 <flyout_button label="Profil..." name="profile_callee_btn"/>
37 <button label="Anrufen" name="start_call_btn" pad_right="7" width="115"/> 40 <button label="Anrufen" name="start_call_btn" pad_right="7" width="115"/>
38 <button halign="right" label="Anruf beenden" name="end_call_btn" width="115"/> 41 <button halign="right" label="Anruf beenden" name="end_call_btn" width="115"/>
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/en-us/floater_instant_message.xml
index cf2a457..5e81525 100644
--- a/linden/indra/newview/skins/default/xui/en-us/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/floater_instant_message.xml
@@ -37,6 +37,9 @@
37 <string name="unavailable_text_label"> 37 <string name="unavailable_text_label">
38 Text chat is not available for this call. 38 Text chat is not available for this call.
39 </string> 39 </string>
40 <string name="add_friend_string">
41 Add Friend
42 </string>
40 <flyout_button bottom="-40" follows="left|top" height="20" label="Profile" left="5" width="90" 43 <flyout_button bottom="-40" follows="left|top" height="20" label="Profile" left="5" width="90"
41 list_position="below" mouse_opaque="true" name="profile_callee_btn"> 44 list_position="below" mouse_opaque="true" name="profile_callee_btn">
42 <flyout_button_item value="history_entry" name="history_entry"> 45 <flyout_button_item value="history_entry" name="history_entry">
diff --git a/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml b/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
index 1de4c94..fffab6c 100644
--- a/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/menu_viewer.xml
@@ -343,7 +343,8 @@
343 <on_click function="ShowFloater" userdata="mute list" /> 343 <on_click function="ShowFloater" userdata="mute list" />
344 <on_check function="FloaterVisible" userdata="mute list" /> 344 <on_check function="FloaterVisible" userdata="mute list" />
345 </menu_item_check> 345 </menu_item_check>
346 <menu_item_check name="Teleport History" label="Teleport History"> 346 <menu_item_check name="Teleport History" label="Teleport History"
347 shortcut="alt|H">
347 <on_click function="ShowFloater" userdata="teleport history" /> 348 <on_click function="ShowFloater" userdata="teleport history" />
348 <on_check function="FloaterVisible" userdata="teleport history" /> 349 <on_check function="FloaterVisible" userdata="teleport history" />
349 </menu_item_check> 350 </menu_item_check>
diff --git a/linden/indra/newview/skins/default/xui/en-us/notifications.xml b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
index eced647..9ebeec9 100644
--- a/linden/indra/newview/skins/default/xui/en-us/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
@@ -1729,6 +1729,15 @@ Cannot find the region this land is in.
1729 1729
1730<notification 1730<notification
1731 icon="alertmodal.tga" 1731 icon="alertmodal.tga"
1732 name="CannotBuyLandMaturity"
1733 type="alertmodal">
1734Unable to buy land:
1735
1736Your allowed or prefered maturity level does not allow to buy this land.
1737</notification>
1738
1739<notification
1740 icon="alertmodal.tga"
1732 name="CannotCloseFloaterBuyLand" 1741 name="CannotCloseFloaterBuyLand"
1733 type="alertmodal"> 1742 type="alertmodal">
1734You cannot close the Buy Land window until [GRID_NAME] estimates the price of this transaction. 1743You cannot close the Buy Land window until [GRID_NAME] estimates the price of this transaction.
diff --git a/linden/indra/newview/skins/default/xui/en-us/panel_groups.xml b/linden/indra/newview/skins/default/xui/en-us/panel_groups.xml
index e6b78fb..22967dc 100644
--- a/linden/indra/newview/skins/default/xui/en-us/panel_groups.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/panel_groups.xml
@@ -1,12 +1,19 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<panel border="true" bottom="-371" height="300" left="280" mouse_opaque="true" 2<panel border="true" bottom="-371" height="300" left="280" mouse_opaque="true"
3 name="groups" width="350"> 3 name="groups" width="350" min_width="350">
4 <scroll_list background_visible="true" bottom="45" column_padding="5" draw_border="true" 4 <scroll_list background_visible="true" bottom="45" column_padding="5" draw_border="true"
5 draw_heading="false" draw_stripes="true" enabled="true" 5 draw_heading="true" draw_stripes="true" enabled="true"
6 follows="left|top|right|bottom" left="10" mouse_opaque="true" 6 follows="left|top|right|bottom" left="10" mouse_opaque="true"
7 multi_select="false" name="group list" tab_stop="true" top="-10" 7 multi_select="false" name="group list" tab_stop="true" top="-10"
8 width="240"> 8 width="240">
9 <column label="" name="name" width="248" /> 9 <column label="Group Name" name="name" dynamicwidth="true" />
10 <column label="Notices" name="receive_notices" width="60"
11 tool_tip="Receve notices from this group" />
12 <column label="Chat" name="join_group_chat" width="60"
13 tool_tip="Join group IMs (group chat) from this group" />
14 <column label="Public" name="list_in_profile" width="20"
15 image="ff_visible_online_button.tga"
16 tool_tip="Group is listed in your profile" />
10 </scroll_list> 17 </scroll_list>
11 <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" 18 <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
12 bottom="22" drop_shadow_visible="true" enabled="true" follows="left|bottom" 19 bottom="22" drop_shadow_visible="true" enabled="true" follows="left|bottom"
diff --git a/linden/indra/newview/skins/default/xui/es/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/es/floater_instant_message.xml
index 30b23d1..68ed9c6 100644
--- a/linden/indra/newview/skins/default/xui/es/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/es/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Para esta llamada no está disponible el chat de texto. 34 Para esta llamada no está disponible el chat de texto.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Añadir como amigo
38 </string>
36 <flyout_button label="Perfil..." name="profile_callee_btn"/> 39 <flyout_button label="Perfil..." name="profile_callee_btn"/>
37 <button label="Llamar" name="start_call_btn"/> 40 <button label="Llamar" name="start_call_btn"/>
38 <button label="Colgar" name="end_call_btn"/> 41 <button label="Colgar" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/fr/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/fr/floater_instant_message.xml
index 926483b..89b6cb2 100644
--- a/linden/indra/newview/skins/default/xui/fr/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/fr/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Le chat écrit n&apos;est pas disponible pour cet appel. 34 Le chat écrit n&apos;est pas disponible pour cet appel.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Devenir amis
38 </string>
36 <flyout_button label="Profil..." name="profile_callee_btn"/> 39 <flyout_button label="Profil..." name="profile_callee_btn"/>
37 <button label="Appeler" name="start_call_btn"/> 40 <button label="Appeler" name="start_call_btn"/>
38 <button label="Raccrocher" name="end_call_btn"/> 41 <button label="Raccrocher" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/hu/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/hu/floater_instant_message.xml
index 3469323..09c7af6 100644
--- a/linden/indra/newview/skins/default/xui/hu/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/hu/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Szöveges üzenetküldés nem elérhető a jelenlegi hívás alatt. 34 Szöveges üzenetküldés nem elérhető a jelenlegi hívás alatt.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Barátokhoz ad
38 </string>
36 <flyout_button label="Adatlap" name="profile_callee_btn"/> 39 <flyout_button label="Adatlap" name="profile_callee_btn"/>
37 <button label="Hívás" name="start_call_btn"/> 40 <button label="Hívás" name="start_call_btn"/>
38 <button label="Hívás vége" name="end_call_btn"/> 41 <button label="Hívás vége" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/it/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/it/floater_instant_message.xml
index 7bdc046..511dac5 100644
--- a/linden/indra/newview/skins/default/xui/it/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/it/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 La chat di testo non è disponibile in questa chiamata. 34 La chat di testo non è disponibile in questa chiamata.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Aggiungi come amico
38 </string>
36 <flyout_button label="Profilo..." name="profile_callee_btn"/> 39 <flyout_button label="Profilo..." name="profile_callee_btn"/>
37 <button label="Chiama" name="start_call_btn"/> 40 <button label="Chiama" name="start_call_btn"/>
38 <button label="Termina" name="end_call_btn"/> 41 <button label="Termina" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/ja/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/ja/floater_instant_message.xml
index c9de54e..8bba7e3 100644
--- a/linden/indra/newview/skins/default/xui/ja/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/ja/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 このコールでは文字チャットが利用できません。 34 このコールでは文字チャットが利用できません。
35 </string> 35 </string>
36 <string name="add_friend_string">
37 フレンドに追加
38 </string>
36 <flyout_button label="プロフィール" name="profile_callee_btn" width="100"/> 39 <flyout_button label="プロフィール" name="profile_callee_btn" width="100"/>
37 <button label="コール" left_delta="105" name="start_call_btn" width="100"/> 40 <button label="コール" left_delta="105" name="start_call_btn" width="100"/>
38 <button label="呼出終了" name="end_call_btn" width="100"/> 41 <button label="呼出終了" name="end_call_btn" width="100"/>
diff --git a/linden/indra/newview/skins/default/xui/ko/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/ko/floater_instant_message.xml
index f1d0a48..68284be 100644
--- a/linden/indra/newview/skins/default/xui/ko/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/ko/floater_instant_message.xml
@@ -21,6 +21,9 @@
21 <string name="default_text_label"> 21 <string name="default_text_label">
22 메신저를 사용하려면 여기를 클릭하십시오. 22 메신저를 사용하려면 여기를 클릭하십시오.
23 </string> 23 </string>
24 <string name="add_friend_string">
25 친구 추가
26 </string>
24 <flyout_button label="프로필" name="profile_callee_btn" /> 27 <flyout_button label="프로필" name="profile_callee_btn" />
25 <button label="음성연결" name="start_call_btn" /> 28 <button label="음성연결" name="start_call_btn" />
26 <button label="연결종료" name="end_call_btn" /> 29 <button label="연결종료" name="end_call_btn" />
diff --git a/linden/indra/newview/skins/default/xui/pl/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/pl/floater_instant_message.xml
index 1d918b8..40b7c6e 100755
--- a/linden/indra/newview/skins/default/xui/pl/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/pl/floater_instant_message.xml
@@ -24,6 +24,9 @@
24 <string name="typing_start_string"> 24 <string name="typing_start_string">
25 [NAME] pisze... 25 [NAME] pisze...
26 </string> 26 </string>
27 <string name="add_friend_string">
28 Dodaj Znajomość
29 </string>
27 <string name="session_start_string"> 30 <string name="session_start_string">
28 Rozpoczęcie rozmowy z [NAME]. Proszę czekać... 31 Rozpoczęcie rozmowy z [NAME]. Proszę czekać...
29 </string> 32 </string>
diff --git a/linden/indra/newview/skins/default/xui/pt/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/pt/floater_instant_message.xml
index 983a13c..dc69246 100644
--- a/linden/indra/newview/skins/default/xui/pt/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/pt/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Conversa por texto não está disponível para esta chamada. 34 Conversa por texto não está disponível para esta chamada.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Adicionar amigo
38 </string>
36 <flyout_button label="Perfil..." name="profile_callee_btn"/> 39 <flyout_button label="Perfil..." name="profile_callee_btn"/>
37 <button label="Chamar" name="start_call_btn"/> 40 <button label="Chamar" name="start_call_btn"/>
38 <button label="Terminar Chamada" name="end_call_btn"/> 41 <button label="Terminar Chamada" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/ru/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/ru/floater_instant_message.xml
index 7aa1c19..f0379e1 100644
--- a/linden/indra/newview/skins/default/xui/ru/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/ru/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Текстовый чат недоступен для этого вызова. 34 Текстовый чат недоступен для этого вызова.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Добавить Друга
38 </string>
36 <flyout_button label="Профиль..." name="profile_callee_btn"/> 39 <flyout_button label="Профиль..." name="profile_callee_btn"/>
37 <button label="Звонок" name="start_call_btn"/> 40 <button label="Звонок" name="start_call_btn"/>
38 <button label="Конец звонка" name="end_call_btn"/> 41 <button label="Конец звонка" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/tr/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/tr/floater_instant_message.xml
index b627271..3fcb891 100644
--- a/linden/indra/newview/skins/default/xui/tr/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/tr/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Bu arama için yazılı sohbet mevcut değil. 34 Bu arama için yazılı sohbet mevcut değil.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Arkadaş ol
38 </string>
36 <flyout_button label="Profil..." name="profile_callee_btn"/> 39 <flyout_button label="Profil..." name="profile_callee_btn"/>
37 <button label="Ara" name="start_call_btn"/> 40 <button label="Ara" name="start_call_btn"/>
38 <button label="Kapat" name="end_call_btn"/> 41 <button label="Kapat" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/uk/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/uk/floater_instant_message.xml
index 60ac3b8..a017d38 100644
--- a/linden/indra/newview/skins/default/xui/uk/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/uk/floater_instant_message.xml
@@ -33,6 +33,9 @@
33 <string name="unavailable_text_label"> 33 <string name="unavailable_text_label">
34 Текстовий чат недоступний для цього виклику. 34 Текстовий чат недоступний для цього виклику.
35 </string> 35 </string>
36 <string name="add_friend_string">
37 Додати Друга
38 </string>
36 <flyout_button label="Профіль..." name="profile_callee_btn"/> 39 <flyout_button label="Профіль..." name="profile_callee_btn"/>
37 <button label="Дзвінок" name="start_call_btn"/> 40 <button label="Дзвінок" name="start_call_btn"/>
38 <button label="Кінець дзвінка" name="end_call_btn"/> 41 <button label="Кінець дзвінка" name="end_call_btn"/>
diff --git a/linden/indra/newview/skins/default/xui/zh/floater_instant_message.xml b/linden/indra/newview/skins/default/xui/zh/floater_instant_message.xml
index ace6d8c..a59000c 100644
--- a/linden/indra/newview/skins/default/xui/zh/floater_instant_message.xml
+++ b/linden/indra/newview/skins/default/xui/zh/floater_instant_message.xml
@@ -30,7 +30,10 @@
30 <string name="unavailable_text_label"> 30 <string name="unavailable_text_label">
31 本次通话不可以文字聊天。 31 本次通话不可以文字聊天。
32 </string> 32 </string>
33 <flyout_button label="档案..." name="profile_callee_btn"/> 33 <string name="add_friend_string">
34 添加为好友
35 </string>
36 <flyout_button label="档案..." name="profile_callee_btn"/>
34 <button label="呼叫" name="start_call_btn"/> 37 <button label="呼叫" name="start_call_btn"/>
35 <button label="结束呼叫" name="end_call_btn" pad_right="10" visible="false"/> 38 <button label="结束呼叫" name="end_call_btn" pad_right="10" visible="false"/>
36 <panel name="speaker_controls"> 39 <panel name="speaker_controls">
diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py
index f66fa5b..6b5e800 100755
--- a/linden/indra/newview/viewer_manifest.py
+++ b/linden/indra/newview/viewer_manifest.py
@@ -922,6 +922,7 @@ class Linux_i686Manifest(LinuxManifest):
922 self.path("libdb-4.2.so") 922 self.path("libdb-4.2.so")
923 self.path("libcrypto.so.0.9.7") 923 self.path("libcrypto.so.0.9.7")
924 self.path("libexpat.so.1") 924 self.path("libexpat.so.1")
925 self.path("libhunspell-1.2.so.0.0.0", "libhunspell-1.2.so.0")
925 self.path("libssl.so.0.9.7") 926 self.path("libssl.so.0.9.7")
926 self.path("libuuid.so", "libuuid.so.1") 927 self.path("libuuid.so", "libuuid.so.1")
927 self.path("libSDL-1.2.so.0") 928 self.path("libSDL-1.2.so.0")
@@ -1047,6 +1048,7 @@ class Linux_x86_64Manifest(LinuxManifest):
1047 self.path("libdb-4.2.so") 1048 self.path("libdb-4.2.so")
1048 self.path("libcrypto.so.0.9.8") 1049 self.path("libcrypto.so.0.9.8")
1049 self.path("libexpat.so.1") 1050 self.path("libexpat.so.1")
1051 self.path("libhunspell-1.2.so.0.0.0", "libhunspell-1.2.so.0")
1050 self.path("libssl.so.0.9.8") 1052 self.path("libssl.so.0.9.8")
1051 self.path("libuuid.so", "libuuid.so.1") 1053 self.path("libuuid.so", "libuuid.so.1")
1052 self.path("libSDL-1.2.so.0") 1054 self.path("libSDL-1.2.so.0")