diff options
Diffstat (limited to 'indra/newview/llviewermenufile.h')
-rwxr-xr-x | indra/newview/llviewermenufile.h | 136 |
1 files changed, 122 insertions, 14 deletions
diff --git a/indra/newview/llviewermenufile.h b/indra/newview/llviewermenufile.h index 3034d00b22..76704e8edd 100755 --- a/indra/newview/llviewermenufile.h +++ b/indra/newview/llviewermenufile.h @@ -39,20 +39,126 @@ class LLTransactionID; void init_menu_file(); +#if 1 +class NewResourceUploadInfo +{ +public: + typedef boost::shared_ptr<NewResourceUploadInfo> ptr_t; + + NewResourceUploadInfo(std::string name, + std::string description, + S32 compressionInfo, + LLFolderType::EType destinationType, + LLInventoryType::EType inventoryType, + U32 nextOWnerPerms, + U32 groupPerms, + U32 everyonePerms, + std::string displayName, + S32 expectedCost) : + mName(name), + mDescription(description), + mDisplayName(displayName), + mCompressionInfo(compressionInfo), + mNextOwnerPerms(nextOWnerPerms), + mGroupPerms(mGroupPerms), + mEveryonePerms(mEveryonePerms), + mExpectedUploadCost(expectedCost), + mInventoryType(inventoryType), + mDestinationFolderType(destinationType) + { } + + virtual ~NewResourceUploadInfo() + { } + + virtual LLAssetID prepareUpload(); + virtual LLSD generatePostBody(); + virtual void logPreparedUpload(); + + void setAssetType(LLAssetType::EType assetType) { mAssetType = assetType; } + LLAssetType::EType getAssetType() const { return mAssetType; } + std::string getAssetTypeString() const; + void setTransactionId(LLTransactionID transactionId) { mTransactionId = transactionId; } + LLTransactionID getTransactionId() const { return mTransactionId; } + LLUUID getFolderId() const { return mFolderId; } + + LLAssetID getAssetId() const { return mAssetId; } + + std::string getName() const { return mName; }; + std::string getDescription() const { return mDescription; }; + std::string getDisplayName() const { return mDisplayName; }; + S32 getCompressionInfo() const { return mCompressionInfo; }; + U32 getNextOwnerPerms() const { return mNextOwnerPerms; }; + U32 getGroupPerms() const { return mGroupPerms; }; + U32 getEveryonePerms() const { return mEveryonePerms; }; + S32 getExpectedUploadCost() const { return mExpectedUploadCost; }; + LLInventoryType::EType getInventoryType() const { return mInventoryType; }; + std::string getInventoryTypeString() const; + + LLFolderType::EType getDestinationFolderType() const { return mDestinationFolderType; }; + +protected: + LLAssetID generateNewAssetId(); + void incrementUploadStats() const; + virtual void assignDefaults(); + +private: + LLAssetType::EType mAssetType; + std::string mName; + std::string mDescription; + std::string mDisplayName; + S32 mCompressionInfo; + U32 mNextOwnerPerms; + U32 mGroupPerms; + U32 mEveryonePerms; + S32 mExpectedUploadCost; + LLUUID mFolderId; + + LLInventoryType::EType mInventoryType; + LLFolderType::EType mDestinationFolderType; + + LLAssetID mAssetId; + LLTransactionID mTransactionId; +}; + + LLUUID upload_new_resource( - const std::string& src_filename, - std::string name, - std::string desc, - S32 compression_info, - LLFolderType::EType destination_folder_type, - LLInventoryType::EType inv_type, - U32 next_owner_perms, - U32 group_perms, - U32 everyone_perms, - const std::string& display_name, - LLAssetStorage::LLStoreAssetCallback callback, - S32 expected_upload_cost, - void *userdata); + const std::string& src_filename, + std::string name, + std::string desc, + S32 compression_info, + LLFolderType::EType destination_folder_type, + LLInventoryType::EType inv_type, + U32 next_owner_perms, + U32 group_perms, + U32 everyone_perms, + const std::string& display_name, + LLAssetStorage::LLStoreAssetCallback callback, + S32 expected_upload_cost, + void *userdata); + +void upload_new_resource( + const LLTransactionID &tid, + LLAssetType::EType type, + NewResourceUploadInfo::ptr_t &uploadInfo, + LLAssetStorage::LLStoreAssetCallback callback = NULL, + void *userdata = NULL); + + +#else +LLUUID upload_new_resource( + const std::string& src_filename, + std::string name, + std::string desc, + S32 compression_info, + LLFolderType::EType destination_folder_type, + LLInventoryType::EType inv_type, + U32 next_owner_perms, + U32 group_perms, + U32 everyone_perms, + const std::string& display_name, + LLAssetStorage::LLStoreAssetCallback callback, + S32 expected_upload_cost, + void *userdata); void upload_new_resource( const LLTransactionID &tid, @@ -70,9 +176,9 @@ void upload_new_resource( S32 expected_upload_cost, void *userdata); - LLAssetID generate_asset_id_for_new_upload(const LLTransactionID& tid); void increase_new_upload_stats(LLAssetType::EType asset_type); +#endif void assign_defaults_and_show_upload_message( LLAssetType::EType asset_type, LLInventoryType::EType& inventory_type, @@ -80,6 +186,7 @@ void assign_defaults_and_show_upload_message( const std::string& display_name, std::string& description); +#if 0 LLSD generate_new_resource_upload_capability_body( LLAssetType::EType asset_type, const std::string& name, @@ -89,6 +196,7 @@ LLSD generate_new_resource_upload_capability_body( U32 next_owner_perms, U32 group_perms, U32 everyone_perms); +#endif void on_new_single_inventory_upload_complete( LLAssetType::EType asset_type, |