From 0db67883470dc3e4381672bfbb40f3ef920a4a01 Mon Sep 17 00:00:00 2001 From: Jonathan Yap Date: Wed, 10 Dec 2014 11:09:28 -0500 Subject: STORM-2091 "Empty Trash"/"Empty Lost and Found" menu item is active even if empty --- doc/contributions.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 521be7b7e2..7f186c9f6d 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -751,6 +751,7 @@ Jonathan Yap STORM-2088 STORM-2094 STORM-2099 + STORM-2091 Kadah Coba STORM-1060 STORM-1843 -- cgit v1.3 From 9f88029ca63335f4ab9f920412aa42f90dda204d Mon Sep 17 00:00:00 2001 From: Jonathan Yap Date: Thu, 11 Dec 2014 18:23:23 -0500 Subject: STORM-2092 Add "Copy outfit list to clipboard" for COF folder --- doc/contributions.txt | 1 + indra/newview/llinventorybridge.cpp | 42 ++++++++++++++++++++++ indra/newview/llinventorybridge.h | 1 + .../skins/default/xui/en/menu_inventory.xml | 8 +++++ 4 files changed, 52 insertions(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 7f186c9f6d..db26e50d3f 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -752,6 +752,7 @@ Jonathan Yap STORM-2094 STORM-2099 STORM-2091 + STORM-2092 Kadah Coba STORM-1060 STORM-1843 diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 199c90c705..e6cd7b9f95 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -3092,6 +3092,10 @@ void LLFolderBridge::performAction(LLInventoryModel* model, std::string action) LLAppearanceMgr::instance().takeOffOutfit( cat->getLinkedUUID() ); return; } + else if ("copyoutfittoclipboard" == action) + { + copyOutfitToClipboard(); + } else if ("purge" == action) { purgeItem(model, mUUID); @@ -3249,6 +3253,39 @@ void LLFolderBridge::gatherMessage(std::string& message, S32 depth, LLError::ELe } } +void LLFolderBridge::copyOutfitToClipboard() +{ + std::string text; + + LLInventoryModel::cat_array_t* cat_array; + LLInventoryModel::item_array_t* item_array; + gInventory.getDirectDescendentsOf(mUUID, cat_array, item_array); + + S32 item_count(0); + if( item_array ) + { + item_count = item_array->size(); + } + + if (item_count) + { + for (S32 i = 0; i < item_count;) + { + LLSD uuid =item_array->at(i)->getUUID(); + LLViewerInventoryItem* item = gInventory.getItem(uuid); + + i++; + if (item != NULL) + { + // Append a newline to all but the last line + text += i != item_count ? item->getName() + "\n" : item->getName(); + } + } + } + + LLClipboard::instance().copyToClipboard(utf8str_to_wstring(text),0,text.size()); +} + void LLFolderBridge::openItem() { LL_DEBUGS() << "LLFolderBridge::openItem()" << LL_ENDL; @@ -3847,6 +3884,11 @@ void LLFolderBridge::buildContextMenuOptions(U32 flags, menuentry_vec_t& items } } + if (model->findCategoryUUIDForType(LLFolderType::FT_CURRENT_OUTFIT) == mUUID) + { + items.push_back(std::string("Copy outfit list to clipboard")); + } + //Added by aura to force inventory pull on right-click to display folder options correctly. 07-17-06 mCallingCards = mWearables = FALSE; diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index df25e01688..b7d8c9d034 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -344,6 +344,7 @@ protected: BOOL checkFolderForContentsOfType(LLInventoryModel* model, LLInventoryCollectFunctor& typeToCheck); void modifyOutfit(BOOL append); + void copyOutfitToClipboard(); void determineFolderType(); void dropToFavorites(LLInventoryItem* inv_item); diff --git a/indra/newview/skins/default/xui/en/menu_inventory.xml b/indra/newview/skins/default/xui/en/menu_inventory.xml index 61002bf1b5..5b8a9413bf 100644 --- a/indra/newview/skins/default/xui/en/menu_inventory.xml +++ b/indra/newview/skins/default/xui/en/menu_inventory.xml @@ -457,6 +457,14 @@ function="Inventory.DoToSelected" parameter="removefromoutfit" /> + + + -- cgit v1.3 From aeb64da07a094a1d398da85b66726a2a4de8ae6b Mon Sep 17 00:00:00 2001 From: Jonathan Yap Date: Tue, 6 Jan 2015 10:49:02 -0500 Subject: STORM-2100 Incorrect displays in Script Information window --- doc/contributions.txt | 1 + indra/newview/llfloaterscriptlimits.cpp | 27 +++++++++++++---- .../skins/default/xui/en/floater_script_limits.xml | 3 +- indra/newview/skins/default/xui/en/menu_viewer.xml | 12 ++++---- .../xui/en/panel_script_limits_my_avatar.xml | 12 ++++---- .../xui/en/panel_script_limits_region_memory.xml | 34 +++++++++++----------- 6 files changed, 53 insertions(+), 36 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index db26e50d3f..f1d8522533 100755 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -753,6 +753,7 @@ Jonathan Yap STORM-2099 STORM-2091 STORM-2092 + STORM-2100 Kadah Coba STORM-1060 STORM-1843 diff --git a/indra/newview/llfloaterscriptlimits.cpp b/indra/newview/llfloaterscriptlimits.cpp index eae16b9f03..56d3a266b1 100644 --- a/indra/newview/llfloaterscriptlimits.cpp +++ b/indra/newview/llfloaterscriptlimits.cpp @@ -523,6 +523,8 @@ void LLPanelScriptLimitsRegionMemory::setRegionDetails(LLSD content) LLScrollListCell::Params cell_params; cell_params.font = LLFontGL::getFontSansSerif(); + // Start out right justifying numeric displays + cell_params.font_halign = LLFontGL::RIGHT; cell_params.column = "size"; cell_params.value = size; @@ -532,6 +534,8 @@ void LLPanelScriptLimitsRegionMemory::setRegionDetails(LLSD content) cell_params.value = urls; item_params.columns.add(cell_params); + cell_params.font_halign = LLFontGL::LEFT; + // The rest of the columns are text to left justify them cell_params.column = "name"; cell_params.value = name_buf; item_params.columns.add(cell_params); @@ -546,7 +550,7 @@ void LLPanelScriptLimitsRegionMemory::setRegionDetails(LLSD content) cell_params.column = "location"; cell_params.value = has_locations - ? llformat("<%0.1f,%0.1f,%0.1f>", location_x, location_y, location_z) + ? llformat("<%0.0f, %0.0f, %0.0f>", location_x, location_y, location_z) : ""; item_params.columns.add(cell_params); @@ -623,13 +627,24 @@ void LLPanelScriptLimitsRegionMemory::setRegionSummary(LLSD content) if((mParcelMemoryUsed >= 0) && (mParcelMemoryMax >= 0)) { - S32 parcel_memory_available = mParcelMemoryMax - mParcelMemoryUsed; - LLStringUtil::format_map_t args_parcel_memory; args_parcel_memory["[COUNT]"] = llformat ("%d", mParcelMemoryUsed); - args_parcel_memory["[MAX]"] = llformat ("%d", mParcelMemoryMax); - args_parcel_memory["[AVAILABLE]"] = llformat ("%d", parcel_memory_available); - std::string msg_parcel_memory = LLTrans::getString("ScriptLimitsMemoryUsed", args_parcel_memory); + std::string translate_message; + + if (0 < mParcelMemoryMax) + { + S32 parcel_memory_available = mParcelMemoryMax - mParcelMemoryUsed; + + args_parcel_memory["[MAX]"] = llformat ("%d", mParcelMemoryMax); + args_parcel_memory["[AVAILABLE]"] = llformat ("%d", parcel_memory_available); + translate_message = "ScriptLimitsMemoryUsed"; + } + else + { + translate_message = "ScriptLimitsMemoryUsedSimple"; + } + + std::string msg_parcel_memory = LLTrans::getString(translate_message, args_parcel_memory); getChild("memory_used")->setValue(LLSD(msg_parcel_memory)); } diff --git a/indra/newview/skins/default/xui/en/floater_script_limits.xml b/indra/newview/skins/default/xui/en/floater_script_limits.xml index 6b36cdfcc5..96b2ceec63 100644 --- a/indra/newview/skins/default/xui/en/floater_script_limits.xml +++ b/indra/newview/skins/default/xui/en/floater_script_limits.xml @@ -8,7 +8,8 @@ name="scriptlimits" save_rect="true" title="SCRIPT INFORMATION" - width="480"> + min_width="620" + width="620"> @@ -425,7 +425,7 @@ parameter="destinations" /> @@ -448,7 +448,7 @@ parameter="mini_map" /> + width="620"> + width="620"> Avatar Script Usage + width="620"> + width="620"> + width="620"> Loading... + width="600"> + width="620"> + width="620"> Parcel Script Memory + width="620"> + width="620"> + width="620"> + width="620"> Loading... + width="600">