diff --git a/indra/llui/llscrolllistctrl.cpp b/indra/llui/llscrolllistctrl.cpp index e4ad47118..ea168a35c 100644 --- a/indra/llui/llscrolllistctrl.cpp +++ b/indra/llui/llscrolllistctrl.cpp @@ -666,6 +666,7 @@ LLScrollListCtrl::LLScrollListCtrl(const std::string& name, const LLRect& rect, mFgUnselectedColor( LLUI::sColorsGroup->getColor("ScrollUnselectedColor") ), mFgDisabledColor( LLUI::sColorsGroup->getColor("ScrollDisabledColor") ), mHighlightedColor( LLUI::sColorsGroup->getColor("ScrollHighlightedColor") ), + mDefaultListTextColor( LLUI::sColorsGroup->getColor("DefaultListText") ), mBorderThickness( 2 ), mOnDoubleClickCallback( NULL ), mOnMaximumSelectCallback( NULL ), @@ -3543,6 +3544,10 @@ LLScrollListItem* LLScrollListCtrl::addElement(const LLSD& value, EAddPosition p { cell->setColor(color); } + else + { + cell->setColor(mDefaultListTextColor); + } new_item->setColumn(index, cell); if (columnp->mHeader && !value.asString().empty()) { diff --git a/indra/llui/llscrolllistctrl.h b/indra/llui/llscrolllistctrl.h index ada8032f1..4060c1466 100644 --- a/indra/llui/llscrolllistctrl.h +++ b/indra/llui/llscrolllistctrl.h @@ -697,6 +697,7 @@ private: LLColor4 mFgUnselectedColor; LLColor4 mFgDisabledColor; LLColor4 mHighlightedColor; + LLColor4 mDefaultListTextColor; S32 mBorderThickness; void (*mOnDoubleClickCallback)(void* userdata); diff --git a/indra/newview/ascentprefschat.cpp b/indra/newview/ascentprefschat.cpp index 77bc6611e..5960024bd 100644 --- a/indra/newview/ascentprefschat.cpp +++ b/indra/newview/ascentprefschat.cpp @@ -42,6 +42,7 @@ #include "llviewercontrol.h" #include "NACLantispam.h" #include "lgghunspell_wrapper.h" +#include "lltrans.h" #include "llstartup.h" @@ -85,11 +86,11 @@ LLPrefsAscentChat::LLPrefsAscentChat() LLUUID itemid = (LLUUID)gSavedPerAccountSettings.getString("AscentInstantMessageResponseItemData"); LLViewerInventoryItem* item = gInventory.getItem(itemid); - if (item) childSetValue("im_give_disp_rect_txt","Currently set to: "+item->getName()); - else if (itemid.isNull()) childSetValue("im_give_disp_rect_txt","Currently not set"); - else childSetValue("im_give_disp_rect_txt","Currently set to an item not on this account"); + 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")); } - else childSetValue("im_give_disp_rect_txt","Not logged in"); + else childSetValue("im_give_disp_rect_txt", LLTrans::getString("NotLoggedIn")); childSetCommitCallback("im_response", onCommitAutoResponse, this); @@ -240,7 +241,7 @@ 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","Currently set to: "+item->getName()); + sInst->childSetValue("im_give_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +item->getName()); } //static diff --git a/indra/newview/ascentprefssys.cpp b/indra/newview/ascentprefssys.cpp index c9f883c05..684a2fb0a 100644 --- a/indra/newview/ascentprefssys.cpp +++ b/indra/newview/ascentprefssys.cpp @@ -45,6 +45,7 @@ #include "lluictrlfactory.h" #include "llviewercontrol.h" #include "llstartup.h" +#include "lltrans.h" LLDropTarget* mBuildDropTarget; LLPrefsAscentSys* LLPrefsAscentSys::sInst; @@ -102,11 +103,11 @@ LLPrefsAscentSys::LLPrefsAscentSys() LLUUID itemid = (LLUUID)gSavedPerAccountSettings.getString("EmeraldBuildPrefs_Item"); LLViewerInventoryItem* item = gInventory.getItem(itemid); - if (item) childSetValue("build_item_add_disp_rect_txt", "Currently set to:\n"+item->getName()); - else if (itemid.isNull()) childSetValue("build_item_add_disp_rect_txt", "Currently\nnot set"); - else childSetValue("build_item_add_disp_rect_txt", "Currently set to\nan item not on this account"); + 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")); } - else childSetValue("build_item_add_disp_rect_txt", "You are\nnot logged in"); + else childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("NotLoggedIn")); refreshValues(); refresh(); @@ -165,7 +166,7 @@ void LLPrefsAscentSys::onCommitCheckBox(LLUICtrl* ctrl, void* user_data) gAudiop->triggerSound(LLUUID("58a38e89-44c6-c52b-deb8-9f1ddc527319"), gAgent.getID(), 1.0f, LLAudioEngine::AUDIO_TYPE_UI, lpos_global); LLChat chat; chat.mSourceType = CHAT_SOURCE_SYSTEM; - chat.mText = llformat("You are bestowed with powers beyond mortal comprehension.\nUse your newfound abilities wisely.\nUnlocked:\n- Animation Priority up to 7 - Meant for animations that should override anything and everything at all times. DO NOT USE THIS FOR GENERAL ANIMATIONS.\n- Right click > Destroy objects - Permanently deletes an object immediately, when you don't feel like waiting for the server to respond.\n- Right Click > Explode objects - Turns an object physical, temporary, and delinks it."); + chat.mText = LLTrans::getString("PowerUser1") + "\n" + LLTrans::getString("PowerUser2") + "\n" + LLTrans::getString("Unlocked:") + "\n" + LLTrans::getString("PowerUser3") + "\n- " + LLTrans::getString("RightClick") + " > " + LLTrans::getString("PowerUser4") + "\n- " + LLTrans::getString("RightClick") + " > " + LLTrans::getString("PowerUser5"); LLFloaterChat::addChat(chat); } } @@ -247,7 +248,7 @@ void LLPrefsAscentSys::onCommitTexturePicker(LLUICtrl* ctrl, void* userdata) void LLPrefsAscentSys::SinguBuildItemDrop(LLViewerInventoryItem* item) { gSavedPerAccountSettings.setString("EmeraldBuildPrefs_Item", item->getUUID().asString()); - sInst->childSetValue("build_item_add_disp_rect_txt","Currently set to:\n"+item->getName()); + sInst->childSetValue("build_item_add_disp_rect_txt", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + "\n" + item->getName()); } void LLPrefsAscentSys::refreshValues() diff --git a/indra/newview/floaterao.cpp b/indra/newview/floaterao.cpp index afc0fcb75..ec3fac0e5 100644 --- a/indra/newview/floaterao.cpp +++ b/indra/newview/floaterao.cpp @@ -22,6 +22,7 @@ #include "chatbar_as_cmdline.h" //#include "llfloaterchat.h" #include "llfirstuse.h" +#include "lltrans.h" #include "llinventory.h" #include "llinventoryfunctions.h" @@ -330,20 +331,20 @@ BOOL LLFloaterAO::postBuild() LLViewerInventoryItem* itemimport = gInventory.getItem(itemidimport); if(itemimport) { - childSetValue("ao_nc_text","Currently set to: "+itemimport->getName()); + childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +itemimport->getName()); } else if(itemidimport.isNull()) { - childSetValue("ao_nc_text","Currently not set"); + childSetValue("ao_nc_text", LLTrans::getString("CurrentlyNotSet")); } else { - childSetValue("ao_nc_text","Currently set to a item not on this account"); + childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + " " + LLTrans::getString("AnItemNotOnThisAccount")); } } else { - childSetValue("ao_nc_text","Not logged in"); + childSetValue("ao_nc_text", LLTrans::getString("NotLoggedIn")); } childSetAction("more_btn", onClickMore, this); childSetAction("less_btn", onClickLess, this); @@ -794,7 +795,7 @@ void LLFloaterAO::setCurrentStandId(const LLUUID& id) void LLFloaterAO::AOItemDrop(LLViewerInventoryItem* item) { gSavedPerAccountSettings.setString("AOConfigNotecardID", item->getUUID().asString()); - sInstance->childSetValue("ao_nc_text","Currently set to: "+item->getName()); + sInstance->childSetValue("ao_nc_text", LLTrans::getString("CurrentlySetTo") + LLTrans::getString(":") + " " +item->getName()); } LLUUID LLFloaterAO::GetAnimID(const LLUUID& id) diff --git a/indra/newview/llcompilequeue.cpp b/indra/newview/llcompilequeue.cpp index 97831b4b2..5cf8b7fdc 100644 --- a/indra/newview/llcompilequeue.cpp +++ b/indra/newview/llcompilequeue.cpp @@ -61,6 +61,7 @@ #include "llfloaterchat.h" #include "llviewerstats.h" #include "lluictrlfactory.h" +#include "lltrans.h" #include "llselectmgr.h" @@ -68,16 +69,6 @@ /// Local function declarations, constants, enums, and typedefs ///---------------------------------------------------------------------------- -// *TODO:Translate -const std::string COMPILE_QUEUE_TITLE("Recompilation Progress"); -const std::string COMPILE_START_STRING("recompile"); -const std::string RESET_QUEUE_TITLE("Reset Progress"); -const std::string RESET_START_STRING("reset"); -const std::string RUN_QUEUE_TITLE("Set Running Progress"); -const std::string RUN_START_STRING("set running"); -const std::string NOT_RUN_QUEUE_TITLE("Set Not Running Progress"); -const std::string NOT_RUN_START_STRING("set not running"); - struct LLScriptQueueData { LLUUID mQueueID; @@ -211,8 +202,11 @@ BOOL LLFloaterScriptQueue::start() n_objects = selectHandle->getRootObjectCount(); } - buffer = llformat("Starting %s of %d items.", mStartString.c_str(), n_objects); // *TODO: Translate - + LLStringUtil::format_map_t args; + args["[START]"] = mStartString; + args["[COUNT]"] = llformat ("%d", mObjectIDs.count()); + buffer = getString ("Starting", args); + LLScrollListCtrl* list = getChild("queue output"); list->addCommentText(buffer); @@ -250,8 +244,7 @@ BOOL LLFloaterScriptQueue::nextObject() LLScrollListCtrl* list = getChild("queue output"); mDone = TRUE; - std::string buffer = "Done."; // *TODO: Translate - list->addCommentText(buffer); + list->addCommentText(getString("Done")); childSetEnabled("close",TRUE); } return successful_start; @@ -346,7 +339,7 @@ LLFloaterCompileQueue* LLFloaterCompileQueue::create(BOOL mono) } LLFloaterCompileQueue::LLFloaterCompileQueue(const std::string& name, const LLRect& rect) -: LLFloaterScriptQueue(name, rect, COMPILE_QUEUE_TITLE, COMPILE_START_STRING) +: LLFloaterScriptQueue(name, rect, LLTrans::getString("CompileQueueTitle"), LLTrans::getString("CompileQueueStart")) { } LLFloaterCompileQueue::~LLFloaterCompileQueue() @@ -454,7 +447,7 @@ void LLFloaterCompileQueue::scriptArrived(LLVFS *vfs, const LLUUID& asset_id, else { // It's now in the file, now compile it. - buffer = std::string("Downloaded, now compiling: ") + data->mScriptName; // *TODO: Translate + buffer = LLTrans::getString("CompileQueueDownloadedCompiling") + (": ") + data->mScriptName; // Write script to local file for compilation. LLFILE *fp = LLFile::fopen(filename, "wb"); /*Flawfinder: ignore*/ @@ -493,19 +486,21 @@ void LLFloaterCompileQueue::scriptArrived(LLVFS *vfs, const LLUUID& asset_id, if( LL_ERR_ASSET_REQUEST_NOT_IN_DATABASE == status ) { - LLChat chat(std::string("Script not found on server.")); // *TODO: Translate + LLChat chat(LLTrans::getString("CompileQueueScriptNotFound")); LLFloaterChat::addChat(chat); - buffer = std::string("Problem downloading: ") + data->mScriptName; // *TODO: Translate + + buffer = LLTrans::getString("CompileQueueProblemDownloading") + LLTrans::getString(":") + " " + data->mScriptName; } else if (LL_ERR_INSUFFICIENT_PERMISSIONS == status) { - LLChat chat(std::string("Insufficient permissions to download a script.")); // *TODO: Translate + LLChat chat(LLTrans::getString("CompileQueueInsufficientPermDownload")); LLFloaterChat::addChat(chat); - buffer = std::string("Insufficient permissions for: ") + data->mScriptName; // *TODO: Translate + + buffer = LLTrans::getString("CompileQueueInsufficientPermFor") + LLTrans::getString(":") + " " + data->mScriptName; } else { - buffer = std::string("Unknown failure to download ") + data->mScriptName; // *TODO: Translate + buffer = LLTrans::getString("CompileQueueUnknownFailure") + (" ") + data->mScriptName; } llwarns << "Problem downloading script asset." << llendl; @@ -671,7 +666,7 @@ LLFloaterResetQueue* LLFloaterResetQueue::create() } LLFloaterResetQueue::LLFloaterResetQueue(const std::string& name, const LLRect& rect) -: LLFloaterScriptQueue(name, rect, RESET_QUEUE_TITLE, RESET_START_STRING) +: LLFloaterScriptQueue(name, rect, LLTrans::getString("ResetQueueTitle"), LLTrans::getString("ResetQueueStart")) { } LLFloaterResetQueue::~LLFloaterResetQueue() @@ -698,7 +693,7 @@ void LLFloaterResetQueue::handleInventory(LLViewerObject* viewer_obj, LLInventoryItem* item = (LLInventoryItem*)((LLInventoryObject*)(*it)); LLScrollListCtrl* list = getChild("queue output"); std::string buffer; - buffer = std::string("Resetting: ") + item->getName(); // *TODO: Translate + buffer = getString("Resetting") + LLTrans::getString(":") + " " + item->getName(); list->addCommentText(buffer); LLMessageSystem* msg = gMessageSystem; msg->newMessageFast(_PREHASH_ScriptReset); @@ -733,7 +728,7 @@ LLFloaterRunQueue* LLFloaterRunQueue::create() } LLFloaterRunQueue::LLFloaterRunQueue(const std::string& name, const LLRect& rect) -: LLFloaterScriptQueue(name, rect, RUN_QUEUE_TITLE, RUN_START_STRING) +: LLFloaterScriptQueue(name, rect, LLTrans::getString("RunQueueTitle"), LLTrans::getString("RunQueueStart")) { } LLFloaterRunQueue::~LLFloaterRunQueue() @@ -741,7 +736,7 @@ LLFloaterRunQueue::~LLFloaterRunQueue() } void LLFloaterRunQueue::handleInventory(LLViewerObject* viewer_obj, - LLInventoryObject::object_list_t* inv) + LLInventoryObject::object_list_t* inv) { // find all of the lsl, leaving off duplicates. We'll remove // all matching asset uuids on compilation success. @@ -760,7 +755,7 @@ void LLFloaterRunQueue::handleInventory(LLViewerObject* viewer_obj, LLInventoryItem* item = (LLInventoryItem*)((LLInventoryObject*)(*it)); LLScrollListCtrl* list = getChild("queue output"); std::string buffer; - buffer = std::string("Running: ") + item->getName(); // *TODO: Translate + buffer = getString("Running") + LLTrans::getString(":") + " " + item->getName(); list->addCommentText(buffer); LLMessageSystem* msg = gMessageSystem; @@ -797,7 +792,7 @@ LLFloaterNotRunQueue* LLFloaterNotRunQueue::create() } LLFloaterNotRunQueue::LLFloaterNotRunQueue(const std::string& name, const LLRect& rect) -: LLFloaterScriptQueue(name, rect, NOT_RUN_QUEUE_TITLE, NOT_RUN_START_STRING) +: LLFloaterScriptQueue(name, rect, LLTrans::getString("NotRunQueueTitle"), LLTrans::getString("NotRunQueueStart")) { } LLFloaterNotRunQueue::~LLFloaterNotRunQueue() @@ -824,7 +819,7 @@ void LLFloaterNotRunQueue::handleInventory(LLViewerObject* viewer_obj, LLInventoryItem* item = (LLInventoryItem*)((LLInventoryObject*)(*it)); LLScrollListCtrl* list = getChild("queue output"); std::string buffer; - buffer = std::string("Not running: ") +item->getName(); // *TODO: Translate + buffer = getString("NotRunning") + LLTrans::getString(":") + " " + item->getName(); list->addCommentText(buffer); LLMessageSystem* msg = gMessageSystem; diff --git a/indra/newview/llfloateractivespeakers.cpp b/indra/newview/llfloateractivespeakers.cpp index 321a825f1..6e49d5d91 100644 --- a/indra/newview/llfloateractivespeakers.cpp +++ b/indra/newview/llfloateractivespeakers.cpp @@ -531,15 +531,18 @@ void LLPanelActiveSpeakers::refreshSpeakers() LLScrollListCell* name_cell = itemp->getColumn(1); if (name_cell) { - //FIXME: remove hard coding of font colors if (speakerp->mStatus == LLSpeaker::STATUS_NOT_IN_CHANNEL) { - // draw inactive speakers in gray - name_cell->setColor(LLColor4::grey4); + // draw inactive speakers in different color + static LLCachedControl sSpeakersInactive(gColors, "SpeakersInactive"); + + name_cell->setColor(sSpeakersInactive); } else { - name_cell->setColor(LLColor4::black); + static LLCachedControl sDefaultListText(gColors, "DefaultListText"); + + name_cell->setColor(sDefaultListText); } // if(!mShowTextChatters && !(speakerp->mStatus == LLSpeaker::STATUS_NOT_IN_CHANNEL) && speakerp->mID != gAgent.getID()) @@ -560,7 +563,11 @@ void LLPanelActiveSpeakers::refreshSpeakers() } } if(!found) - name_cell->setColor(LLColor4::red); + { + static LLCachedControl sSpeakersGhost(gColors, "SpeakersGhost"); + + name_cell->setColor(sSpeakersGhost); + } } // diff --git a/indra/newview/llfloateravatarlist.cpp b/indra/newview/llfloateravatarlist.cpp index ff2f4247b..801633eaf 100644 --- a/indra/newview/llfloateravatarlist.cpp +++ b/indra/newview/llfloateravatarlist.cpp @@ -74,43 +74,55 @@ extern U32 gFrameCount; typedef enum e_radar_alert_type { - ALERT_TYPE_SIM = 0, - ALERT_TYPE_DRAW = 1, - ALERT_TYPE_SHOUTRANGE = 2, - ALERT_TYPE_CHATRANGE = 3 + ALERT_TYPE_SIM = 1, + ALERT_TYPE_DRAW = 2, + ALERT_TYPE_SHOUTRANGE = 4, + ALERT_TYPE_CHATRANGE = 8, } ERadarAlertType; void chat_avatar_status(std::string name, LLUUID key, ERadarAlertType type, bool entering) { - if (gSavedSettings.getBOOL("RadarChatAlerts")) + static LLCachedControl radar_chat_alerts(gSavedSettings, "RadarChatAlerts"); + 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) { LLChat chat; + LLFloaterAvatarList* self = LLFloaterAvatarList::getInstance(); + std::string message = name + " " + self->getString(entering ? "has_entered" : "has_left") + " "; switch(type) { - case ALERT_TYPE_SIM: - if (gSavedSettings.getBOOL("RadarAlertSim")) - { - chat.mText = name+" has "+(entering ? "entered" : "left")+" the sim."; - } - break; - case ALERT_TYPE_DRAW: - if (gSavedSettings.getBOOL("RadarAlertDraw")) - { - chat.mText = name+" has "+(entering ? "entered" : "left")+" draw distance."; - } - break; - case ALERT_TYPE_SHOUTRANGE: - if (gSavedSettings.getBOOL("RadarAlertShoutRange")) - { - chat.mText = name+" has "+(entering ? "entered" : "left")+" shout range."; - } - break; - case ALERT_TYPE_CHATRANGE: - if (gSavedSettings.getBOOL("RadarAlertChatRange")) - { - chat.mText = name+" has "+(entering ? "entered" : "left")+" chat range."; - } - break; + 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 != "") { @@ -309,6 +321,7 @@ BOOL LLFloaterAvatarList::postBuild() // Hide them until some other way is found // Users may not expect to find a Ban feature on the Eject button + // Perhaps turn it into a FlyOutButton? childSetVisible("estate_ban_btn", false); // Set callbacks @@ -471,7 +484,7 @@ void LLFloaterAvatarList::updateAvatarList() LLAvatarName avatar_name; if (LLAvatarNameCache::get(avatarp->getID(), &avatar_name)) { - static const LLCachedControl phoenix_name_system("PhoenixNameSystem", 0); + static LLCachedControl phoenix_name_system("PhoenixNameSystem", 0); switch (phoenix_name_system) { case 0 : name = avatar_name.getLegacyName(); break; @@ -662,7 +675,7 @@ void LLFloaterAvatarList::refreshAvatarList() LLUUID av_id; std::string av_name; - LLAvatarListEntry *entry = &iter->second; + LLAvatarListEntry* entry = &iter->second; // Skip if avatar hasn't been around if (entry->isDead()) @@ -738,9 +751,13 @@ void LLFloaterAvatarList::refreshAvatarList() estate_owner = parent_estate->getOwner(); } - static const LLCachedControl unselected_color(gColors, "ScrollUnselectedColor",LLColor4(LLColor4U(0, 0, 0, 204)) ); + static const LLCachedControl unselected_color(gColors, "ScrollUnselectedColor",LLColor4(0.f, 0.f, 0.f, 0.8f)); - LLColor4 name_color = unselected_color; + static LLCachedControl sDefaultListText(gColors, "DefaultListText"); + static LLCachedControl sRadarTextChatRange(gColors, "RadarTextChatRange"); + static LLCachedControl sRadarTextShoutRange(gColors, "RadarTextShoutRange"); + static LLCachedControl sRadarTextDrawDist(gColors, "RadarTextDrawDist"); + LLColor4 name_color = sDefaultListText; //Lindens are always more Linden than your friend, make that take precedence if(LLMuteList::getInstance()->isLinden(av_name)) @@ -772,7 +789,7 @@ void LLFloaterAvatarList::refreshAvatarList() element["columns"][LIST_AVATAR_NAME]["color"] = name_color.getValue(); char temp[32]; - LLColor4 color = LLColor4::black; + LLColor4 color = sDefaultListText; element["columns"][LIST_DISTANCE]["column"] = "distance"; element["columns"][LIST_DISTANCE]["type"] = "text"; if (UnknownAltitude) @@ -780,28 +797,28 @@ void LLFloaterAvatarList::refreshAvatarList() strcpy(temp, "?"); if (entry->isDrawn()) { - color = LLColor4::green2; + color = sRadarTextDrawDist; } } else { - if (distance < 100.0) + if (distance <= 96.0) { snprintf(temp, sizeof(temp), "%.1f", distance); if (distance > 20.0f) { - color = LLColor4::yellow1; + color = sRadarTextShoutRange; } else { - color = LLColor4::red; + color = sRadarTextChatRange; } } else { if (entry->isDrawn()) { - color = LLColor4::green2; + color = sRadarTextDrawDist; } snprintf(temp, sizeof(temp), "%d", (S32)distance); } @@ -893,9 +910,9 @@ void LLFloaterAvatarList::refreshAvatarList() //element["columns"][LIST_METADATA]["column"] = "metadata"; //element["columns"][LIST_METADATA]["type"] = "text"; - static const LLCachedControl avatar_name_color(gColors, "AvatarNameColor",LLColor4(LLColor4U(251, 175, 93, 255)) ); + static const LLCachedControl avatar_name_color(gColors, "AvatarNameColor",LLColor4(0.98f, 0.69f, 0.36f, 1.f)); LLColor4 client_color(avatar_name_color); - LLVOAvatar *avatarp = gObjectList.findAvatar(av_id); + LLVOAvatar* avatarp = gObjectList.findAvatar(av_id); if(avatarp) { std::string client = SHClientTagMgr::instance().getClientName(avatarp, false); @@ -971,9 +988,9 @@ void LLFloaterAvatarList::onClickIM(void* userdata) } } -void LLFloaterAvatarList::onClickTeleportOffer(void *userdata) +void LLFloaterAvatarList::onClickTeleportOffer(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; LLDynamicArray ids = self->mAvatarList->getSelectedIDs(); if (ids.size() > 0) @@ -982,11 +999,11 @@ void LLFloaterAvatarList::onClickTeleportOffer(void *userdata) } } -void LLFloaterAvatarList::onClickTrack(void *userdata) +void LLFloaterAvatarList::onClickTrack(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (!item) return; LLUUID agent_id = item->getUUID(); @@ -1054,15 +1071,15 @@ LLAvatarListEntry * LLFloaterAvatarList::getAvatarEntry(LLUUID avatar) } //static -void LLFloaterAvatarList::onClickMark(void *userdata) +void LLFloaterAvatarList::onClickMark(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; LLDynamicArray ids = self->mAvatarList->getSelectedIDs(); for (LLDynamicArray::iterator itr = ids.begin(); itr != ids.end(); ++itr) { LLUUID avid = *itr; - LLAvatarListEntry *entry = self->getAvatarEntry(avid); + LLAvatarListEntry* entry = self->getAvatarEntry(avid); if (entry != NULL) { entry->toggleMark(); @@ -1070,11 +1087,38 @@ void LLFloaterAvatarList::onClickMark(void *userdata) } } -void LLFloaterAvatarList::onClickFocus(void *userdata) +BOOL LLFloaterAvatarList::handleKeyHere(KEY key, MASK mask) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = getInstance(); + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); + if(item) + { + LLUUID agent_id = item->getUUID(); + if (( KEY_RETURN == key ) && (MASK_NONE == mask)) + { + self->mFocusedAvatar = agent_id; + self->focusOnCurrent(); + return TRUE; + } + else if (( KEY_RETURN == key ) && (MASK_CONTROL == mask)) + { + LLAvatarListEntry* entry = self->getAvatarEntry(agent_id); + if (entry) + { +// llinfos << "Trying to teleport to " << entry->getName() << " at " << entry->getPosition() << llendl; + gAgent.teleportViaLocation(entry->getPosition()); + } + return TRUE; + } + } + return LLPanel::handleKeyHere(key, mask); +} - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); +void LLFloaterAvatarList::onClickFocus(void* userdata) +{ + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; + + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (item) { self->mFocusedAvatar = item->getUUID(); @@ -1088,7 +1132,7 @@ void LLFloaterAvatarList::removeFocusFromAll() for (iter = mAvatars.begin(); iter != mAvatars.end(); iter++) { - LLAvatarListEntry *entry = &iter->second; + LLAvatarListEntry* entry = &iter->second; entry->setFocus(FALSE); } } @@ -1096,7 +1140,7 @@ void LLFloaterAvatarList::removeFocusFromAll() void LLFloaterAvatarList::focusOnCurrent() { std::map::iterator iter; - LLAvatarListEntry *entry; + LLAvatarListEntry* entry; if (mAvatars.size() == 0) { @@ -1123,8 +1167,8 @@ void LLFloaterAvatarList::focusOnCurrent() void LLFloaterAvatarList::focusOnPrev(BOOL marked_only) { std::map::iterator iter; - LLAvatarListEntry *prev = NULL; - LLAvatarListEntry *entry; + LLAvatarListEntry* prev = NULL; + LLAvatarListEntry* entry; if (mAvatars.size() == 0) { @@ -1162,8 +1206,8 @@ void LLFloaterAvatarList::focusOnNext(BOOL marked_only) { std::map::iterator iter; BOOL found = FALSE; - LLAvatarListEntry *next = NULL; - LLAvatarListEntry *entry; + LLAvatarListEntry* next = NULL; + LLAvatarListEntry* entry; if (mAvatars.size() == 0) { @@ -1220,38 +1264,38 @@ void LLFloaterAvatarList::lookAtAvatar(LLUUID &uuid) } //static -void LLFloaterAvatarList::onClickPrevInList(void *userdata) +void LLFloaterAvatarList::onClickPrevInList(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; self->focusOnPrev(FALSE); } //static -void LLFloaterAvatarList::onClickNextInList(void *userdata) +void LLFloaterAvatarList::onClickNextInList(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; self->focusOnNext(FALSE); } //static -void LLFloaterAvatarList::onClickPrevMarked(void *userdata) +void LLFloaterAvatarList::onClickPrevMarked(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; self->focusOnPrev(TRUE); } //static -void LLFloaterAvatarList::onClickNextMarked(void *userdata) +void LLFloaterAvatarList::onClickNextMarked(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; self->focusOnNext(TRUE); } //static void LLFloaterAvatarList::onClickGetKey(void *userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (NULL == item) return; @@ -1337,7 +1381,7 @@ void LLFloaterAvatarList::sound_trigger_hook(LLMessageSystem* msg,void **) msg->getUUIDFast(_PREHASH_SoundData, _PREHASH_OwnerID, owner_id); if(owner_id == gAgent.getID() && sound_id == LLUUID("76c78607-93f9-f55a-5238-e19b1a181389")) { - //lets ask if they want to turn it on. + //let's ask if they want to turn it on. if(gSavedSettings.getBOOL("RadarChatKeys")) { LLFloaterAvatarList::getInstance()->sendKeys(); @@ -1412,13 +1456,13 @@ static void send_eject(const LLUUID& avatar_id, bool ban) msg->nextBlock("Data"); msg->addUUID("TargetID", avatar_id); msg->addU32("Flags", flags); - msg->sendReliable( avatarp->getRegion()->getHost()); + msg->sendReliable(avatarp->getRegion()->getHost()); } } static void send_estate_message( const char* request, - const LLUUID &target) + const LLUUID& target) { LLMessageSystem* msg = gMessageSystem; @@ -1449,21 +1493,21 @@ static void send_estate_message( msg->sendReliable(gAgent.getRegion()->getHost()); } -static void cmd_freeze(const LLUUID& avatar, const std::string &name) { send_freeze(avatar, true); } -static void cmd_unfreeze(const LLUUID& avatar, const std::string &name) { send_freeze(avatar, false); } -static void cmd_eject(const LLUUID& avatar, const std::string &name) { send_eject(avatar, false); } -static void cmd_ban(const LLUUID& avatar, const std::string &name) { send_eject(avatar, true); } -static void cmd_profile(const LLUUID& avatar, const std::string &name) { LLFloaterAvatarInfo::showFromDirectory(avatar); } -static void cmd_estate_eject(const LLUUID &avatar, const std::string &name){ send_estate_message("teleporthomeuser", avatar); } +static void cmd_freeze(const LLUUID& avatar, const std::string& name) { send_freeze(avatar, true); } +static void cmd_unfreeze(const LLUUID& avatar, const std::string& name) { send_freeze(avatar, false); } +static void cmd_eject(const LLUUID& avatar, const std::string& name) { send_eject(avatar, false); } +static void cmd_ban(const LLUUID& avatar, const std::string& name) { send_eject(avatar, true); } +static void cmd_profile(const LLUUID& avatar, const std::string& name) { LLFloaterAvatarInfo::showFromDirectory(avatar); } +static void cmd_estate_eject(const LLUUID& avatar, const std::string& name){ send_estate_message("teleporthomeuser", avatar); } -void LLFloaterAvatarList::doCommand(void (*func)(const LLUUID &avatar, const std::string &name)) +void LLFloaterAvatarList::doCommand(void (*func)(const LLUUID& avatar, const std::string& name)) { LLDynamicArray ids = mAvatarList->getSelectedIDs(); for (LLDynamicArray::iterator itr = ids.begin(); itr != ids.end(); ++itr) { LLUUID avid = *itr; - LLAvatarListEntry *entry = getAvatarEntry(avid); + LLAvatarListEntry* entry = getAvatarEntry(avid); if (entry != NULL) { llinfos << "Executing command on " << entry->getName() << llendl; @@ -1480,7 +1524,7 @@ std::string LLFloaterAvatarList::getSelectedNames(const std::string& separator) for (LLDynamicArray::iterator itr = ids.begin(); itr != ids.end(); ++itr) { LLUUID avid = *itr; - LLAvatarListEntry *entry = getAvatarEntry(avid); + LLAvatarListEntry* entry = getAvatarEntry(avid); if (entry != NULL) { if (!ret.empty()) ret += separator; @@ -1494,7 +1538,7 @@ std::string LLFloaterAvatarList::getSelectedNames(const std::string& separator) std::string LLFloaterAvatarList::getSelectedName() { LLUUID id = getSelectedID(); - LLAvatarListEntry *entry = getAvatarEntry(id); + LLAvatarListEntry* entry = getAvatarEntry(id); if (entry) { return entry->getName(); @@ -1504,7 +1548,7 @@ std::string LLFloaterAvatarList::getSelectedName() LLUUID LLFloaterAvatarList::getSelectedID() { - LLScrollListItem *item = mAvatarList->getFirstSelected(); + LLScrollListItem* item = mAvatarList->getFirstSelected(); if (item) return item->getUUID(); return LLUUID::null; } @@ -1516,11 +1560,11 @@ void LLFloaterAvatarList::callbackFreeze(const LLSD& notification, const LLSD& r if (option == 0) { - getInstance()->doCommand( cmd_freeze ); + getInstance()->doCommand(cmd_freeze); } else if (option == 1) { - getInstance()->doCommand( cmd_unfreeze ); + getInstance()->doCommand(cmd_unfreeze); } } @@ -1531,11 +1575,11 @@ void LLFloaterAvatarList::callbackEject(const LLSD& notification, const LLSD& re if (option == 0) { - getInstance()->doCommand( cmd_eject ); + getInstance()->doCommand(cmd_eject); } else if (option == 1) { - getInstance()->doCommand( cmd_ban ); + getInstance()->doCommand(cmd_ban); } } @@ -1546,16 +1590,16 @@ void LLFloaterAvatarList::callbackEjectFromEstate(const LLSD& notification, cons if (option == 0) { - getInstance()->doCommand( cmd_estate_eject ); + getInstance()->doCommand(cmd_estate_eject); } } //static -void LLFloaterAvatarList::callbackIdle(void *userdata) +void LLFloaterAvatarList::callbackIdle(void* userdata) { if (instanceExists()) { - // Do not update at every frame: this would be insane ! + // Do not update at every frame: this would be insane! if (gFrameCount % getInstance()->mUpdateRate == 0) { getInstance()->updateAvatarList(); @@ -1563,7 +1607,7 @@ void LLFloaterAvatarList::callbackIdle(void *userdata) } } -void LLFloaterAvatarList::onClickFreeze(void *userdata) +void LLFloaterAvatarList::onClickFreeze(void* userdata) { LLSD args; LLSD payload; @@ -1572,7 +1616,7 @@ void LLFloaterAvatarList::onClickFreeze(void *userdata) } //static -void LLFloaterAvatarList::onClickEject(void *userdata) +void LLFloaterAvatarList::onClickEject(void* userdata) { LLSD args; LLSD payload; @@ -1581,9 +1625,9 @@ void LLFloaterAvatarList::onClickEject(void *userdata) } //static -void LLFloaterAvatarList::onClickMute(void *userdata) +void LLFloaterAvatarList::onClickMute(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; LLDynamicArray ids = self->mAvatarList->getSelectedIDs(); if (ids.size() > 0) @@ -1611,7 +1655,7 @@ void LLFloaterAvatarList::onClickMute(void *userdata) } //static -void LLFloaterAvatarList::onClickEjectFromEstate(void *userdata) +void LLFloaterAvatarList::onClickEjectFromEstate(void* userdata) { LLSD args; LLSD payload; @@ -1620,14 +1664,14 @@ void LLFloaterAvatarList::onClickEjectFromEstate(void *userdata) } //static -void LLFloaterAvatarList::onClickAR(void *userdata) +void LLFloaterAvatarList::onClickAR(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (item) { LLUUID agent_id = item->getUUID(); - LLAvatarListEntry *entry = self->getAvatarEntry(agent_id); + LLAvatarListEntry* entry = self->getAvatarEntry(agent_id); if (entry) { LLFloaterReporter::showFromObject(entry->getID()); @@ -1638,19 +1682,19 @@ void LLFloaterAvatarList::onClickAR(void *userdata) // static void LLFloaterAvatarList::onClickProfile(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; self->doCommand(cmd_profile); } //static void LLFloaterAvatarList::onClickTeleport(void* userdata) { - LLFloaterAvatarList *self = (LLFloaterAvatarList*)userdata; - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); + LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (item) { LLUUID agent_id = item->getUUID(); - LLAvatarListEntry *entry = self->getAvatarEntry(agent_id); + LLAvatarListEntry* entry = self->getAvatarEntry(agent_id); if (entry) { // llinfos << "Trying to teleport to " << entry->getName() << " at " << entry->getPosition() << llendl; @@ -1663,11 +1707,11 @@ void LLFloaterAvatarList::onSelectName(LLUICtrl*, void* userdata) { LLFloaterAvatarList* self = (LLFloaterAvatarList*)userdata; - LLScrollListItem *item = self->mAvatarList->getFirstSelected(); + LLScrollListItem* item = self->mAvatarList->getFirstSelected(); if (item) { LLUUID agent_id = item->getUUID(); - LLAvatarListEntry *entry = self->getAvatarEntry(agent_id); + LLAvatarListEntry* entry = self->getAvatarEntry(agent_id); if (entry) { BOOL enabled = entry->isDrawn(); diff --git a/indra/newview/llfloateravatarlist.h b/indra/newview/llfloateravatarlist.h index 44bc3df84..6051a8b88 100644 --- a/indra/newview/llfloateravatarlist.h +++ b/indra/newview/llfloateravatarlist.h @@ -171,6 +171,8 @@ private: public: ~LLFloaterAvatarList(); + virtual BOOL handleKeyHere(KEY key, MASK mask); + /*virtual*/ void onClose(bool app_quitting); /*virtual*/ void onOpen(); /*virtual*/ BOOL postBuild(); diff --git a/indra/newview/llfloaterland.cpp b/indra/newview/llfloaterland.cpp index 9f9e2d308..20f60e920 100644 --- a/indra/newview/llfloaterland.cpp +++ b/indra/newview/llfloaterland.cpp @@ -80,6 +80,7 @@ #include "llviewercontrol.h" #include "roles_constants.h" #include "llworld.h" +#include "lltrans.h" #include "hippogridmanager.h" @@ -1498,7 +1499,7 @@ void LLPanelLandObjects::onClickRefresh(void* userdata) // ready the list for results self->mOwnerList->deleteAllItems(); - self->mOwnerList->addCommentText(std::string("Searching...")); // *TODO: Translate + self->mOwnerList->addCommentText(LLTrans::getString("Searching")); self->mOwnerList->setEnabled(FALSE); self->mFirstReply = TRUE; @@ -1612,7 +1613,7 @@ void LLPanelLandObjects::processParcelObjectOwnersReply(LLMessageSystem *msg, vo // check for no results if (0 == self->mOwnerList->getItemCount()) { - self->mOwnerList->addCommentText(std::string("None found.")); // *TODO: Translate + self->mOwnerList->addCommentText(LLTrans::getString("None_found")); } else { @@ -2446,7 +2447,6 @@ void LLPanelLandAccess::refresh() childSetToolTipArg("AccessList", "[LISTED]", llformat("%d",count)); childSetToolTipArg("AccessList", "[MAX]", llformat("%d",PARCEL_MAX_ACCESS_LIST)); - // *TODO: Translate for (access_map_const_iterator cit = parcel->mAccessList.begin(); cit != parcel->mAccessList.end(); ++cit) { @@ -2460,19 +2460,23 @@ void LLPanelLandAccess::refresh() suffix.assign(" ("); if (seconds >= 120) { - std::string buf = llformat("%d minutes", (seconds/60)); + std::string buf = llformat("%d ", (seconds/60)) + getString("minutes"); suffix.append(buf); } else if (seconds >= 60) { - suffix.append("1 minute"); + suffix.append(getString("1_minute")); + } + else if (seconds == 1) + { + suffix.append(getString("1_second")); } else { - std::string buf = llformat("%d seconds", seconds); + std::string buf = llformat("%d ", seconds) + getString("seconds"); suffix.append(buf); } - suffix.append(" remaining)"); + suffix.append(" " + getString("remaining") + ")"); } if (mListAccess) mListAccess->addNameItem(entry.mID, ADD_SORTED, TRUE, suffix); @@ -2499,19 +2503,23 @@ void LLPanelLandAccess::refresh() suffix.assign(" ("); if (seconds >= 120) { - std::string buf = llformat("%d minutes", (seconds/60)); + std::string buf = llformat("%d ", (seconds/60)) + getString("minutes"); suffix.append(buf); } else if (seconds >= 60) { - suffix.append("1 minute"); + suffix.append(getString("1_minute")); + } + else if (seconds == 1) + { + suffix.append(getString("1_second")); } else { - std::string buf = llformat("%d seconds", seconds); + std::string buf = llformat("%d ", seconds) + getString("seconds"); suffix.append(buf); } - suffix.append(" remaining)"); + suffix.append(" " + getString("remaining") + ")"); } mListBanned->addNameItem(entry.mID, ADD_SORTED, TRUE, suffix); } diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index f7ba56bf8..1fc54068c 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -959,11 +959,16 @@ void LLFolderView::draw() static LLCachedControl sSearchStatusColor(gColors, "InventorySearchStatusColor", LLColor4::white ); if (LLInventoryModelBackgroundFetch::instance().folderFetchActive() || mCompletedFilterGeneration < mFilter->getMinRequiredGeneration()) { - mStatusText = std::string("Searching..."); // *TODO:translate + mStatusText = LLTrans::getString("Searching"); } else { - mStatusText = std::string("No matching items found in inventory."); // *TODO:translate + // if(getFilter()) + // { + // LLStringUtil::format_map_t args; + // args["[SEARCH_TERM]"] = LLURI::escape(getFilter()->getFilterSubStringOrig()); + mStatusText = LLTrans::getString("InventoryNoMatchingItems"); //, args); + // } } mStatusTextBox->setWrappedText(mStatusText); mStatusTextBox->setVisible( TRUE ); diff --git a/indra/newview/llgroupnotify.cpp b/indra/newview/llgroupnotify.cpp index 24ff0408e..46f368300 100644 --- a/indra/newview/llgroupnotify.cpp +++ b/indra/newview/llgroupnotify.cpp @@ -48,6 +48,7 @@ #include "llfloatergroupinfo.h" #include "llinventoryicon.h" #include "llinventory.h" +#include "lltrans.h" #include "llglheaders.h" #include "llagent.h" @@ -143,14 +144,14 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, }; // Title - addChild(new NoticeText(std::string("title"),LLRect(x,y,RIGHT - HPAD,y - LINE_HEIGHT),std::string("Group Notice"),LLFontGL::getFontSansSerifHuge())); + addChild(new NoticeText(std::string("title"),LLRect(x,y,RIGHT - HPAD,y - LINE_HEIGHT),LLTrans::getString("GroupNotifyGroupNotice"),LLFontGL::getFontSansSerifHuge())); y -= llfloor(1.5f*LINE_HEIGHT); x += HPAD + HPAD + ICON_WIDTH; std::stringstream from; - from << "Sent by " << from_name << ", " << group_name; + from << LLTrans::getString("GroupNotifySentBy") << " " + from_name << LLTrans::getString(",") + " " << group_name; addChild(new NoticeText(std::string("group"),LLRect(x,y,RIGHT - HPAD,y - LINE_HEIGHT),from.str(),LLFontGL::getFontSansSerif())); @@ -216,7 +217,7 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, if (mHasInventory) { - addChild(new NoticeText(std::string("subjecttitle"),LLRect(x,y,x + LABEL_WIDTH,y - LINE_HEIGHT),std::string("Attached: "),LLFontGL::getFontSansSerif())); + addChild(new NoticeText(std::string("subjecttitle"),LLRect(x,y,x + LABEL_WIDTH,y - LINE_HEIGHT),LLTrans::getString("GroupNotifyAttached"),LLFontGL::getFontSansSerif())); LLUIImagePtr item_icon = LLInventoryIcon::getIcon(mInventoryOffer->mType, LLInventoryType::IT_TEXTURE, @@ -244,7 +245,7 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, } LLButton* btn; - btn = new LLButton(std::string("next"), + btn = new LLButton(LLTrans::getString("next"), LLRect(getRect().getWidth()-26, BOTTOM_PAD + 20, getRect().getWidth()-2, BOTTOM_PAD), std::string("notify_next.png"), std::string("notify_next.png"), @@ -252,7 +253,7 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, onClickNext, this, LLFontGL::getFontSansSerif()); - btn->setToolTip(std::string("Next")); // *TODO: Translate + btn->setToolTip(LLTrans::getString("next")); btn->setScaleImage(TRUE); addChild(btn); mNextBtn = btn; @@ -267,7 +268,7 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, btn_width, BTN_HEIGHT); - btn = new LLButton(std::string("OK"), btn_rect, LLStringUtil::null, onClickOk, this); + btn = new LLButton(LLTrans::getString("ok"), btn_rect, LLStringUtil::null, onClickOk, this); addChild(btn, -1); setDefaultBtn(btn); @@ -279,8 +280,8 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, wide_btn_width, BTN_HEIGHT); - btn = new LLButton(std::string("Group Notices"), btn_rect, LLStringUtil::null, onClickGroupInfo, this); - btn->setToolTip(std::string("View past notices or opt-out of receiving these messages here.")); // TODO: Translate + btn = new LLButton(LLTrans::getString("GroupNotifyGroupNotices"), btn_rect, LLStringUtil::null, onClickGroupInfo, this); + btn->setToolTip(LLTrans::getString("GroupNotifyViewPastNotices")); addChild(btn, -1); if (mHasInventory) @@ -295,11 +296,11 @@ LLGroupNotifyBox::LLGroupNotifyBox(const std::string& subject, std::string btn_lbl(""); if(is_openable(mInventoryOffer->mType)) { - btn_lbl = "Open Attachment"; + btn_lbl = LLTrans::getString("GroupNotifyOpenAttachment"); } else { - btn_lbl = "Save Attachment"; + btn_lbl = LLTrans::getString("GroupNotifySaveAttachment"); } mSaveInventoryBtn = new LLButton(btn_lbl, btn_rect, LLStringUtil::null, onClickSaveInventory, this); mSaveInventoryBtn->setVisible(mHasInventory); diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 42a4f5c46..429b68ac0 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -665,133 +665,156 @@ const std::string& LLInventoryFilter::getFilterText() if (isFilterObjectTypesWith(LLInventoryType::IT_ANIMATION)) { - filtered_types += " Animations,"; + //filtered_types += " Animations,"; + filtered_types += LLTrans::getString("Animations"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Animations,"; + //not_filtered_types += " Animations,"; + not_filtered_types += LLTrans::getString("Animations"); + filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_CALLINGCARD)) { - filtered_types += " Calling Cards,"; + //filtered_types += " Calling Cards,"; + filtered_types += LLTrans::getString("Calling Cards"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Calling Cards,"; + //not_filtered_types += " Calling Cards,"; + not_filtered_types += LLTrans::getString("Calling Cards"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_WEARABLE)) { - filtered_types += " Clothing,"; + //filtered_types += " Clothing,"; + filtered_types += LLTrans::getString("Clothing"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Clothing,"; + //not_filtered_types += " Clothing,"; + not_filtered_types += LLTrans::getString("Clothing"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_GESTURE)) { - filtered_types += " Gestures,"; + //filtered_types += " Gestures,"; + filtered_types += LLTrans::getString("Gestures"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Gestures,"; + //not_filtered_types += " Gestures,"; + not_filtered_types += LLTrans::getString("Gestures"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_LANDMARK)) { - filtered_types += " Landmarks,"; + //filtered_types += " Landmarks,"; + filtered_types += LLTrans::getString("Landmarks"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Landmarks,"; + //not_filtered_types += " Landmarks,"; + not_filtered_types += LLTrans::getString("Landmarks"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_NOTECARD)) { - filtered_types += " Notecards,"; + //filtered_types += " Notecards,"; + filtered_types += LLTrans::getString("Notecards"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Notecards,"; + //not_filtered_types += " Notecards,"; + not_filtered_types += LLTrans::getString("Notecards"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_OBJECT) && isFilterObjectTypesWith(LLInventoryType::IT_ATTACHMENT)) { - filtered_types += " Objects,"; + //filtered_types += " Objects,"; + filtered_types += LLTrans::getString("Objects"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Objects,"; + //not_filtered_types += " Objects,"; + not_filtered_types += LLTrans::getString("Objects"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_LSL)) { - filtered_types += " Scripts,"; + //filtered_types += " Scripts,"; + filtered_types += LLTrans::getString("Scripts"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Scripts,"; + //not_filtered_types += " Scripts,"; + not_filtered_types += LLTrans::getString("Scripts"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_SOUND)) { - filtered_types += " Sounds,"; + //filtered_types += " Sounds,"; + filtered_types += LLTrans::getString("Sounds"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Sounds,"; + //not_filtered_types += " Sounds,"; + not_filtered_types += LLTrans::getString("Sounds"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_TEXTURE)) { - filtered_types += " Textures,"; + //filtered_types += " Textures,"; + filtered_types += LLTrans::getString("Textures"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Textures,"; + //not_filtered_types += " Textures,"; + not_filtered_types += LLTrans::getString("Textures"); filtered_by_all_types = FALSE; } if (isFilterObjectTypesWith(LLInventoryType::IT_SNAPSHOT)) { - filtered_types += " Snapshots,"; + //filtered_types += " Snapshots,"; + filtered_types += LLTrans::getString("Snapshots"); filtered_by_type = TRUE; num_filter_types++; } else { - not_filtered_types += " Snapshots,"; + //not_filtered_types += " Snapshots,"; + not_filtered_types += LLTrans::getString("Snapshots"); filtered_by_all_types = FALSE; } @@ -806,7 +829,8 @@ const std::string& LLInventoryFilter::getFilterText() } else { - mFilterText += "No "; + //mFilterText += "No "; + mFilterText += LLTrans::getString("No Filters"); mFilterText += not_filtered_types; } // remove the ',' at the end @@ -815,12 +839,14 @@ const std::string& LLInventoryFilter::getFilterText() if (isSinceLogoff()) { - mFilterText += " - Since Logoff"; + //mFilterText += " - Since Logoff"; + mFilterText += LLTrans::getString("Since Logoff"); } if (getFilterWorn()) { - mFilterText += " - Worn"; + //mFilterText += " - Worn"; + mFilterText += LLTrans::getString("Worn"); } return mFilterText; diff --git a/indra/newview/llmaniprotate.cpp b/indra/newview/llmaniprotate.cpp index 2940b764f..cd0118ee9 100644 --- a/indra/newview/llmaniprotate.cpp +++ b/indra/newview/llmaniprotate.cpp @@ -65,6 +65,7 @@ #include "pipeline.h" #include "lldrawable.h" #include "llglheaders.h" +#include "lltrans.h" const F32 RADIUS_PIXELS = 100.f; // size in screen space const F32 SQ_RADIUS = RADIUS_PIXELS * RADIUS_PIXELS; @@ -152,6 +153,7 @@ void LLManipRotate::render() gGL.pushMatrix(); { + // are we in the middle of a constrained drag? if (mManipPart >= LL_ROT_X && mManipPart <= LL_ROT_Z) { @@ -292,6 +294,7 @@ void LLManipRotate::render() // First pass: centers. Second pass: sides. for( S32 i=0; i<2; i++ ) { + gGL.pushMatrix(); { if (mHighlightedPart == LL_ROT_Z) @@ -350,6 +353,7 @@ void LLManipRotate::render() { mManipulatorScales = lerp(mManipulatorScales, LLVector4(1.f, 1.f, 1.f, SELECTED_MANIPULATOR_SCALE), LLCriticalDamp::getInterpolant(MANIPULATOR_SCALE_HALF_LIFE)); } + } } @@ -363,6 +367,7 @@ void LLManipRotate::render() gGL.popMatrix(); gGL.popMatrix(); + LLVector3 euler_angles; LLQuaternion object_rot = first_object->getRotationEdit(); object_rot.getEulerAngles(&(euler_angles.mV[VX]), &(euler_angles.mV[VY]), &(euler_angles.mV[VZ])); @@ -922,7 +927,6 @@ void LLManipRotate::renderSnapGuides() } gGL.end(); - // *TODO: Translate //RN: text rendering does own shadow pass, so only render once if (pass == 1 && render_text && i % 16 == 0) { @@ -930,32 +934,32 @@ void LLManipRotate::renderSnapGuides() { if (i == 0) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Forward") : std::string("East"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Forward" : "Direction_East"), LLColor4::white); } else if (i == 16) { if (constraint_axis.mV[VZ] > 0.f) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Left") : std::string("North"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Left" : "Direction_North"), LLColor4::white); } else { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Right") : std::string("South"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Right" : "Direction_South"), LLColor4::white); } } else if (i == 32) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Back") : std::string("West"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Back" : "Direction_West"), LLColor4::white); } else { if (constraint_axis.mV[VZ] > 0.f) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Right") : std::string("South"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Right" : "Direction_South"), LLColor4::white); } else { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Left") : std::string("North"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Left" : "Direction_North"), LLColor4::white); } } } @@ -963,32 +967,32 @@ void LLManipRotate::renderSnapGuides() { if (i == 0) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Left") : std::string("North"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Left" : "Direction_North"), LLColor4::white); } else if (i == 16) { if (constraint_axis.mV[VX] > 0.f) { - renderTickText(text_point, std::string("Up"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Up"), LLColor4::white); } else { - renderTickText(text_point, std::string("Down"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Down"), LLColor4::white); } } else if (i == 32) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Right") : std::string("South"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Right" : "Direction_South"), LLColor4::white); } else { if (constraint_axis.mV[VX] > 0.f) { - renderTickText(text_point, std::string("Down"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Down"), LLColor4::white); } else { - renderTickText(text_point, std::string("Up"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Up"), LLColor4::white); } } } @@ -996,32 +1000,32 @@ void LLManipRotate::renderSnapGuides() { if (i == 0) { - renderTickText(text_point, std::string("Up"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Up"), LLColor4::white); } else if (i == 16) { if (constraint_axis.mV[VY] > 0.f) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Forward") : std::string("East"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Forward" : "Direction_East"), LLColor4::white); } else { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Back") : std::string("West"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Back" : "Direction_West"), LLColor4::white); } } else if (i == 32) { - renderTickText(text_point, std::string("Down"), LLColor4::white); + renderTickText(text_point, LLTrans::getString("Direction_Down"), LLColor4::white); } else { if (constraint_axis.mV[VY] > 0.f) { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Back") : std::string("West"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Back" : "Direction_West"), LLColor4::white); } else { - renderTickText(text_point, mObjectSelection->isAttachment() ? std::string("Forward") : std::string("East"), LLColor4::white); + renderTickText(text_point, LLTrans::getString(mObjectSelection->isAttachment() ? "Direction_Forward" : "Direction_East"), LLColor4::white); } } } diff --git a/indra/newview/llnotify.cpp b/indra/newview/llnotify.cpp index c942aee44..8b7f52afd 100644 --- a/indra/newview/llnotify.cpp +++ b/indra/newview/llnotify.cpp @@ -327,7 +327,7 @@ LLNotifyBox::LLNotifyBox(LLNotificationPtr notification, this, sFont); btn->setScaleImage(TRUE); - btn->setToolTip(std::string("Next")); // *TODO: Translate + btn->setToolTip(LLTrans::getString("next")); addChild(btn); mNextBtn = btn; diff --git a/indra/newview/llpanelavatar.cpp b/indra/newview/llpanelavatar.cpp index 6d21cab60..14709805e 100644 --- a/indra/newview/llpanelavatar.cpp +++ b/indra/newview/llpanelavatar.cpp @@ -320,7 +320,7 @@ void LLPanelAvatarSecondLife::processProperties(void* data, EAvatarProcessorType // } if (0 == pAvatarGroups->group_list.size()) { - group_list->addCommentText(std::string("None")); // *TODO: Translate + group_list->addCommentText(getString("None")); } for(LLAvatarGroups::group_list_t::const_iterator it = pAvatarGroups->group_list.begin(); @@ -571,11 +571,6 @@ BOOL LLPanelAvatarSecondLife::postBuild(void) childSetVisible("online_yes",FALSE); - // These are cruft but may still exist in some xml files - // TODO: remove the following 2 lines once translators grab these changes - childSetVisible("online_unknown",FALSE); - childSetVisible("online_no",FALSE); - childSetAction("Find on Map", LLPanelAvatar::onClickTrack, getPanelAvatar()); childSetAction("Instant Message...", LLPanelAvatar::onClickIM, getPanelAvatar()); childSetAction("GroupInvite_Button", LLPanelAvatar::onClickGroupInvite, getPanelAvatar()); diff --git a/indra/newview/llpaneldirbrowser.cpp b/indra/newview/llpaneldirbrowser.cpp index a306d4730..4680780da 100644 --- a/indra/newview/llpaneldirbrowser.cpp +++ b/indra/newview/llpaneldirbrowser.cpp @@ -212,7 +212,7 @@ void LLPanelDirBrowser::updateResultCount() // add none found response if (list->getItemCount() == 0) { - list->addCommentText(std::string("None found.")); // *TODO: Translate + list->addCommentText(LLTrans::getString("NoneFound")); list->operateOnAll(LLCtrlListInterface::OP_DESELECT); } } @@ -1222,7 +1222,7 @@ void LLPanelDirBrowser::setupNewSearch() // ready the list for results list->operateOnAll(LLCtrlListInterface::OP_DELETE); - list->addCommentText(std::string("Searching...")); // *TODO: Translate + list->addCommentText(LLTrans::getString("Searching")); childDisable("results"); mResultsReceived = 0; diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 31cb8bcc8..c78f3ce21 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -707,14 +707,13 @@ void LLTaskInvFVBridge::buildContextMenu(LLMenuGL& menu, U32 flags) return; } - // *TODO: Translate if(gAgent.allowOperation(PERM_OWNER, item->getPermissions(), GP_OBJECT_MANIPULATE) && item->getSaleInfo().isForSale()) { items.push_back(std::string("Task Buy")); - std::string label("Buy"); + std::string label= LLTrans::getString("Buy"); // Check the price of the item. S32 price = getPrice(); if (-1 == price) @@ -1072,13 +1071,12 @@ void LLTaskSoundBridge::buildContextMenu(LLMenuGL& menu, U32 flags) std::vector items; std::vector disabled_items; - // *TODO: Translate if(item->getPermissions().getOwner() != gAgent.getID() && item->getSaleInfo().isForSale()) { items.push_back(std::string("Task Buy")); - std::string label("Buy"); + std::string label= LLTrans::getString("Buy"); // Check the price of the item. S32 price = getPrice(); if (-1 == price) @@ -1905,24 +1903,23 @@ void LLPanelObjectInventory::draw() if(mIsInventoryEmpty) { - // *TODO: Translate if((LLUUID::null != mTaskUUID) && (!mHaveInventory)) { - LLFontGL::getFontSansSerif()->renderUTF8(std::string("Loading contents..."), 0, - (S32)(getRect().getWidth() * 0.5f), - 10, - LLColor4( 1, 1, 1, 1 ), - LLFontGL::HCENTER, - LLFontGL::BOTTOM); + LLFontGL::getFontSansSerif()->renderUTF8(LLTrans::getString("LoadingContents"), 0, + (S32)(getRect().getWidth() * 0.5f), + 10, + LLColor4( 1, 1, 1, 1 ), + LLFontGL::HCENTER, + LLFontGL::BOTTOM); } else if(mHaveInventory) { - LLFontGL::getFontSansSerif()->renderUTF8(std::string("No contents"), 0, - (S32)(getRect().getWidth() * 0.5f), - 10, - LLColor4( 1, 1, 1, 1 ), - LLFontGL::HCENTER, - LLFontGL::BOTTOM); + LLFontGL::getFontSansSerif()->renderUTF8(LLTrans::getString("NoContents"), 0, + (S32)(getRect().getWidth() * 0.5f), + 10, + LLColor4( 1, 1, 1, 1 ), + LLFontGL::HCENTER, + LLFontGL::BOTTOM); } } } diff --git a/indra/newview/llpreviewscript.cpp b/indra/newview/llpreviewscript.cpp index c7850b9c9..baf963d68 100644 --- a/indra/newview/llpreviewscript.cpp +++ b/indra/newview/llpreviewscript.cpp @@ -1290,9 +1290,8 @@ LLPreviewLSL::LLPreviewLSL(const std::string& name, const LLRect& rect, void LLPreviewLSL::callbackLSLCompileSucceeded() { llinfos << "LSL Bytecode saved" << llendl; - // *TODO: Translate - mScriptEd->mErrorList->addCommentText(std::string("Compile successful!")); - mScriptEd->mErrorList->addCommentText(std::string("Save complete.")); + mScriptEd->mErrorList->addCommentText(LLTrans::getString("CompileSuccessful")); + mScriptEd->mErrorList->addCommentText(LLTrans::getString("SaveComplete")); closeIfNeeded(); } @@ -1890,9 +1889,8 @@ void LLLiveLSLEditor::callbackLSLCompileSucceeded(const LLUUID& task_id, bool is_script_running) { lldebugs << "LSL Bytecode saved" << llendl; - // *TODO: Translate - mScriptEd->mErrorList->addCommentText(std::string("Compile successful!")); - mScriptEd->mErrorList->addCommentText(std::string("Save complete.")); + mScriptEd->mErrorList->addCommentText(LLTrans::getString("CompileSuccessful")); + mScriptEd->mErrorList->addCommentText(LLTrans::getString("SaveComplete")); closeIfNeeded(); } @@ -2244,8 +2242,7 @@ void LLLiveLSLEditor::draw() { // HACK: Display this information in the title bar. // Really ought to put in main window. - // *TODO: Translate - setTitle(std::string("Script (object out of range)")); + setTitle(LLTrans::getString("ObjectOutOfRange")); runningCheckbox->setEnabled(FALSE); // object may have fallen out of range. mHaveRunningInfo = FALSE; @@ -2468,8 +2465,7 @@ void LLLiveLSLEditor::uploadAssetLegacy(const std::string& filename, else { llinfos << "Compile worked!" << llendl; - // *TODO: Translate - mScriptEd->mErrorList->addCommentText(std::string("Compile successful, saving...")); + mScriptEd->mErrorList->addCommentText(LLTrans::getString("CompileSuccessfulSaving")); if(gAssetStorage) { llinfos << "LLLiveLSLEditor::saveAsset " @@ -2543,8 +2539,7 @@ void LLLiveLSLEditor::onSaveBytecodeComplete(const LLUUID& asset_uuid, void* use if(self) { // Tell the user that the compile worked. - // *TODO: Translate - self->mScriptEd->mErrorList->addCommentText(std::string("Save complete.")); + self->mScriptEd->mErrorList->addCommentText(LLTrans::getString("SaveComplete")); // close the window if this completes both uploads self->getWindow()->decBusyCount(); self->mPendingUploads--; diff --git a/indra/newview/llscrollingpanelparam.cpp b/indra/newview/llscrollingpanelparam.cpp index 88127e68f..7afcf82c4 100644 --- a/indra/newview/llscrollingpanelparam.cpp +++ b/indra/newview/llscrollingpanelparam.cpp @@ -77,9 +77,8 @@ LLScrollingPanelParam::LLScrollingPanelParam( const std::string& name, mHintMin->setAllowsUpdates( FALSE ); mHintMax->setAllowsUpdates( FALSE ); - // *TODO::translate - std::string min_name = param->getMinDisplayName(); - std::string max_name = param->getMaxDisplayName(); + std::string min_name = LLTrans::getString(param->getMinDisplayName()); + std::string max_name = LLTrans::getString(param->getMaxDisplayName()); childSetValue("min param text", min_name); childSetValue("max param text", max_name); mLess = getChild("less"); diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index e39f3b7df..990a7228a 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -1099,7 +1099,7 @@ LLTextureCtrl::LLTextureCtrl( LLRect( 0, image_middle + line_height / 2, getRect().getWidth(), image_middle - line_height / 2 ), - std::string("Multiple"), + LLTrans::getString("multiple_textures"), LLFontGL::getFontSansSerifSmall() ); mTentativeLabel->setHAlign( LLFontGL::HCENTER ); mTentativeLabel->setFollowsAll(); diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index 7d9f0a136..f2a9a7138 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -40,7 +40,6 @@ #include "llagent.h" #include "llagentcamera.h" -#include "llviewercontrol.h" #include "llfocusmgr.h" #include "llfirstuse.h" #include "llfloateravatarinfo.h" @@ -56,8 +55,10 @@ #include "lltoolgrab.h" #include "lltoolmgr.h" #include "lltoolselect.h" +#include "lltrans.h" #include "llviewercamera.h" #include "llviewerparcelmedia.h" +#include "llviewercontrol.h" #include "llviewermenu.h" #include "llviewerobjectlist.h" #include "llviewerobject.h" @@ -65,8 +66,8 @@ #include "llviewerwindow.h" #include "llwindow.h" #include "llviewermedia.h" -#include "llviewermediafocus.h" #include "llvoavatarself.h" +#include "llviewermediafocus.h" #include "llworld.h" #include "llui.h" #include "llweb.h" @@ -401,12 +402,12 @@ BOOL LLToolPie::pickAndShowMenu(BOOL always_show) std::string name = avatar->getFullname(); if (LLMuteList::getInstance()->isMuted(avatar->getID(), name)) { - gMenuHolder->childSetText("Avatar Mute", std::string("Unmute")); // *TODO:Translate + gMenuHolder->childSetText("Avatar Mute", LLTrans::getString("UnmuteAvatar")); //gMutePieMenu->setLabel("Unmute"); } else { - gMenuHolder->childSetText("Avatar Mute", std::string("Mute")); // *TODO:Translate + gMenuHolder->childSetText("Avatar Mute", LLTrans::getString("MuteAvatar")); //gMutePieMenu->setLabel("Mute"); } @@ -451,12 +452,12 @@ BOOL LLToolPie::pickAndShowMenu(BOOL always_show) } if (LLMuteList::getInstance()->isMuted(object->getID(), name)) { - gMenuHolder->childSetText("Object Mute", std::string("Unmute")); // *TODO:Translate + gMenuHolder->childSetText("Object Mute", LLTrans::getString("UnmuteObject")); //gMuteObjectPieMenu->setLabel("Unmute"); } else { - gMenuHolder->childSetText("Object Mute", std::string("Mute")); // *TODO:Translate + gMenuHolder->childSetText("Object Mute", LLTrans::getString("MuteObject2")); //gMuteObjectPieMenu->setLabel("Mute"); } diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp index 8b8c8b703..64f0b24ba 100644 --- a/indra/newview/llviewerdisplay.cpp +++ b/indra/newview/llviewerdisplay.cpp @@ -440,7 +440,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo case LLAgent::TELEPORT_START_ARRIVAL: // Transition to ARRIVING. Viewer has received avatar update, etc., from destination simulator gTeleportArrivalTimer.reset(); - gViewerWindow->setProgressCancelButtonVisible(FALSE, std::string("Cancel")); //TODO: Translate + gViewerWindow->setProgressCancelButtonVisible(FALSE, LLTrans::getString("Cancel")); gViewerWindow->setProgressPercent(75.f); gAgent.setTeleportState( LLAgent::TELEPORT_ARRIVING ); gAgent.setTeleportMessage( @@ -459,7 +459,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot, boo LLFirstUse::useTeleport(); gAgent.setTeleportState( LLAgent::TELEPORT_NONE ); } - gViewerWindow->setProgressCancelButtonVisible(FALSE, std::string("Cancel")); //TODO: Translate + gViewerWindow->setProgressCancelButtonVisible(FALSE, LLTrans::getString("Cancel")); gViewerWindow->setProgressPercent( arrival_fraction * 25.f + 75.f); gViewerWindow->setProgressString(message); } diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp index 63a9e002a..bb1ad75a4 100644 --- a/indra/newview/llviewermenufile.cpp +++ b/indra/newview/llviewermenufile.cpp @@ -46,6 +46,7 @@ #include "llsdserialize.h" #include "llsdutil.h" #include "llstring.h" +#include "lltrans.h" #include "lltransactiontypes.h" #include "lluictrlfactory.h" #include "lluuid.h" @@ -94,6 +95,7 @@ #include "lllocalinventory.h" // +#include "hippogridmanager.h" #include "importtracker.h" using namespace LLOldEvents; @@ -855,8 +857,7 @@ void upload_new_resource(const std::string& src_filename, std::string name, else { // Unknown extension - // *TODO: Translate? - error_message = llformat("Unknown file extension .%s\nExpected .wav, .tga, .bmp, .jpg, .jpeg, or .bvh", exten.c_str()); + error_message = llformat(LLTrans::getString("UnknownFileExtension").c_str(), exten.c_str()); error = TRUE;; } @@ -1021,10 +1022,11 @@ void upload_done_callback(const LLUUID& uuid, void* user_data, S32 result, LLExt if(!(can_afford_transaction(expected_upload_cost))) { - LLFloaterBuyCurrency::buyCurrency( - llformat("Uploading %s costs", - data->mAssetInfo.getName().c_str()), // *TODO: Translate - expected_upload_cost); + LLStringUtil::format_map_t args; + args["[NAME]"] = data->mAssetInfo.getName(); + args["[CURRENCY]"] = gHippoGridManager->getConnectedGrid()->getCurrencySymbol(); + args["[AMOUNT]"] = llformat("%d", expected_upload_cost); + LLFloaterBuyCurrency::buyCurrency( LLTrans::getString("UploadingCosts", args), expected_upload_cost ); is_balance_sufficient = FALSE; } else if(region) diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index 3b61f7af5..bd5932ad4 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -1410,7 +1410,6 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD& itemp = (LLViewerInventoryItem*)gInventory.getItem(mObjectID); } - // *TODO:translate std::string from_string; // Used in the pop-up. std::string chatHistory_string; // Used in chat history. if (mFromObject == TRUE) @@ -1420,13 +1419,18 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD& std::string group_name; if (gCacheName->getGroupName(mFromID, group_name)) { - from_string = std::string("An object named '") + mFromName + "' owned by the group '" + group_name + "'"; - chatHistory_string = mFromName + " owned by the group '" + group_name + "'"; + from_string = LLTrans::getString("InvOfferAnObjectNamed") + " " + LLTrans::getString("'") + + mFromName + LLTrans::getString("'") + " " + LLTrans::getString("InvOfferOwnedByGroup") + + " " + LLTrans::getString("'") + group_name + LLTrans::getString("'"); + + chatHistory_string = mFromName + " " + LLTrans::getString("InvOfferOwnedByGroup") + + " " + group_name + + LLTrans::getString("'") + LLTrans::getString("."); } else { - from_string = std::string("An object named '") + mFromName + "' owned by an unknown group"; - chatHistory_string = mFromName + " owned by an unknown group"; + from_string = LLTrans::getString("InvOfferAnObjectNamed") + " " + LLTrans::getString("'") + + mFromName + LLTrans::getString("'") + " " + LLTrans::getString("InvOfferOwnedByUnknownGroup"); + chatHistory_string = mFromName + " " + LLTrans::getString("InvOfferOwnedByUnknownGroup" + LLTrans::getString(".")); } } else @@ -1439,16 +1443,19 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD& { full_name = RlvStrings::getAnonym(full_name); } - from_string = std::string("An object named '") + mFromName + "' owned by " + full_name; - chatHistory_string = mFromName + " owned by " + full_name; + from_string = LLTrans::getString("InvOfferAnObjectNamed") + " " + LLTrans::getString("'") + mFromName + + LLTrans::getString("'") +" " + LLTrans::getString("InvOfferOwnedBy") + full_name; + chatHistory_string = mFromName + " " + LLTrans::getString("InvOfferOwnedBy") + " " + full_name + LLTrans::getString("."); // [/RLVa:KB] //from_string = std::string("An object named '") + mFromName + "' owned by " + first_name + " " + last_name; //chatHistory_string = mFromName + " owned by " + first_name + " " + last_name; } else { - from_string = std::string("An object named '") + mFromName + "' owned by an unknown user"; - chatHistory_string = mFromName + " owned by an unknown user"; + + from_string = LLTrans::getString("InvOfferAnObjectNamed") + " " + LLTrans::getString("'") + + mFromName + LLTrans::getString("'") + " " + LLTrans::getString("InvOfferOwnedByUnknownUser"); + chatHistory_string = mFromName + " " + LLTrans::getString("InvOfferOwnedByUnknownUser") + LLTrans::getString("."); } } } @@ -1504,7 +1511,7 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD& //don't spam them if they are getting flooded if (check_offer_throttle(mFromName, true)) { - log_message = chatHistory_string + " gave you " + mDesc + "."; + log_message = chatHistory_string + " " + LLTrans::getString("InvOfferGaveYou") + " " + mDesc + LLTrans::getString("."); chat.mText = log_message; LLFloaterChat::addChatHistory(chat); } @@ -1590,7 +1597,10 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD& } // [/RLVa:KB] - log_message = "You decline " + mDesc + " from " + mFromName + "."; + LLStringUtil::format_map_t log_message_args; + log_message_args["[DESC]"] = mDesc; + log_message_args["[NAME]"] = mFromName; + log_message = LLTrans::getString("InvOfferDecline", log_message_args); chat.mText = log_message; if( LLMuteList::getInstance()->isMuted(mFromID ) && ! LLMuteList::getInstance()->isLinden(mFromName) ) // muting for SL-42269 { @@ -2035,7 +2045,7 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) computed_session_id, from_id, name, - llformat("%s has begun an IM session with you.",name.c_str()), + llformat("%s ",name.c_str()) + LLTrans::getString("IM_announce_incoming"), name, IM_NOTHING_SPECIAL, parent_estate_id, @@ -2099,7 +2109,7 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) computed_session_id, from_id, SYSTEM_FROM, - llformat("Autoresponse sent to %s.",name.c_str()), + LLTrans::getString("IM_autoresponded_to") + llformat(" %s.",name.c_str()), LLStringUtil::null, IM_NOTHING_SPECIAL, parent_estate_id, @@ -2217,7 +2227,7 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) computed_session_id, from_id, SYSTEM_FROM, - llformat("Sent %s auto-response item \"%s\"",name.c_str(),item->getName().c_str()), + llformat("%s %s \"%s\"",name.c_str(), LLTrans::getString("IM_autoresponse_sent_item").c_str(), item->getName().c_str()), LLStringUtil::null, IM_NOTHING_SPECIAL, parent_estate_id, @@ -2368,7 +2378,9 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) std::string saved; if(offline == IM_OFFLINE) { - saved = llformat("(Saved %s) ", formatted_time(timestamp).c_str()); + LLStringUtil::format_map_t args; + args["[LONG_TIMESTAMP]"] = formatted_time(timestamp); + saved = LLTrans::getString("Saved_message", args); } buffer = separator_string + saved + message.substr(message_offset); @@ -3902,7 +3914,7 @@ void process_teleport_start(LLMessageSystem *msg, void**) } else { - gViewerWindow->setProgressCancelButtonVisible(TRUE, std::string("Cancel")); // *TODO: Translate + gViewerWindow->setProgressCancelButtonVisible(TRUE, LLTrans::getString("Cancel")); } // Freeze the UI and show progress bar @@ -3941,7 +3953,7 @@ void process_teleport_progress(LLMessageSystem* msg, void**) } else { - gViewerWindow->setProgressCancelButtonVisible(TRUE, std::string("Cancel")); //TODO: Translate + gViewerWindow->setProgressCancelButtonVisible(TRUE, LLTrans::getString("Cancel")); } std::string buffer; msg->getString("Info", "Message", buffer); @@ -6405,7 +6417,7 @@ void container_inventory_arrived(LLViewerObject* object, LLUUID cat_id; cat_id = gInventory.createNewCategory(gInventory.getRootFolderID(), LLFolderType::FT_NONE, - std::string("Acquired Items")); //TODO: Translate + LLTrans::getString("AcquiredItems")); LLInventoryObject::object_list_t::const_iterator it = inventory->begin(); LLInventoryObject::object_list_t::const_iterator end = inventory->end(); diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index fdfc565e3..bfa6dc60d 100644 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -256,24 +256,23 @@ BOOL LLVOAvatarSelf::buildMenus() //------------------------------------------------------------------------- if(gNoRender) return TRUE; - // *TODO: Translate gAttachBodyPartPieMenus[0] = NULL; - gAttachBodyPartPieMenus[1] = new LLPieMenu(std::string("Right Arm >")); - gAttachBodyPartPieMenus[2] = new LLPieMenu(std::string("Head >")); - gAttachBodyPartPieMenus[3] = new LLPieMenu(std::string("Left Arm >")); + gAttachBodyPartPieMenus[1] = new LLPieMenu(LLTrans::getString("BodyPartsRightArm") + " >"); + gAttachBodyPartPieMenus[2] = new LLPieMenu(LLTrans::getString("BodyPartsHead") + " >"); + gAttachBodyPartPieMenus[3] = new LLPieMenu(LLTrans::getString("BodyPartsLeftArm") + " >"); gAttachBodyPartPieMenus[4] = NULL; - gAttachBodyPartPieMenus[5] = new LLPieMenu(std::string("Left Leg >")); - gAttachBodyPartPieMenus[6] = new LLPieMenu(std::string("Torso >")); - gAttachBodyPartPieMenus[7] = new LLPieMenu(std::string("Right Leg >")); + gAttachBodyPartPieMenus[5] = new LLPieMenu(LLTrans::getString("BodyPartsLeftLeg") + " >"); + gAttachBodyPartPieMenus[6] = new LLPieMenu(LLTrans::getString("BodyPartsTorso") + " >"); + gAttachBodyPartPieMenus[7] = new LLPieMenu(LLTrans::getString("BodyPartsRightLeg") + " >"); gDetachBodyPartPieMenus[0] = NULL; - gDetachBodyPartPieMenus[1] = new LLPieMenu(std::string("Right Arm >")); - gDetachBodyPartPieMenus[2] = new LLPieMenu(std::string("Head >")); - gDetachBodyPartPieMenus[3] = new LLPieMenu(std::string("Left Arm >")); + gDetachBodyPartPieMenus[1] = new LLPieMenu(LLTrans::getString("BodyPartsRightArm") + " >"); + gDetachBodyPartPieMenus[2] = new LLPieMenu(LLTrans::getString("BodyPartsHead") + " >"); + gDetachBodyPartPieMenus[3] = new LLPieMenu(LLTrans::getString("BodyPartsLeftArm") + " >"); gDetachBodyPartPieMenus[4] = NULL; - gDetachBodyPartPieMenus[5] = new LLPieMenu(std::string("Left Leg >")); - gDetachBodyPartPieMenus[6] = new LLPieMenu(std::string("Torso >")); - gDetachBodyPartPieMenus[7] = new LLPieMenu(std::string("Right Leg >")); + gDetachBodyPartPieMenus[5] = new LLPieMenu(LLTrans::getString("BodyPartsLeftLeg") + " >"); + gDetachBodyPartPieMenus[6] = new LLPieMenu(LLTrans::getString("BodyPartsTorso") + " >"); + gDetachBodyPartPieMenus[7] = new LLPieMenu(LLTrans::getString("BodyPartsRightLeg") + " >"); for (S32 i = 0; i < 8; i++) { @@ -2744,4 +2743,4 @@ void LLVOAvatarSelf::setInvisible(bool invisible) requestLayerSetUploads(); gAgent.sendAgentSetAppearance(); } -} \ No newline at end of file +} diff --git a/indra/newview/skins/dark/colors.xml b/indra/newview/skins/dark/colors.xml index 032351a88..2766ba09b 100644 --- a/indra/newview/skins/dark/colors.xml +++ b/indra/newview/skins/dark/colors.xml @@ -70,6 +70,7 @@ + diff --git a/indra/newview/skins/darkgred/colors.xml b/indra/newview/skins/darkgred/colors.xml index d7132d44d..22034c252 100644 --- a/indra/newview/skins/darkgred/colors.xml +++ b/indra/newview/skins/darkgred/colors.xml @@ -70,6 +70,7 @@ + diff --git a/indra/newview/skins/darkorange/colors.xml b/indra/newview/skins/darkorange/colors.xml index f3ff107f0..87e646e51 100644 --- a/indra/newview/skins/darkorange/colors.xml +++ b/indra/newview/skins/darkorange/colors.xml @@ -72,6 +72,7 @@ + diff --git a/indra/newview/skins/default/colors_base.xml b/indra/newview/skins/default/colors_base.xml index eafb95481..eaed66c4d 100644 --- a/indra/newview/skins/default/colors_base.xml +++ b/indra/newview/skins/default/colors_base.xml @@ -73,6 +73,7 @@ + @@ -149,6 +150,13 @@ + + + + + + + diff --git a/indra/newview/skins/default/xui/en-us/floater_about_land.xml b/indra/newview/skins/default/xui/en-us/floater_about_land.xml index 0cdb416c2..41ffa8969 100644 --- a/indra/newview/skins/default/xui/en-us/floater_about_land.xml +++ b/indra/newview/skins/default/xui/en-us/floater_about_land.xml @@ -1345,6 +1345,11 @@ Select the thumbnail to choose a different texture. One or more of these options is set at the estate level + minutes + 1 minute + 1 second + seconds + remaining + has entered + has left + the sim + draw distance + shout range + chat range diff --git a/indra/newview/skins/default/xui/en-us/floater_script_queue.xml b/indra/newview/skins/default/xui/en-us/floater_script_queue.xml index 90d1ac12e..b626c1cb4 100644 --- a/indra/newview/skins/default/xui/en-us/floater_script_queue.xml +++ b/indra/newview/skins/default/xui/en-us/floater_script_queue.xml @@ -3,6 +3,11 @@ can_resize="true" enabled="true" height="400" left="408" min_height="100" min_width="100" mouse_opaque="true" name="queue" title="Reset Progress" width="300" border_bevel="none" border_thickness="0"> + Starting [START] of [COUNT] items. + Done. + Resetting + Running + Not Running