diff options
| author | Merov Linden <merov@lindenlab.com> | 2014-03-14 13:52:42 -0700 | 
|---|---|---|
| committer | Merov Linden <merov@lindenlab.com> | 2014-03-14 13:52:42 -0700 | 
| commit | f93f860e9b565213089f945ee0d88dedf3dcd9c0 (patch) | |
| tree | fe1ad366ae8be0f45bce5bf1de2eafabaa7e7940 | |
| parent | 705d4182c8a84728e7f00cf48110c8f9720e4c29 (diff) | |
DD-43, DD-44 : implement update_marketplace_category() and get it called swhen appropriate
| -rwxr-xr-x | indra/newview/llinventoryfunctions.cpp | 10 | ||||
| -rwxr-xr-x | indra/newview/llinventoryfunctions.h | 3 | ||||
| -rwxr-xr-x | indra/newview/llmarketplacefunctions.cpp | 7 | 
3 files changed, 20 insertions, 0 deletions
| diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp index f1a4889f5a..203eb4ec4e 100755 --- a/indra/newview/llinventoryfunctions.cpp +++ b/indra/newview/llinventoryfunctions.cpp @@ -111,6 +111,16 @@ void append_path(const LLUUID& id, std::string& path)  	path.append(temp);  } +void update_marketplace_category(const LLUUID& cat_id) +{ +    // When changing the marketplace status of a folder, the only thing that needs to happen is +    // for all observers of the folder to, possibly, change the display label of said folder. +    // At least that's the status for the moment so, even if that function seems small, we +    // prefer to encapsulate that behavior here. +    gInventory.addChangedMask(LLInventoryObserver::LABEL, cat_id); +	gInventory.notifyObservers(); +} +  void rename_category(LLInventoryModel* model, const LLUUID& cat_id, const std::string& new_name)  {  	LLViewerInventoryCategory* cat; diff --git a/indra/newview/llinventoryfunctions.h b/indra/newview/llinventoryfunctions.h index f1066a4dc9..1443c186cf 100755 --- a/indra/newview/llinventoryfunctions.h +++ b/indra/newview/llinventoryfunctions.h @@ -58,6 +58,9 @@ void show_task_item_profile(const LLUUID& item_uuid, const LLUUID& object_id);  void show_item_original(const LLUUID& item_uuid);  void reset_inventory_filter(); +// Just nudge the category in the global inventory to signal that its marketplace status changed +void update_marketplace_category(const LLUUID& cat_id); +  void rename_category(LLInventoryModel* model, const LLUUID& cat_id, const std::string& new_name);  void copy_inventory_category(LLInventoryModel* model, LLViewerInventoryCategory* cat, const LLUUID& parent_id, const LLUUID& root_copy_id = LLUUID::null); diff --git a/indra/newview/llmarketplacefunctions.cpp b/indra/newview/llmarketplacefunctions.cpp index b39889c721..6f35cc217d 100755 --- a/indra/newview/llmarketplacefunctions.cpp +++ b/indra/newview/llmarketplacefunctions.cpp @@ -30,6 +30,7 @@  #include "llagent.h"  #include "llhttpclient.h" +#include "llinventoryfunctions.h"  #include "llsdserialize.h"  #include "lltimer.h"  #include "lltrans.h" @@ -596,6 +597,7 @@ bool LLMarketplaceData::setListingID(const LLUUID& folder_id, std::string listin      else      {          (it->second).mListingId = listing_id; +        update_marketplace_category(folder_id);          return true;      }  } @@ -609,6 +611,7 @@ bool LLMarketplaceData::setVersionFolderID(const LLUUID& folder_id, const LLUUID      else      {          (it->second).mActiveVersionFolderId = version_id; +        update_marketplace_category(folder_id);          return true;      }  } @@ -622,6 +625,7 @@ bool LLMarketplaceData::setActivation(const LLUUID& folder_id, bool activate)      else      {          (it->second).mIsActive = activate; +        update_marketplace_category(folder_id);          return true;      }  } @@ -631,12 +635,15 @@ void LLMarketplaceData::addTestItem(const LLUUID& folder_id)  {      llinfos << "Merov : addTestItem, id = " << folder_id << llendl;  	mMarketplaceItems[folder_id] = LLMarketplaceTuple(folder_id); +    update_marketplace_category(folder_id);  }  void LLMarketplaceData::addTestItem(const LLUUID& folder_id, const LLUUID& version_id)  {      llinfos << "Merov : addTestItem, id = " << folder_id << ", version = " << version_id << llendl;  	mMarketplaceItems[folder_id] = LLMarketplaceTuple(folder_id);      setVersionFolderID(folder_id, version_id); +    update_marketplace_category(folder_id); +    update_marketplace_category(version_id);  } | 
