diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 7ae2f0f82..eb399994f 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -115,7 +115,6 @@ set(viewer_SOURCE_FILES llanimstatelabels.cpp llappearancemgr.cpp llappviewer.cpp - llassetconverter.cpp llassetuploadqueue.cpp llassetuploadresponders.cpp llattachmentsmgr.cpp @@ -304,7 +303,6 @@ set(viewer_SOURCE_FILES llinventorypanel.cpp lljoystickbutton.cpp lllandmarklist.cpp - lllocalinventory.cpp lllogchat.cpp llloginhandler.cpp llmainlooprepeater.cpp @@ -620,7 +618,6 @@ set(viewer_HEADER_FILES llappearance.h llappearancemgr.h llappviewer.h - llassetconverter.h llassetuploadqueue.h llassetuploadresponders.h llattachmentsmgr.h @@ -809,7 +806,6 @@ set(viewer_HEADER_FILES lljoystickbutton.h lllandmarklist.h lllightconstants.h - lllocalinventory.h lllogchat.h llloginhandler.h llmainlooprepeater.h diff --git a/indra/newview/app_settings/settings_ascent.xml b/indra/newview/app_settings/settings_ascent.xml index 57f972799..e3d288568 100644 --- a/indra/newview/app_settings/settings_ascent.xml +++ b/indra/newview/app_settings/settings_ascent.xml @@ -235,28 +235,6 @@ Value 0.0 - AscentUseSystemFolder - - Comment - Enables the System folder for setting and non-permanent asset storage. - Persist - 1 - Type - Boolean - Value - 0 - - AscentSystemTemporary - - Comment - When enabled, temporary uploads are put in the System Asset folder (if System Folder exists). - Persist - 1 - Type - Boolean - Value - 0 - AscentShowFriendsTag Comment diff --git a/indra/newview/ascentprefssys.cpp b/indra/newview/ascentprefssys.cpp index fc2bc1a62..aac95de2b 100644 --- a/indra/newview/ascentprefssys.cpp +++ b/indra/newview/ascentprefssys.cpp @@ -223,8 +223,8 @@ void LLPrefsAscentSys::refreshValues() { //General ----------------------------------------------------------------------------- mDoubleClickTeleport = gSavedSettings.getBOOL("DoubleClickTeleport"); - mResetCameraAfterTP = gSavedSettings.getBOOL("OptionRotateCamAfterLocalTP"); - mOffsetTPByUserHeight = gSavedSettings.getBOOL("OptionOffsetTPByAgentHeight"); + mResetCameraAfterTP = gSavedSettings.getBOOL("OptionRotateCamAfterLocalTP"); + mOffsetTPByUserHeight = gSavedSettings.getBOOL("OptionOffsetTPByAgentHeight"); mClearBeaconAfterTeleport = gSavedSettings.getBOOL("ClearBeaconAfterTeleport"); mLiruFlyAfterTeleport = gSavedSettings.getBOOL("LiruFlyAfterTeleport"); mLiruContinueFlying = gSavedSettings.getBOOL("LiruContinueFlyingOnUnsit"); @@ -235,14 +235,12 @@ void LLPrefsAscentSys::refreshValues() mAlwaysShowFly = gSavedSettings.getBOOL("AscentFlyAlwaysEnabled"); mDisableMinZoom = gSavedSettings.getBOOL("AscentDisableMinZoomDist"); mPowerUser = gSavedSettings.getBOOL("AscentPowerfulWizard"); - mUseSystemFolder = gSavedSettings.getBOOL("AscentUseSystemFolder"); - mUploadToSystem = gSavedSettings.getBOOL("AscentSystemTemporary"); mFetchInventoryOnLogin = gSavedSettings.getBOOL("FetchInventoryOnLogin"); mEnableLLWind = gSavedSettings.getBOOL("WindEnabled"); mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled"); - mEnableClassicClouds = gSavedSettings.getBOOL("SkyUseClassicClouds"); + mEnableClassicClouds = gSavedSettings.getBOOL("SkyUseClassicClouds"); mSpeedRez = gSavedSettings.getBOOL("SpeedRez"); - mSpeedRezInterval = gSavedSettings.getU32("SpeedRezInterval"); + mSpeedRezInterval = gSavedSettings.getU32("SpeedRezInterval"); //Command Line ------------------------------------------------------------------------ mCmdLine = gSavedSettings.getBOOL("AscentCmdLine"); @@ -303,7 +301,6 @@ void LLPrefsAscentSys::refresh() childSetEnabled("offset_teleport_check", mDoubleClickTeleport); childSetValue("power_user_check", mPowerUser); childSetValue("power_user_confirm_check", mPowerUser); - childSetEnabled("temp_in_system_check", mUseSystemFolder); childSetEnabled("speed_rez_interval", mSpeedRez); childSetEnabled("speed_rez_seconds", mSpeedRez); @@ -377,8 +374,8 @@ void LLPrefsAscentSys::cancel() { //General ----------------------------------------------------------------------------- gSavedSettings.setBOOL("DoubleClickTeleport", mDoubleClickTeleport); - gSavedSettings.setBOOL("OptionRotateCamAfterLocalTP", mResetCameraAfterTP); - gSavedSettings.setBOOL("OptionOffsetTPByAgentHeight", mOffsetTPByUserHeight); + gSavedSettings.setBOOL("OptionRotateCamAfterLocalTP", mResetCameraAfterTP); + gSavedSettings.setBOOL("OptionOffsetTPByAgentHeight", mOffsetTPByUserHeight); gSavedSettings.setBOOL("ClearBeaconAfterTeleport", mClearBeaconAfterTeleport); gSavedSettings.setBOOL("LiruFlyAfterTeleport", mLiruFlyAfterTeleport); gSavedSettings.setBOOL("LiruContinueFlyingOnUnsit", mLiruContinueFlying); @@ -388,14 +385,12 @@ void LLPrefsAscentSys::cancel() gSavedSettings.setBOOL("AscentBuildAlwaysEnabled", mBuildAlwaysEnabled); gSavedSettings.setBOOL("AscentFlyAlwaysEnabled", mAlwaysShowFly); gSavedSettings.setBOOL("AscentDisableMinZoomDist", mDisableMinZoom); - gSavedSettings.setBOOL("AscentUseSystemFolder", mUseSystemFolder); - gSavedSettings.setBOOL("AscentSystemTemporary", mUploadToSystem); gSavedSettings.setBOOL("FetchInventoryOnLogin", mFetchInventoryOnLogin); gSavedSettings.setBOOL("WindEnabled", mEnableLLWind); gSavedSettings.setBOOL("CloudsEnabled", mEnableClouds); - gSavedSettings.setBOOL("SkyUseClassicClouds", mEnableClassicClouds); + gSavedSettings.setBOOL("SkyUseClassicClouds", mEnableClassicClouds); gSavedSettings.setBOOL("SpeedRez", mSpeedRez); - gSavedSettings.setU32("SpeedRezInterval", mSpeedRezInterval); + gSavedSettings.setU32("SpeedRezInterval", mSpeedRezInterval); //Command Line ------------------------------------------------------------------------ gSavedSettings.setBOOL("AscentCmdLine", mCmdLine); diff --git a/indra/newview/ascentprefssys.h b/indra/newview/ascentprefssys.h index 2ecacb43e..e449f89b8 100644 --- a/indra/newview/ascentprefssys.h +++ b/indra/newview/ascentprefssys.h @@ -54,8 +54,8 @@ protected: //General ----------------------------------------------------------------------------- BOOL mDoubleClickTeleport; - BOOL mResetCameraAfterTP; - BOOL mOffsetTPByUserHeight; + BOOL mResetCameraAfterTP; + BOOL mOffsetTPByUserHeight; bool mClearBeaconAfterTeleport; bool mLiruFlyAfterTeleport; bool mLiruContinueFlying; @@ -66,14 +66,12 @@ protected: BOOL mAlwaysShowFly; BOOL mDisableMinZoom; BOOL mPowerUser; - BOOL mUseSystemFolder; - BOOL mUploadToSystem; BOOL mFetchInventoryOnLogin; BOOL mEnableLLWind; BOOL mEnableClouds; - BOOL mEnableClassicClouds; + BOOL mEnableClassicClouds; BOOL mSpeedRez; - U32 mSpeedRezInterval; + U32 mSpeedRezInterval; //Command Line ------------------------------------------------------------------------ BOOL mCmdLine; diff --git a/indra/newview/llassetconverter.cpp b/indra/newview/llassetconverter.cpp deleted file mode 100644 index 19d636dc3..000000000 --- a/indra/newview/llassetconverter.cpp +++ /dev/null @@ -1,112 +0,0 @@ -// -#include "llviewerprecompiledheaders.h" -#include "llvfs.h" -#include "llapr.h" -#include "llvfile.h" -#include "llassetconverter.h" -#include "llviewertexturelist.h" -#include "llvorbisencode.h" -#include "llwearable.h" -#include "llbvhloader.h" -#include -struct conversion_s -{ - std::string extension; - LLAssetType::EType type; - boost::function conv_fn; -}conversion_list[] = -{ - { "bmp", LLAssetType::AT_TEXTURE, boost::bind(&LLViewerTextureList::createUploadFile,_1,_2,IMG_CODEC_BMP) }, - { "tga", LLAssetType::AT_TEXTURE, boost::bind(&LLViewerTextureList::createUploadFile,_1,_2,IMG_CODEC_TGA) }, - { "jpg", LLAssetType::AT_TEXTURE, boost::bind(&LLViewerTextureList::createUploadFile,_1,_2,IMG_CODEC_JPEG)}, - { "jpeg", LLAssetType::AT_TEXTURE, boost::bind(&LLViewerTextureList::createUploadFile,_1,_2,IMG_CODEC_JPEG)}, - { "png", LLAssetType::AT_TEXTURE, boost::bind(&LLViewerTextureList::createUploadFile,_1,_2,IMG_CODEC_PNG) }, - { "jp2", LLAssetType::AT_TEXTURE, &LLAssetConverter::copyFile }, - { "j2k", LLAssetType::AT_TEXTURE, &LLAssetConverter::copyFile }, - { "j2c", LLAssetType::AT_TEXTURE, &LLAssetConverter::copyFile }, - { "wav", LLAssetType::AT_SOUND, &encode_vorbis_file }, - { "ogg", LLAssetType::AT_SOUND, &LLAssetConverter::copyFile }, - { "bvh", LLAssetType::AT_ANIMATION, &LLAssetConverter::copyBVH }, - { "animatn", LLAssetType::AT_ANIMATION, &LLAssetConverter::copyFile }, - { "gesture", LLAssetType::AT_GESTURE, &LLAssetConverter::copyFile }, - { "notecard", LLAssetType::AT_NOTECARD, &LLAssetConverter::copyFile }, - { "lsl", LLAssetType::AT_LSL_TEXT, &LLAssetConverter::copyFile }, - //tmp ? -}; - -// static -extern std::string STATUS[]; -LLAssetType::EType LLAssetConverter::convert(const std::string &src_filename, const std::string &filename) -{ - std::string exten = gDirUtilp->getExtension(src_filename); - for(U32 i = 0;i < sizeof(conversion_list) / sizeof(conversion_list[0]); ++i) - { - if(conversion_list[i].extension == exten) - { - return conversion_list[i].conv_fn(src_filename, filename) ? - conversion_list[i].type : LLAssetType::AT_NONE; - } - } - LLWearableType::EType wear_type = LLWearableType::typeNameToType(exten); - if(wear_type != LLWearableType::WT_NONE && copyFile(src_filename, filename)) - { - return LLWearableType::getAssetType(wear_type); - } - - llwarns << "Unhandled extension" << llendl; - return LLAssetType::AT_NONE; -} -bool LLAssetConverter::copyFile(const std::string &src_filename, const std::string &dst_filename) -{ - S32 src_size; - - LLAPRFile src_fp(src_filename, LL_APR_RB, &src_size); - if(!src_fp.getFileHandle()) return false; - - LLAPRFile dst_fp(dst_filename, LL_APR_WB); - if(!dst_fp.getFileHandle()) return false; - - std::vector buffer(src_size + 1); - - src_fp.read(&buffer[0], src_size); - dst_fp.write(&buffer[0], src_size); - - return true; -} -bool LLAssetConverter::copyBVH(const std::string &src_filename, const std::string &dst_filename) -{ - S32 file_size; - - LLAPRFile fp(src_filename, LL_APR_RB, &file_size); - if(!fp.getFileHandle()) return false; - - std::vector buffer(file_size + 1); - - ELoadStatus load_status = E_ST_OK; - S32 line_number = 0; - - LLBVHLoader* loaderp = new LLBVHLoader(&buffer[0], load_status, line_number); - - if(load_status == E_ST_NO_XLT_FILE) - { - llwarns << "NOTE: No translation table found." << llendl; - } - else if(load_status != E_ST_OK) - { - llwarns << "ERROR: [line: " << line_number << "] " << STATUS[load_status].c_str() << llendl; - } - - buffer.resize(loaderp->getOutputSize()); - - LLDataPackerBinaryBuffer dp((U8*)&buffer[0], buffer.size()); - loaderp->serialize(dp); - - delete loaderp; - - LLAPRFile apr_file(dst_filename, LL_APR_RB, &file_size); - if(!apr_file.getFileHandle()) return false; - - apr_file.write(&buffer[0], buffer.size()); - return true; -} -// diff --git a/indra/newview/llassetconverter.h b/indra/newview/llassetconverter.h deleted file mode 100644 index 618468617..000000000 --- a/indra/newview/llassetconverter.h +++ /dev/null @@ -1,16 +0,0 @@ -// -#ifndef LL_LLASSETCONVERTER_H -#define LL_LLASSETCONVERTER_H - -#include "llcommon.h" -#include "llassettype.h" - -class LLAssetConverter -{ -public: - static LLAssetType::EType convert(const std::string &src_filename, const std::string &filename); - static bool copyFile(const std::string &src_filename, const std::string &dest_filename); - static bool copyBVH(const std::string &src_filename, const std::string &dst_filename); -}; -#endif -// diff --git a/indra/newview/llfloaterexploreanimations.cpp b/indra/newview/llfloaterexploreanimations.cpp index 6267b31c5..5ffe000b6 100644 --- a/indra/newview/llfloaterexploreanimations.cpp +++ b/indra/newview/llfloaterexploreanimations.cpp @@ -6,7 +6,6 @@ #include "llscrolllistctrl.h" #include "llfloaterbvhpreview.h" #include "llvoavatar.h" -#include "lllocalinventory.h" #include "llviewercamera.h" #include "llviewerwindow.h" #include "lltoolmgr.h" diff --git a/indra/newview/lllocalinventory.cpp b/indra/newview/lllocalinventory.cpp deleted file mode 100644 index edab999ff..000000000 --- a/indra/newview/lllocalinventory.cpp +++ /dev/null @@ -1,561 +0,0 @@ -// -#include "llviewerprecompiledheaders.h" - -#include "lllocalinventory.h" - -#include "llviewerinventory.h" -#include "llviewercontrol.h" - -#include "llpreviewsound.h" -#include "llpreviewanim.h" -#include "llpreviewtexture.h" -#include "llpreviewgesture.h" -#include "llpreviewlandmark.h" - -#include "llappviewer.h" - -#include "lluictrlfactory.h" -#include "llcombobox.h" -#include "llnotificationsutil.h" - -#include "llagent.h" // gAgent -#include "llviewerwindow.h" // alertXml - - -LLUUID LLLocalInventory::addItem(std::string name, int type, LLUUID asset_id, bool open_automatically) -{ - LLUUID item_id = addItem(name, type, asset_id); - if(open_automatically) open(item_id); - return item_id; -} - -LLUUID LLLocalInventory::addItem(std::string name, int type, LLUUID asset_id) -{ - LLUUID item_id; - item_id.generate(); - LLPermissions* perms = new LLPermissions(); - perms->set(LLPermissions::DEFAULT); - perms->setOwnerAndGroup(LLUUID::null, LLUUID::null, LLUUID::null, false); - perms->setMaskBase(0); - perms->setMaskEveryone(0); - perms->setMaskGroup(0); - perms->setMaskNext(0); - perms->setMaskOwner(0); - LLViewerInventoryItem* item = new LLViewerInventoryItem( - item_id, - gSystemFolderAssets, - *perms, - asset_id, - (LLAssetType::EType)type, - (LLInventoryType::EType)type, - name, - "", - LLSaleInfo::DEFAULT, - 0, - time_corrected()); - addItem(item); - return item_id; -} - -void LLLocalInventory::addItem(LLViewerInventoryItem* item) -{ - //gInventory.addPretendItem(item); - LLInventoryModel::update_map_t update; - ++update[item->getParentUUID()]; - gInventory.accountForUpdate(update); - gInventory.updateItem(item); - gInventory.notifyObservers(); -} - -void LLLocalInventory::open(LLUUID item_id) -{ - LLViewerInventoryItem* item = gInventory.getItem(item_id); - if(!item) - { - llwarns << "Trying to open non-existent item" << llendl; - return; - } - - LLAssetType::EType type = item->getType(); - - if(type == LLAssetType::AT_SOUND) - { - S32 left, top; - gFloaterView->getNewFloaterPosition(&left, &top); - LLRect rect = gSavedSettings.getRect("PreviewSoundRect"); - rect.translate(left - rect.mLeft, top - rect.mTop); - LLPreviewSound* floaterp; - floaterp = new LLPreviewSound("Preview sound", - rect, - "", - item_id); - floaterp->setFocus(TRUE); - gFloaterView->adjustToFitScreen(floaterp, FALSE); - } - else if(type == LLAssetType::AT_ANIMATION) - { - S32 left, top; - gFloaterView->getNewFloaterPosition(&left, &top); - LLRect rect = gSavedSettings.getRect("PreviewAnimRect"); - rect.translate(left - rect.mLeft, top - rect.mTop); - LLPreviewAnim* floaterp; - floaterp = new LLPreviewAnim("Preview anim", - rect, - "", - item_id, - LLPreviewAnim::NONE); - floaterp->setFocus(TRUE); - gFloaterView->adjustToFitScreen(floaterp, FALSE); - } - else if(type == LLAssetType::AT_TEXTURE) - { - S32 left, top; - gFloaterView->getNewFloaterPosition(&left, &top); - LLRect rect = gSavedSettings.getRect("PreviewTextureRect"); - rect.translate( left - rect.mLeft, top - rect.mTop ); - - LLPreviewTexture* preview; - preview = new LLPreviewTexture("preview texture", - rect, - "Preview texture", - item_id, - LLUUID::null, - FALSE); - //preview->setSourceID(source_id); - preview->setFocus(TRUE); - - gFloaterView->adjustToFitScreen(preview, FALSE); - } - else if(type == LLAssetType::AT_GESTURE) - { - // If only the others were like this - LLPreviewGesture::show("preview gesture", item_id, LLUUID::null, TRUE); - } - else if(type == LLAssetType::AT_LANDMARK) - { - S32 left, top; - gFloaterView->getNewFloaterPosition(&left, &top); - LLRect rect = gSavedSettings.getRect("PreviewLandmarkRect"); - rect.translate( left - rect.mLeft, top - rect.mTop ); - - LLPreviewLandmark* preview; - preview = new LLPreviewLandmark("preview landmark", - rect, - "Preview landmark", - item_id); - preview->setFocus(TRUE); - - gFloaterView->adjustToFitScreen(preview, FALSE); - } - else - { - llwarns << "Dunno how to open type " << type << llendl; - } -} - -//static -void LLLocalInventory::loadInvCache(std::string filename) -{ - std::string extension = gDirUtilp->getExtension(filename); - std::string inv_filename = filename; - if(extension == "gz") - { - LLUUID random; - random.generate(); - inv_filename = filename.substr(0, filename.length() - 3) + "." + random.asString(); - - if(!gunzip_file(filename, inv_filename)) - { - // failure... message? - return; - } - } - - LLInventoryModel::cat_array_t cats; - LLInventoryModel::item_array_t items; - bool is_cache_obsolete = false; - if(LLInventoryModel::loadFromFile(inv_filename, cats, items, is_cache_obsolete)) - { - // create a container category for everything - LLViewerInventoryCategory* container = new LLViewerInventoryCategory(gAgent.getID()); - container->rename(gDirUtilp->getBaseFileName(filename, false)); - LLUUID container_id; - container_id.generate(); - container->setUUID(container_id); - container->setParent(gSystemFolderRoot); - container->setPreferredType(LLFolderType::FT_NONE); - LLInventoryModel::update_map_t container_update; - ++container_update[container->getParentUUID()]; - gInventory.accountForUpdate(container_update); - gInventory.updateCategory(container); - gInventory.notifyObservers(); - - LLViewerInventoryCategory* orphaned_items = new LLViewerInventoryCategory(gAgent.getID()); - orphaned_items->rename("Orphaned Items"); - LLUUID orphaned_items_id; - - orphaned_items_id.generate(); - orphaned_items->setUUID(orphaned_items_id); - orphaned_items->setParent(container_id); - orphaned_items->setPreferredType(LLFolderType::FT_NONE); - - LLInventoryModel::update_map_t orphaned_items_update; - ++orphaned_items_update[orphaned_items->getParentUUID()]; - gInventory.accountForUpdate(orphaned_items_update); - gInventory.updateCategory(orphaned_items); - gInventory.notifyObservers(); - - //conflict handling - std::map conflicting_cats; - int dropped_cats = 0; - int dropped_items = 0; - - // Add all categories - LLInventoryModel::cat_array_t::iterator cat_iter = cats.begin(); - LLInventoryModel::cat_array_t::iterator cat_end = cats.end(); - for(; cat_iter != cat_end; ++cat_iter) - { - // Conditionally change its parent - // Note: Should I search for missing parent id's? - - //if the parent is null, it goes in the very root of the tree! - if((*cat_iter)->getParentUUID().isNull()) - { - (*cat_iter)->setParent(container_id); - } - // If the parent exists and outside of pretend inventory, generate a new uuid - else if(gInventory.getCategory((*cat_iter)->getParentUUID())) - { - if(!gInventory.isObjectDescendentOf((*cat_iter)->getParentUUID(), gSystemFolderRoot, TRUE)) - { - std::map::iterator itr = conflicting_cats.find((*cat_iter)->getParentUUID()); - if(itr == conflicting_cats.end()) - { - dropped_cats++; - continue; - } - (*cat_iter)->setParent(itr->second); - } - } else { - //well balls, this is orphaned. - (*cat_iter)->setParent(orphaned_items_id); - } - // If this category already exists, generate a new uuid - if(gInventory.getCategory((*cat_iter)->getUUID())) - { - LLUUID cat_random; - cat_random.generate(); - conflicting_cats[(*cat_iter)->getUUID()] = cat_random; - (*cat_iter)->setUUID(cat_random); - } - - LLInventoryModel::update_map_t update; - ++update[(*cat_iter)->getParentUUID()]; - gInventory.accountForUpdate(update); - gInventory.updateCategory(*cat_iter); - gInventory.notifyObservers(); - } - - // Add all items - LLInventoryModel::item_array_t::iterator item_iter = items.begin(); - LLInventoryModel::item_array_t::iterator item_end = items.end(); - for(; item_iter != item_end; ++item_iter) - { - // Conditionally change its parent - // Note: Should I search for missing parent id's? - - //if the parent is null, it goes in the very root of the tree! - if((*item_iter)->getParentUUID().isNull()) - { - (*item_iter)->setParent(container_id); - } - - // If the parent exists and outside of pretend inventory, generate a new uuid - if(gInventory.getCategory((*item_iter)->getParentUUID())) - { - if(!gInventory.isObjectDescendentOf((*item_iter)->getParentUUID(), gSystemFolderRoot, TRUE)) - { - std::map::iterator itr = conflicting_cats.find((*item_iter)->getParentUUID()); - if(itr == conflicting_cats.end()) - { - dropped_items++; - continue; - } - (*item_iter)->setParent(itr->second); - } - } else { - //well balls, this is orphaned. - (*item_iter)->setParent(orphaned_items_id); - } - // Avoid conflicts with real inventory... - // If this item id already exists, generate a new uuid - if(gInventory.getItem((*item_iter)->getUUID())) - { - LLUUID item_random; - item_random.generate(); - (*item_iter)->setUUID(item_random); - } - - LLInventoryModel::update_map_t update; - ++update[(*item_iter)->getParentUUID()]; - gInventory.accountForUpdate(update); - gInventory.updateItem(*item_iter); - gInventory.notifyObservers(); - } - - // Quality time - if(dropped_items || dropped_cats) - { - std::ostringstream message; - message << "Some items were ignored due to conflicts:\n\n"; - if(dropped_cats) message << dropped_cats << " folders\n"; - if(dropped_items) message << dropped_items << " items\n"; - - LLSD args; - args["ERROR_MESSAGE"] = message.str(); - LLNotificationsUtil::add("ErrorMessage", args); - } - conflicting_cats.clear();// srsly dont think this is need but w/e :D - } - - // remove temporary unzipped file - if(extension == "gz") - { - LLFile::remove(inv_filename); - } - -} - -//static -void LLLocalInventory::saveInvCache(std::string filename, LLFolderView* folder) -{ - LLInventoryModel* model = &gInventory; - std::set selected_items = folder->getSelectionList(); - if(selected_items.size() < 1) - { - // No items selected? Wtfboom - return; - } - LLInventoryModel::cat_array_t cats; - LLInventoryModel::item_array_t items; - // Make complete lists of child categories and items - std::set::iterator sel_iter = selected_items.begin(); - std::set::iterator sel_end = selected_items.end(); - for( ; sel_iter != sel_end; ++sel_iter) - { - LLInventoryCategory* cat = model->getCategory(*sel_iter); - if(cat) - { - climb(cat, cats, items); - } - } - // And what about items inside a folder that wasn't selected? - // I guess I will just add selected items, so long as they aren't already added - for(sel_iter = selected_items.begin(); sel_iter != sel_end; ++sel_iter) - { - LLInventoryItem* item = model->getItem(*sel_iter); - if(item) - { - if(std::find(items.begin(), items.end(), item) == items.end()) - { - items.push_back(LLPointer((LLViewerInventoryItem*)item)); - LLInventoryCategory* parent = model->getCategory(item->getParentUUID()); - if(std::find(cats.begin(), cats.end(), parent) == cats.end()) - { - cats.push_back(LLPointer((LLViewerInventoryCategory*)parent)); - } - } - } - } - LLInventoryModel::saveToFile(filename, cats, items); -} - -// static -void LLLocalInventory::climb(LLInventoryCategory* cat, - LLInventoryModel::cat_array_t& cats, - LLInventoryModel::item_array_t& items) -{ - LLInventoryModel* model = &gInventory; - - // Add this category - cats.push_back(LLPointer((LLViewerInventoryCategory*)cat)); - - LLInventoryModel::cat_array_t *direct_cats; - LLInventoryModel::item_array_t *direct_items; - model->getDirectDescendentsOf(cat->getUUID(), direct_cats, direct_items); - - // Add items - LLInventoryModel::item_array_t::iterator item_iter = direct_items->begin(); - LLInventoryModel::item_array_t::iterator item_end = direct_items->end(); - for( ; item_iter != item_end; ++item_iter) - { - items.push_back(*item_iter); - } - - // Do subcategories - LLInventoryModel::cat_array_t::iterator cat_iter = direct_cats->begin(); - LLInventoryModel::cat_array_t::iterator cat_end = direct_cats->end(); - for( ; cat_iter != cat_end; ++cat_iter) - { - climb(*cat_iter, cats, items); - } -} - - - - - - - - - - - - - - - - - - - - - - - -LLUUID LLFloaterNewLocalInventory::sLastCreatorId = LLUUID::null; - -LLFloaterNewLocalInventory::LLFloaterNewLocalInventory() -: LLFloater() -{ - LLUICtrlFactory::getInstance()->buildFloater(this, "floater_new_local_inventory.xml"); -} - -LLFloaterNewLocalInventory::~LLFloaterNewLocalInventory() -{ -} - -BOOL LLFloaterNewLocalInventory::postBuild(void) -{ - // Fill in default values - - getChild("creator_id_line")->setText(std::string("00000000-0000-0000-0000-000000000000")); - getChild("owner_id_line")->setText(gAgent.getID().asString()); - getChild("asset_id_line")->setText(std::string("00000000-0000-0000-0000-000000000000")); - getChild("name_line")->setText(std::string("")); - getChild("desc_line")->setText(std::string("")); - - // Set up callbacks - - childSetAction("ok_btn", onClickOK, this); - - return TRUE; -} - -// static -void LLFloaterNewLocalInventory::onClickOK(void* user_data) -{ - LLFloaterNewLocalInventory* floater = (LLFloaterNewLocalInventory*)user_data; - - LLUUID item_id; - item_id.generate(); - - std::string name = floater->getChild("name_line")->getText(); - std::string desc = floater->getChild("desc_line")->getText(); - LLUUID asset_id = LLUUID(floater->getChild("asset_id_line")->getText()); - LLUUID creator_id = LLUUID(floater->getChild("creator_id_line")->getText()); - LLUUID owner_id = LLUUID(floater->getChild("owner_id_line")->getText()); - - LLAssetType::EType type = LLAssetType::lookup(floater->getChild("type_combo")->getValue().asString()); - LLInventoryType::EType inv_type = LLInventoryType::IT_NONE; - switch(type) - { - case LLAssetType::AT_TEXTURE: - case LLAssetType::AT_TEXTURE_TGA: - case LLAssetType::AT_IMAGE_TGA: - case LLAssetType::AT_IMAGE_JPEG: - inv_type = LLInventoryType::IT_TEXTURE; - break; - case LLAssetType::AT_SOUND: - case LLAssetType::AT_SOUND_WAV: - inv_type = LLInventoryType::IT_SOUND; - break; - case LLAssetType::AT_CALLINGCARD: - inv_type = LLInventoryType::IT_CALLINGCARD; - break; - case LLAssetType::AT_LANDMARK: - inv_type = LLInventoryType::IT_LANDMARK; - break; - case LLAssetType::AT_SCRIPT: - inv_type = LLInventoryType::IT_LSL; - break; - case LLAssetType::AT_CLOTHING: - inv_type = LLInventoryType::IT_WEARABLE; - break; - case LLAssetType::AT_OBJECT: - inv_type = LLInventoryType::IT_OBJECT; - break; - case LLAssetType::AT_NOTECARD: - inv_type = LLInventoryType::IT_NOTECARD; - break; - case LLAssetType::AT_CATEGORY: - inv_type = LLInventoryType::IT_CATEGORY; - break; - //No longer asset types. - /*case LLFolderType::FT_ROOT_CATEGORY: - case LLFolderType::FT_TRASH: - case LLFolderType::FT_SNAPSHOT_CATEGORY: - case LLFolderType::FT_LOST_AND_FOUND: - inv_type = LLInventoryType::IT_ROOT_CATEGORY; - break;*/ - case LLAssetType::AT_LSL_TEXT: - case LLAssetType::AT_LSL_BYTECODE: - inv_type = LLInventoryType::IT_LSL; - break; - case LLAssetType::AT_BODYPART: - inv_type = LLInventoryType::IT_WEARABLE; - break; - case LLAssetType::AT_ANIMATION: - inv_type = LLInventoryType::IT_ANIMATION; - break; - case LLAssetType::AT_GESTURE: - inv_type = LLInventoryType::IT_GESTURE; - break; - //case LLAssetType::AT_SIMSTATE: - default: - //inv_type = LLInventoryType::IT_CALLINGCARD; - break; - } - - if(inv_type == LLInventoryType::IT_NONE) - return; - - LLPermissions* perms = new LLPermissions(); - perms->init(creator_id, owner_id, LLUUID::null, LLUUID::null); - - LLViewerInventoryItem* item = new LLViewerInventoryItem( - item_id, - gSystemFolderRoot, - *perms, - asset_id, - type, - inv_type, - name, - desc, - LLSaleInfo::DEFAULT, - 0, - 0); - - LLLocalInventory::addItem(item); - if(floater->childGetValue("chk_open")) - { - LLLocalInventory::open(item_id); - } - - LLFloaterNewLocalInventory::sLastCreatorId = creator_id; - floater->close(); -} - - - -// diff --git a/indra/newview/lllocalinventory.h b/indra/newview/lllocalinventory.h deleted file mode 100644 index 4159918f8..000000000 --- a/indra/newview/lllocalinventory.h +++ /dev/null @@ -1,45 +0,0 @@ -// -#ifndef LL_LLLOCALINVENTORY_H -#define LL_LLLOCALINVENTORY_H - -#include "llviewerinventory.h" - -#include "llfloater.h" - -#include "llfolderview.h" -#include "llinventorymodel.h" // cat_array_t, item_array_t - -class LLLocalInventory -{ -public: - static LLUUID addItem(std::string name, int type, LLUUID asset_id, bool open); - static LLUUID addItem(std::string name, int type, LLUUID asset_id); - static void addItem(LLViewerInventoryItem* item); - static void open(LLUUID item_id); - static void loadInvCache(std::string filename); - static void saveInvCache(std::string filename, LLFolderView* folder); - static void climb(LLInventoryCategory* cat, - LLInventoryModel::cat_array_t& cats, - LLInventoryModel::item_array_t& items); -}; - - - - -class LLFloaterNewLocalInventory -: public LLFloater -{ -public: - LLFloaterNewLocalInventory(); - BOOL postBuild(void); - - static void onClickOK(void* user_data); - static LLUUID sLastCreatorId; - -private: - virtual ~LLFloaterNewLocalInventory(); - -}; - -#endif -// diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index 8f15ca6e3..7f493e7ed 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -2193,41 +2193,6 @@ bool idle_startup() } display_startup(); - // testing adding a local inventory folder... - if (gSavedSettings.getBOOL("AscentUseSystemFolder")) - { - LLViewerInventoryCategory* system_folder = new LLViewerInventoryCategory(gAgent.getID()); - system_folder->rename(std::string("System Inventory")); - LLUUID system_folder_id = LLUUID("00000000-0000-0000-0000-000000000001");//"FFFFFFFF-0000-F113-7357-000000000001"); - system_folder->setUUID(system_folder_id); - gSystemFolderRoot = system_folder_id; - system_folder->setParent(LLUUID::null); - system_folder->setPreferredType(LLFolderType::FT_NONE); - gInventory.addCategory(system_folder); - - LLViewerInventoryCategory* settings_folder = new LLViewerInventoryCategory(gAgent.getID()); - settings_folder->rename(std::string("Settings")); - LLUUID settings_folder_id; - settings_folder_id.generate(); - settings_folder->setUUID(settings_folder_id); - gSystemFolderSettings = settings_folder_id; - settings_folder->setParent(gSystemFolderRoot); - settings_folder->setPreferredType(LLFolderType::FT_NONE); - gInventory.addCategory(settings_folder); - - LLViewerInventoryCategory* assets_folder = new LLViewerInventoryCategory(gAgent.getID()); - assets_folder->rename(std::string("Assets")); - LLUUID assets_folder_id; - assets_folder_id.generate(); - assets_folder->setUUID(assets_folder_id); - gSystemFolderAssets = assets_folder_id; - assets_folder->setParent(gSystemFolderRoot); - assets_folder->setPreferredType(LLFolderType::FT_NONE); - gInventory.addCategory(assets_folder); - } - display_startup(); - // - LLSD buddy_list = response["buddy-list"]; if(buddy_list.isDefined()) { diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 950c84995..54ef07bd6 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -71,7 +71,6 @@ #include "lltrans.h" // #include "llmenugl.h" -#include "lllocalinventory.h" // // tag: vaa emerald local_asset_browser [begin] diff --git a/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml b/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml index f8ef0842a..ae33505e5 100644 --- a/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml +++ b/indra/newview/skins/default/xui/en-us/panel_preferences_ascent_system.xml @@ -5,8 +5,8 @@ - + @@ -28,10 +28,6 @@ label="Enable Power User functionality" tool_tip="Adds features deemed too dangerous for normal use. These features can wreak havoc or do bad things if misused - Mostly to yourself or your belongings. If you're sure, activate the checkbox below as well." name="power_user_check"/> - - @@ -117,9 +113,9 @@ Rubber Next Owner Perms - - - + + + @@ -136,7 +132,7 @@ High - +