From 1f7ed035d3b05de2e6d5f34d6a2ebdb852ad183d Mon Sep 17 00:00:00 2001 From: Lirusaito Date: Sat, 29 Sep 2012 16:59:17 -0400 Subject: [PATCH] Make translation more flexible Also in this commit, unrelated updates to the building panel (so git sees the markup "just" move in my next commit) --- indra/newview/ascentprefschat.cpp | 19 +++-- indra/newview/ascentprefssys.cpp | 20 +++-- indra/newview/floaterao.cpp | 10 ++- indra/newview/llfloateravatarlist.cpp | 81 ++++++++++--------- .../skins/default/xui/en-us/floater_radar.xml | 3 + .../en-us/panel_preferences_ascent_system.xml | 46 +++++------ .../skins/default/xui/en-us/strings.xml | 4 +- .../skins/default/xui/es/floater_radar.xml | 3 + .../newview/skins/default/xui/es/strings.xml | 4 +- 9 files changed, 110 insertions(+), 80 deletions(-) diff --git a/indra/newview/ascentprefschat.cpp b/indra/newview/ascentprefschat.cpp index d368e07a8..e0aaa0fb8 100644 --- a/indra/newview/ascentprefschat.cpp +++ b/indra/newview/ascentprefschat.cpp @@ -86,11 +86,18 @@ LLPrefsAscentChat::LLPrefsAscentChat() LLUUID itemid = (LLUUID)gSavedPerAccountSettings.getString("AscentInstantMessageResponseItemData"); LLViewerInventoryItem* item = gInventory.getItem(itemid); - if (item) childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +item->getName()); - else if (itemid.isNull()) childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlyNotSet")); - else childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + " " + LLTrans::getString("AnItemNotOnThisAccount")); + if (item) + { + LLStringUtil::format_map_t args; + args["[ITEM]"] = item->getName(); + childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo", args)); + } + else if (itemid.isNull()) + childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlyNotSet")); + else + childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetToAnItemNotOnThisAccount")); } - else childSetValue("im_give_disp_rect_txt", LLTrans::getString("NotLoggedIn")); + else childSetValue("im_give_disp_rect_txt", LLTrans::getString("NotLoggedIn")); childSetCommitCallback("im_response", onCommitAutoResponse, this); @@ -242,7 +249,9 @@ void LLPrefsAscentChat::onCommitAutoResponse(LLUICtrl* ctrl, void* user_data) void LLPrefsAscentChat::SinguIMResponseItemDrop(LLViewerInventoryItem* item) { gSavedPerAccountSettings.setString("AscentInstantMessageResponseItemData", item->getUUID().asString()); - sInst->childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +item->getName()); + LLStringUtil::format_map_t args; + args["[ITEM]"] = item->getName(); + sInst->childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo", args)); } //static diff --git a/indra/newview/ascentprefssys.cpp b/indra/newview/ascentprefssys.cpp index 64f423dec..8b90011f2 100644 --- a/indra/newview/ascentprefssys.cpp +++ b/indra/newview/ascentprefssys.cpp @@ -103,11 +103,18 @@ LLPrefsAscentSys::LLPrefsAscentSys() LLUUID itemid = (LLUUID)gSavedPerAccountSettings.getString("EmeraldBuildPrefs_Item"); LLViewerInventoryItem* item = gInventory.getItem(itemid); - if (item) childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + "\n" +item->getName()); - else if (itemid.isNull()) childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlyNotSet")); - else childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + "\n" + LLTrans::getString("AnItemNotOnThisAccount")); + if (item) + { + LLStringUtil::format_map_t args; + args["[ITEM]"] = item->getName(); + childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo", args)); + } + else if (itemid.isNull()) + childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlyNotSet")); + else + childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetToAnItemNotOnThisAccount")); } - else childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("NotLoggedIn")); + else childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("NotLoggedIn")); refreshValues(); refresh(); @@ -245,10 +252,13 @@ void LLPrefsAscentSys::onCommitTexturePicker(LLUICtrl* ctrl, void* userdata) if(image_ctrl) gSavedSettings.setString("EmeraldBuildPrefs_Texture", image_ctrl->getImageAssetID().asString()); } +//static void LLPrefsAscentSys::SinguBuildItemDrop(LLViewerInventoryItem* item) { gSavedPerAccountSettings.setString("EmeraldBuildPrefs_Item", item->getUUID().asString()); - sInst->childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + "\n" + item->getName()); + LLStringUtil::format_map_t args; + args["[ITEM]"] = item->getName(); + sInst->childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo", args)); } void LLPrefsAscentSys::refreshValues() diff --git a/indra/newview/floaterao.cpp b/indra/newview/floaterao.cpp index ec3fac0e5..f7bdf090f 100644 --- a/indra/newview/floaterao.cpp +++ b/indra/newview/floaterao.cpp @@ -331,7 +331,9 @@ BOOL LLFloaterAO::postBuild() LLViewerInventoryItem* itemimport = gInventory.getItem(itemidimport); if(itemimport) { - childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +itemimport->getName()); + LLStringUtil::format_map_t args; + args["[ITEM]"] = itemimport->getName(); + childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo", args)); } else if(itemidimport.isNull()) { @@ -339,7 +341,7 @@ BOOL LLFloaterAO::postBuild() } else { - childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + " " + LLTrans::getString("AnItemNotOnThisAccount")); + childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetToAnItemNotOnThisAccount")); } } else @@ -795,7 +797,9 @@ void LLFloaterAO::setCurrentStandId(const LLUUID& id) void LLFloaterAO::AOItemDrop(LLViewerInventoryItem* item) { gSavedPerAccountSettings.setString("AOConfigNotecardID", item->getUUID().asString()); - sInstance->childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +item->getName()); + LLStringUtil::format_map_t args; + args["[ITEM]"] = item->getName(); + sInstance->childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo", args)); } LLUUID LLFloaterAO::GetAnimID(const LLUUID& id) diff --git a/indra/newview/llfloateravatarlist.cpp b/indra/newview/llfloateravatarlist.cpp index 6d25b887c..c214f3480 100644 --- a/indra/newview/llfloateravatarlist.cpp +++ b/indra/newview/llfloateravatarlist.cpp @@ -84,54 +84,55 @@ typedef enum e_radar_alert_type void chat_avatar_status(std::string name, LLUUID key, ERadarAlertType type, bool entering) { static LLCachedControl radar_chat_alerts(gSavedSettings, "RadarChatAlerts"); + if (!radar_chat_alerts) return; static LLCachedControl radar_alert_sim(gSavedSettings, "RadarAlertSim"); static LLCachedControl radar_alert_draw(gSavedSettings, "RadarAlertDraw"); static LLCachedControl radar_alert_shout_range(gSavedSettings, "RadarAlertShoutRange"); static LLCachedControl radar_alert_chat_range(gSavedSettings, "RadarAlertChatRange"); static LLCachedControl radar_chat_keys(gSavedSettings, "RadarChatKeys"); - if (radar_chat_alerts) + LLFloaterAvatarList* self = LLFloaterAvatarList::getInstance(); + LLStringUtil::format_map_t args; + switch(type) { + case ALERT_TYPE_SIM: + if (radar_alert_sim) + { + args["[RANGE]"] = self->getString("the_sim"); + } + break; + + case ALERT_TYPE_DRAW: + if (radar_alert_draw) + { + args["[RANGE]"] = self->getString("draw_distance"); + } + break; + + case ALERT_TYPE_SHOUTRANGE: + if (radar_alert_shout_range) + { + args["[RANGE]"] = self->getString("shout_range"); + } + break; + + case ALERT_TYPE_CHATRANGE: + if (radar_alert_chat_range) + { + args["[RANGE]"] = self->getString("chat_range"); + } + break; + } + if (args.find("[RANGE]") != args.end()) + { + args["[NAME]"] = name; + args["[ACTION]"] = self->getString(entering ? "has_entered" : "has_left"); LLChat chat; - LLFloaterAvatarList* self = LLFloaterAvatarList::getInstance(); - std::string message = name + " " + self->getString(entering ? "has_entered" : "has_left") + " "; - switch(type) - { - case ALERT_TYPE_SIM: - if (radar_alert_sim) - { - chat.mText = message + self->getString("the_sim") + "."; - } - break; - - case ALERT_TYPE_DRAW: - if (radar_alert_draw) - { - chat.mText = message + self->getString("draw_distance") + "."; - } - break; - - case ALERT_TYPE_SHOUTRANGE: - if (radar_alert_shout_range) - { - chat.mText = message + self->getString("shout_range") + "."; - } - break; - - case ALERT_TYPE_CHATRANGE: - if (radar_alert_chat_range) - { - chat.mText = message + self->getString("chat_range") + "."; - } - break; - } - if (chat.mText != "") - { - chat.mFromName = name; - chat.mURL = llformat("secondlife:///app/agent/%s/about",key.asString().c_str()); - chat.mSourceType = CHAT_SOURCE_SYSTEM; - LLFloaterChat::addChat(chat); - } + chat.mText = self->getString("template", args); + chat.mFromName = name; + chat.mURL = llformat("secondlife:///app/agent/%s/about",key.asString().c_str()); + chat.mSourceType = CHAT_SOURCE_SYSTEM; + LLFloaterChat::addChat(chat); } } diff --git a/indra/newview/skins/default/xui/en-us/floater_radar.xml b/indra/newview/skins/default/xui/en-us/floater_radar.xml index b3b32412e..5a2c78cea 100644 --- a/indra/newview/skins/default/xui/en-us/floater_radar.xml +++ b/indra/newview/skins/default/xui/en-us/floater_radar.xml @@ -338,8 +338,11 @@ /> + [NAME] [ACTION] [RANGE]. + has entered has left + the sim draw distance shout range diff --git a/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml b/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml index eec7a9754..7e0017333 100644 --- a/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml +++ b/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml @@ -92,23 +92,17 @@ - Pivot Point + Pivot Point - - - - Allow next owner: - - - - - - - - + Dimensions + + + + Material: + Stone Metal Glass @@ -117,8 +111,16 @@ Plastic Rubber - - + Next Owner Perms + + + + + + + + + Shine @@ -129,14 +131,12 @@ High - - Drop inventory item here - - Currently set to: - ITEM - - - + + Drop inventory item here + + Currently set to: ITEM + + diff --git a/indra/newview/skins/default/xui/en-us/strings.xml b/indra/newview/skins/default/xui/en-us/strings.xml index b0390fc77..8d9253c4f 100644 --- a/indra/newview/skins/default/xui/en-us/strings.xml +++ b/indra/newview/skins/default/xui/en-us/strings.xml @@ -2817,8 +2817,8 @@ Where tag = tag string to match. Removes bot's matching the tag. Currently not set - Currently set to - an item not on this account + Currently set to: [ITEM] + Currently set to an item not on this account Not logged in diff --git a/indra/newview/skins/default/xui/es/floater_radar.xml b/indra/newview/skins/default/xui/es/floater_radar.xml index 231a45f98..8e6dd3714 100644 --- a/indra/newview/skins/default/xui/es/floater_radar.xml +++ b/indra/newview/skins/default/xui/es/floater_radar.xml @@ -76,8 +76,11 @@