System Inventory beta - Working, but perhaps not as well as I'd like it to.
Signed-off-by: Beeks <HgDelirium@gmail.com>
This commit is contained in:
@@ -117,6 +117,28 @@
|
|||||||
<key>Value</key>
|
<key>Value</key>
|
||||||
<real>0.0</real>
|
<real>0.0</real>
|
||||||
</map>
|
</map>
|
||||||
|
<key>AscentUseSystemFolder</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>Enables the System folder for setting and non-permanent asset storage.</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>Boolean</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</map>
|
||||||
|
<key>AscentSystemTemporary</key>
|
||||||
|
<map>
|
||||||
|
<key>Comment</key>
|
||||||
|
<string>When enabled, temporary uploads are put in the System Asset folder (if System Folder exists).</string>
|
||||||
|
<key>Persist</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>Type</key>
|
||||||
|
<string>Boolean</string>
|
||||||
|
<key>Value</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</map>
|
||||||
<key>AscentShowFriendsTag</key>
|
<key>AscentShowFriendsTag</key>
|
||||||
<map>
|
<map>
|
||||||
<key>Comment</key>
|
<key>Comment</key>
|
||||||
|
|||||||
@@ -77,6 +77,8 @@ private:
|
|||||||
BOOL mAlwaysShowFly;
|
BOOL mAlwaysShowFly;
|
||||||
//Disable camera minimum distance
|
//Disable camera minimum distance
|
||||||
BOOL mPowerUser;
|
BOOL mPowerUser;
|
||||||
|
BOOL mUseSystemFolder;
|
||||||
|
BOOL mUploadToSystem;
|
||||||
//Chat/IM -----------------------------------------------------------------------------
|
//Chat/IM -----------------------------------------------------------------------------
|
||||||
BOOL mHideNotificationsInChat;
|
BOOL mHideNotificationsInChat;
|
||||||
BOOL mPlayTypingSound;
|
BOOL mPlayTypingSound;
|
||||||
@@ -109,6 +111,8 @@ LLPrefsAscentSysImpl::LLPrefsAscentSysImpl()
|
|||||||
{
|
{
|
||||||
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_preferences_ascent_system.xml");
|
LLUICtrlFactory::getInstance()->buildPanel(this, "panel_preferences_ascent_system.xml");
|
||||||
childSetCommitCallback("speed_rez_check", onCommitCheckBox, this);
|
childSetCommitCallback("speed_rez_check", onCommitCheckBox, this);
|
||||||
|
childSetCommitCallback("double_click_teleport_check", onCommitCheckBox, this);
|
||||||
|
childSetCommitCallback("system_folder_check", onCommitCheckBox, this);
|
||||||
childSetCommitCallback("show_look_at_check", onCommitCheckBox, this);
|
childSetCommitCallback("show_look_at_check", onCommitCheckBox, this);
|
||||||
childSetCommitCallback("enable_clouds", onCommitCheckBox, this);
|
childSetCommitCallback("enable_clouds", onCommitCheckBox, this);
|
||||||
mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled");
|
mEnableClouds = gSavedSettings.getBOOL("CloudsEnabled");
|
||||||
@@ -125,16 +129,9 @@ void LLPrefsAscentSysImpl::onCommitCheckBox(LLUICtrl* ctrl, void* user_data)
|
|||||||
|
|
||||||
if (ctrl->getControlName() == "SpeedRez")
|
if (ctrl->getControlName() == "SpeedRez")
|
||||||
{
|
{
|
||||||
if (self->childGetValue("speed_rez_check").asBoolean())
|
bool enabled = self->childGetValue("speed_rez_check").asBoolean();
|
||||||
{
|
self->childSetEnabled("speed_rez_interval", enabled);
|
||||||
self->childEnable("speed_rez_interval");
|
self->childSetEnabled("speed_rez_seconds", enabled);
|
||||||
self->childEnable("speed_rez_seconds");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
self->childDisable("speed_rez_interval");
|
|
||||||
self->childDisable("speed_rez_seconds");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (ctrl->getName() == "show_look_at_check")
|
else if (ctrl->getName() == "show_look_at_check")
|
||||||
{
|
{
|
||||||
@@ -142,6 +139,17 @@ void LLPrefsAscentSysImpl::onCommitCheckBox(LLUICtrl* ctrl, void* user_data)
|
|||||||
LLHUDEffectLookAt::sDebugLookAt = lookAt;
|
LLHUDEffectLookAt::sDebugLookAt = lookAt;
|
||||||
gSavedSettings.setBOOL("AscentShowLookAt", lookAt);
|
gSavedSettings.setBOOL("AscentShowLookAt", lookAt);
|
||||||
}
|
}
|
||||||
|
else if (ctrl->getName() == "double_click_teleport_check")
|
||||||
|
{
|
||||||
|
bool enabled = self->childGetValue("double_click_teleport_check").asBoolean();
|
||||||
|
self->childSetEnabled("center_after_teleport_check", enabled);
|
||||||
|
self->childSetEnabled("offset_teleport_check", enabled);
|
||||||
|
}
|
||||||
|
else if (ctrl->getName() == "system_folder_check")
|
||||||
|
{
|
||||||
|
bool enabled = self->childGetValue("system_folder_check").asBoolean();
|
||||||
|
self->childSetEnabled("temp_in_system_check", enabled);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void LLPrefsAscentSysImpl::refreshValues()
|
void LLPrefsAscentSysImpl::refreshValues()
|
||||||
@@ -159,6 +167,8 @@ void LLPrefsAscentSysImpl::refreshValues()
|
|||||||
mAlwaysShowFly = gSavedSettings.getBOOL("AscentFlyAlwaysEnabled");
|
mAlwaysShowFly = gSavedSettings.getBOOL("AscentFlyAlwaysEnabled");
|
||||||
//Disable camera minimum distance
|
//Disable camera minimum distance
|
||||||
mPowerUser = gSavedSettings.getBOOL("AscentPowerfulWizard");
|
mPowerUser = gSavedSettings.getBOOL("AscentPowerfulWizard");
|
||||||
|
mUseSystemFolder = gSavedSettings.getBOOL("AscentUseSystemFolder");
|
||||||
|
mUploadToSystem = gSavedSettings.getBOOL("AscentSystemTemporary");
|
||||||
//Chat/IMs ----------------------------------------------------------------------------
|
//Chat/IMs ----------------------------------------------------------------------------
|
||||||
mHideNotificationsInChat = gSavedSettings.getBOOL("HideNotificationsInChat");
|
mHideNotificationsInChat = gSavedSettings.getBOOL("HideNotificationsInChat");
|
||||||
mHideTypingNotification = gSavedSettings.getBOOL("AscentHideTypingNotification");
|
mHideTypingNotification = gSavedSettings.getBOOL("AscentHideTypingNotification");
|
||||||
@@ -198,7 +208,9 @@ void LLPrefsAscentSysImpl::refresh()
|
|||||||
//General -----------------------------------------------------------------------------
|
//General -----------------------------------------------------------------------------
|
||||||
childSetValue("double_click_teleport_check", mDoubleClickTeleport);
|
childSetValue("double_click_teleport_check", mDoubleClickTeleport);
|
||||||
childSetValue("center_after_teleport_check", mResetCameraAfterTP);
|
childSetValue("center_after_teleport_check", mResetCameraAfterTP);
|
||||||
|
childSetEnabled("center_after_teleport_check", mDoubleClickTeleport);
|
||||||
childSetValue("offset_teleport_check", mOffsetTPByUserHeight);
|
childSetValue("offset_teleport_check", mOffsetTPByUserHeight);
|
||||||
|
childSetEnabled("offset_teleport_check", mDoubleClickTeleport);
|
||||||
childSetValue("preview_anim_in_world_check", mPreviewAnimInWorld);
|
childSetValue("preview_anim_in_world_check", mPreviewAnimInWorld);
|
||||||
childSetValue("save_scripts_as_mono_check", mSaveScriptsAsMono);
|
childSetValue("save_scripts_as_mono_check", mSaveScriptsAsMono);
|
||||||
childSetValue("always_rez_in_group_check", mAlwaysRezInGroup);
|
childSetValue("always_rez_in_group_check", mAlwaysRezInGroup);
|
||||||
@@ -209,6 +221,9 @@ void LLPrefsAscentSysImpl::refresh()
|
|||||||
//Disable camera minimum distance
|
//Disable camera minimum distance
|
||||||
childSetValue("power_user_check", mPowerUser);
|
childSetValue("power_user_check", mPowerUser);
|
||||||
childSetValue("power_user_confirm_check", mPowerUser);
|
childSetValue("power_user_confirm_check", mPowerUser);
|
||||||
|
childSetValue("system_folder_check", mUseSystemFolder);
|
||||||
|
childSetValue("temp_in_system_check", mUploadToSystem);
|
||||||
|
childSetEnabled("temp_in_system_check", mUseSystemFolder);
|
||||||
//Chat --------------------------------------------------------------------------------
|
//Chat --------------------------------------------------------------------------------
|
||||||
childSetValue("hide_notifications_in_chat_check", mHideNotificationsInChat);
|
childSetValue("hide_notifications_in_chat_check", mHideNotificationsInChat);
|
||||||
childSetValue("play_typing_sound_check", mPlayTypingSound);
|
childSetValue("play_typing_sound_check", mPlayTypingSound);
|
||||||
@@ -279,16 +294,8 @@ void LLPrefsAscentSysImpl::refresh()
|
|||||||
childSetValue("enable_clouds", mEnableClouds);
|
childSetValue("enable_clouds", mEnableClouds);
|
||||||
gLLWindEnabled = mEnableLLWind;
|
gLLWindEnabled = mEnableLLWind;
|
||||||
childSetValue("speed_rez_check", mSpeedRez);
|
childSetValue("speed_rez_check", mSpeedRez);
|
||||||
if (mSpeedRez)
|
childSetEnabled("speed_rez_interval", mSpeedRez);
|
||||||
{
|
childSetEnabled("speed_rez_seconds", mSpeedRez);
|
||||||
childEnable("speed_rez_interval");
|
|
||||||
childEnable("speed_rez_seconds");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
childDisable("speed_rez_interval");
|
|
||||||
childDisable("speed_rez_seconds");
|
|
||||||
}
|
|
||||||
//Command Line ------------------------------------------------------------------------
|
//Command Line ------------------------------------------------------------------------
|
||||||
|
|
||||||
//Privacy -----------------------------------------------------------------------------
|
//Privacy -----------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
#include "llviewerregion.h" // getCapability
|
#include "llviewerregion.h" // getCapability
|
||||||
#include "llassetuploadresponders.h" // LLUpdateAgentInventoryResponder
|
#include "llassetuploadresponders.h" // LLUpdateAgentInventoryResponder
|
||||||
#include "llinventorymodel.h" // gInventory.updateItem
|
#include "llinventorymodel.h" // gInventory.updateItem
|
||||||
#include "llappviewer.h" // gLocalInventoryRoot
|
#include "llappviewer.h" // System Folders
|
||||||
#include "llfloaterperms.h" //get default perms
|
#include "llfloaterperms.h" //get default perms
|
||||||
|
|
||||||
std::list<DOFloaterHex*> DOFloaterHex::sInstances;
|
std::list<DOFloaterHex*> DOFloaterHex::sInstances;
|
||||||
@@ -261,7 +261,7 @@ void DOFloaterHex::assetCallback(LLVFS *vfs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Never enable save if it's a pretend item
|
// Never enable save if it's a pretend item
|
||||||
if(gInventory.isObjectDescendentOf(item->getUUID(), gLocalInventoryRoot))
|
if(gInventory.isObjectDescendentOf(item->getUUID(), gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
floater->childSetEnabled("save_btn", false);
|
floater->childSetEnabled("save_btn", false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
#include "llviewerregion.h" // getCapability
|
#include "llviewerregion.h" // getCapability
|
||||||
#include "llassetuploadresponders.h" // LLUpdateAgentInventoryResponder
|
#include "llassetuploadresponders.h" // LLUpdateAgentInventoryResponder
|
||||||
#include "llinventorymodel.h" // gInventory.updateItem
|
#include "llinventorymodel.h" // gInventory.updateItem
|
||||||
#include "llappviewer.h" // gLocalInventoryRoot
|
#include "llappviewer.h" // System Folders
|
||||||
#include "llfloaterperms.h" //get default perms
|
#include "llfloaterperms.h" //get default perms
|
||||||
#include "lllocalinventory.h"
|
#include "lllocalinventory.h"
|
||||||
|
|
||||||
@@ -225,7 +225,7 @@ void HGFloaterTextEditor::assetCallback(LLVFS *vfs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Never enable save if it's a pretend item
|
// Never enable save if it's a pretend item
|
||||||
if(gInventory.isObjectDescendentOf(item->getUUID(), gLocalInventoryRoot))
|
if(gInventory.isObjectDescendentOf(item->getUUID(), gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
floater->childSetEnabled("save_btn", false);
|
floater->childSetEnabled("save_btn", false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -259,7 +259,9 @@ F32 gLogoutMaxTime = LOGOUT_REQUEST_TIME;
|
|||||||
LLUUID gInventoryLibraryOwner;
|
LLUUID gInventoryLibraryOwner;
|
||||||
LLUUID gInventoryLibraryRoot;
|
LLUUID gInventoryLibraryRoot;
|
||||||
// <edit>
|
// <edit>
|
||||||
LLUUID gLocalInventoryRoot;
|
LLUUID gSystemFolderRoot;
|
||||||
|
LLUUID gSystemFolderSettings;
|
||||||
|
LLUUID gSystemFolderAssets;
|
||||||
// </edit>
|
// </edit>
|
||||||
|
|
||||||
BOOL gDisconnected = FALSE;
|
BOOL gDisconnected = FALSE;
|
||||||
@@ -632,8 +634,12 @@ bool LLAppViewer::init()
|
|||||||
writeSystemInfo();
|
writeSystemInfo();
|
||||||
|
|
||||||
// Build a string representing the current version number.
|
// Build a string representing the current version number.
|
||||||
// <edit> meh
|
gCurrentVersion = llformat("%s %d.%d.%d.%d",
|
||||||
gCurrentVersion = "1.0.0.0";
|
LL_CHANNEL,
|
||||||
|
LL_VERSION_MAJOR,
|
||||||
|
LL_VERSION_MINOR,
|
||||||
|
LL_VERSION_PATCH,
|
||||||
|
LL_VERSION_BUILD );
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
//////////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
@@ -308,7 +308,9 @@ extern F32 gSimFrames;
|
|||||||
extern LLUUID gInventoryLibraryOwner;
|
extern LLUUID gInventoryLibraryOwner;
|
||||||
extern LLUUID gInventoryLibraryRoot;
|
extern LLUUID gInventoryLibraryRoot;
|
||||||
// <edit>
|
// <edit>
|
||||||
extern LLUUID gLocalInventoryRoot;
|
extern LLUUID gSystemFolderRoot;
|
||||||
|
extern LLUUID gSystemFolderSettings;
|
||||||
|
extern LLUUID gSystemFolderAssets;
|
||||||
// </edit>
|
// </edit>
|
||||||
|
|
||||||
extern BOOL gDisconnected;
|
extern BOOL gDisconnected;
|
||||||
|
|||||||
@@ -777,7 +777,7 @@ BOOL LLFolderViewItem::handleHover( S32 x, S32 y, MASK mask )
|
|||||||
src = LLToolDragAndDrop::SOURCE_LIBRARY;
|
src = LLToolDragAndDrop::SOURCE_LIBRARY;
|
||||||
}
|
}
|
||||||
// <edit>
|
// <edit>
|
||||||
else if(mListener && gInventory.isObjectDescendentOf(mListener->getUUID(), gLocalInventoryRoot))
|
else if(mListener && gInventory.isObjectDescendentOf(mListener->getUUID(), gSystemFolderRoot))
|
||||||
{ // Note: this is only ok if all future pretend folders are subcategories of Pretend Inventory
|
{ // Note: this is only ok if all future pretend folders are subcategories of Pretend Inventory
|
||||||
src = LLToolDragAndDrop::SOURCE_LIBRARY;
|
src = LLToolDragAndDrop::SOURCE_LIBRARY;
|
||||||
}
|
}
|
||||||
@@ -2941,7 +2941,6 @@ void LLFolderView::filter( LLInventoryFilter& filter )
|
|||||||
LLFastTimer t2(LLFastTimer::FTM_FILTER);
|
LLFastTimer t2(LLFastTimer::FTM_FILTER);
|
||||||
filter.setFilterCount(llclamp(gSavedSettings.getS32("FilterItemsPerFrame"), 1, 5000));
|
filter.setFilterCount(llclamp(gSavedSettings.getS32("FilterItemsPerFrame"), 1, 5000));
|
||||||
|
|
||||||
|
|
||||||
if (getCompletedFilterGeneration() < filter.getCurrentGeneration())
|
if (getCompletedFilterGeneration() < filter.getCurrentGeneration())
|
||||||
{
|
{
|
||||||
mFiltered = FALSE;
|
mFiltered = FALSE;
|
||||||
|
|||||||
@@ -92,7 +92,7 @@
|
|||||||
#include "llselectmgr.h"
|
#include "llselectmgr.h"
|
||||||
#include "llfloateropenobject.h"
|
#include "llfloateropenobject.h"
|
||||||
// <edit>
|
// <edit>
|
||||||
#include "llappviewer.h" // gLocalInventoryRoot
|
#include "llappviewer.h" // System Folders
|
||||||
#include "llfloateranimpreview.h" // for reuploads
|
#include "llfloateranimpreview.h" // for reuploads
|
||||||
#include "llfloaterimagepreview.h" // for reuploads
|
#include "llfloaterimagepreview.h" // for reuploads
|
||||||
#include "llimportobject.h" // for disabling options during import
|
#include "llimportobject.h" // for disabling options during import
|
||||||
@@ -364,7 +364,7 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener*
|
|||||||
--update[item->getParentUUID()];
|
--update[item->getParentUUID()];
|
||||||
++update[trash_id];
|
++update[trash_id];
|
||||||
// <edit>
|
// <edit>
|
||||||
if(!gInventory.isObjectDescendentOf(item->getUUID(), gLocalInventoryRoot))
|
if(!gInventory.isObjectDescendentOf(item->getUUID(), gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
// </edit>
|
// </edit>
|
||||||
if(start_new_message)
|
if(start_new_message)
|
||||||
@@ -411,7 +411,7 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener*
|
|||||||
--update[cat->getParentUUID()];
|
--update[cat->getParentUUID()];
|
||||||
++update[trash_id];
|
++update[trash_id];
|
||||||
// <edit>
|
// <edit>
|
||||||
if(!gInventory.isObjectDescendentOf(cat->getUUID(), gLocalInventoryRoot))
|
if(!gInventory.isObjectDescendentOf(cat->getUUID(), gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
// </edit>
|
// </edit>
|
||||||
if(start_new_message)
|
if(start_new_message)
|
||||||
@@ -450,7 +450,7 @@ void LLInvFVBridge::removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener*
|
|||||||
for(; it != end; ++it)
|
for(; it != end; ++it)
|
||||||
{
|
{
|
||||||
// <edit> trash problem
|
// <edit> trash problem
|
||||||
if(gInventory.isObjectDescendentOf(*it, gLocalInventoryRoot))
|
if(gInventory.isObjectDescendentOf(*it, gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
// if it's a category, delete descendents
|
// if it's a category, delete descendents
|
||||||
if(gInventory.getCategory(*it))
|
if(gInventory.getCategory(*it))
|
||||||
@@ -1148,7 +1148,7 @@ void LLItemBridge::selectItem()
|
|||||||
if(item && !item->isComplete())
|
if(item && !item->isComplete())
|
||||||
{
|
{
|
||||||
// <edit>
|
// <edit>
|
||||||
if(!(gInventory.isObjectDescendentOf(mUUID, gLocalInventoryRoot)))
|
if(!(gInventory.isObjectDescendentOf(mUUID, gSystemFolderRoot)))
|
||||||
// </edit>
|
// </edit>
|
||||||
item->fetchFromServer();
|
item->fetchFromServer();
|
||||||
}
|
}
|
||||||
@@ -1298,10 +1298,6 @@ std::string LLItemBridge::getLabelSuffix() const
|
|||||||
else stempo = EMPTY;
|
else stempo = EMPTY;
|
||||||
suffix = llformat("%s%s%s%s",scopy,smod,sxfer,stempo);
|
suffix = llformat("%s%s%s%s",scopy,smod,sxfer,stempo);
|
||||||
}
|
}
|
||||||
else if (!perm.isOwned())
|
|
||||||
{
|
|
||||||
suffix = " (temporary)";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return suffix;
|
return suffix;
|
||||||
}
|
}
|
||||||
@@ -1380,7 +1376,7 @@ BOOL LLItemBridge::removeItem()
|
|||||||
if(item && !model->isObjectDescendentOf(mUUID, trash_id))
|
if(item && !model->isObjectDescendentOf(mUUID, trash_id))
|
||||||
{
|
{
|
||||||
// <edit> trash problem
|
// <edit> trash problem
|
||||||
if(gInventory.isObjectDescendentOf(mUUID, gLocalInventoryRoot))
|
if(gInventory.isObjectDescendentOf(mUUID, gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
LLInventoryModel::LLCategoryUpdate up(item->getParentUUID(), -1);
|
LLInventoryModel::LLCategoryUpdate up(item->getParentUUID(), -1);
|
||||||
gInventory.deleteObject(mUUID);
|
gInventory.deleteObject(mUUID);
|
||||||
@@ -1641,7 +1637,7 @@ BOOL LLFolderBridge::isUpToDate() const
|
|||||||
|
|
||||||
// <edit> trying to make it stop trying to fetch Local Inventory
|
// <edit> trying to make it stop trying to fetch Local Inventory
|
||||||
//return category->getVersion() != LLViewerInventoryCategory::VERSION_UNKNOWN;
|
//return category->getVersion() != LLViewerInventoryCategory::VERSION_UNKNOWN;
|
||||||
return (category->getVersion() != LLViewerInventoryCategory::VERSION_UNKNOWN) || (mUUID == gLocalInventoryRoot) || (gInventory.isObjectDescendentOf(mUUID, gLocalInventoryRoot));
|
return (category->getVersion() != LLViewerInventoryCategory::VERSION_UNKNOWN) || (mUUID == gSystemFolderRoot) || (gInventory.isObjectDescendentOf(mUUID, gSystemFolderRoot));
|
||||||
// </edit>
|
// </edit>
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2355,7 +2351,7 @@ BOOL LLFolderBridge::removeItem()
|
|||||||
if(cat)
|
if(cat)
|
||||||
{
|
{
|
||||||
// <edit> trash problem
|
// <edit> trash problem
|
||||||
if(gInventory.isObjectDescendentOf(cat->getUUID(), gLocalInventoryRoot))
|
if(gInventory.isObjectDescendentOf(cat->getUUID(), gSystemFolderRoot))
|
||||||
{
|
{
|
||||||
S32 descendents = cat->getDescendentCount();
|
S32 descendents = cat->getDescendentCount();
|
||||||
if(descendents > 0)
|
if(descendents > 0)
|
||||||
@@ -4942,10 +4938,8 @@ void wear_inventory_category_on_avatar_step2( BOOL proceed, void* userdata )
|
|||||||
}
|
}
|
||||||
for(i = 0; i < wearable_count; ++i)
|
for(i = 0; i < wearable_count; ++i)
|
||||||
{
|
{
|
||||||
|
|
||||||
gAddToOutfit = wear_info->mAppend;
|
gAddToOutfit = wear_info->mAppend;
|
||||||
|
|
||||||
|
|
||||||
found = found_container.get(i);
|
found = found_container.get(i);
|
||||||
gWearableList.getAsset(found->mAssetID,
|
gWearableList.getAsset(found->mAssetID,
|
||||||
found->mName,
|
found->mName,
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ LLUUID LLLocalInventory::addItem(std::string name, int type, LLUUID asset_id)
|
|||||||
perms->setMaskOwner(0);
|
perms->setMaskOwner(0);
|
||||||
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
||||||
item_id,
|
item_id,
|
||||||
gLocalInventoryRoot,
|
gSystemFolderAssets,
|
||||||
*perms,
|
*perms,
|
||||||
asset_id,
|
asset_id,
|
||||||
(LLAssetType::EType)type,
|
(LLAssetType::EType)type,
|
||||||
@@ -63,7 +63,6 @@ void LLLocalInventory::addItem(LLViewerInventoryItem* item)
|
|||||||
//gInventory.addPretendItem(item);
|
//gInventory.addPretendItem(item);
|
||||||
LLInventoryModel::update_map_t update;
|
LLInventoryModel::update_map_t update;
|
||||||
++update[item->getParentUUID()];
|
++update[item->getParentUUID()];
|
||||||
item->updateServer(TRUE);
|
|
||||||
gInventory.accountForUpdate(update);
|
gInventory.accountForUpdate(update);
|
||||||
gInventory.updateItem(item);
|
gInventory.updateItem(item);
|
||||||
gInventory.notifyObservers();
|
gInventory.notifyObservers();
|
||||||
@@ -185,7 +184,7 @@ void LLLocalInventory::loadInvCache(std::string filename)
|
|||||||
LLUUID container_id;
|
LLUUID container_id;
|
||||||
container_id.generate();
|
container_id.generate();
|
||||||
container->setUUID(container_id);
|
container->setUUID(container_id);
|
||||||
container->setParent(gLocalInventoryRoot);
|
container->setParent(gSystemFolderRoot);
|
||||||
container->setPreferredType(LLAssetType::AT_NONE);
|
container->setPreferredType(LLAssetType::AT_NONE);
|
||||||
LLInventoryModel::update_map_t container_update;
|
LLInventoryModel::update_map_t container_update;
|
||||||
++container_update[container->getParentUUID()];
|
++container_update[container->getParentUUID()];
|
||||||
@@ -229,7 +228,7 @@ void LLLocalInventory::loadInvCache(std::string filename)
|
|||||||
// If the parent exists and outside of pretend inventory, generate a new uuid
|
// If the parent exists and outside of pretend inventory, generate a new uuid
|
||||||
else if(gInventory.getCategory((*cat_iter)->getParentUUID()))
|
else if(gInventory.getCategory((*cat_iter)->getParentUUID()))
|
||||||
{
|
{
|
||||||
if(!gInventory.isObjectDescendentOf((*cat_iter)->getParentUUID(), gLocalInventoryRoot, TRUE))
|
if(!gInventory.isObjectDescendentOf((*cat_iter)->getParentUUID(), gSystemFolderRoot, TRUE))
|
||||||
{
|
{
|
||||||
std::map<LLUUID,LLUUID>::iterator itr = conflicting_cats.find((*cat_iter)->getParentUUID());
|
std::map<LLUUID,LLUUID>::iterator itr = conflicting_cats.find((*cat_iter)->getParentUUID());
|
||||||
if(itr == conflicting_cats.end())
|
if(itr == conflicting_cats.end())
|
||||||
@@ -276,7 +275,7 @@ void LLLocalInventory::loadInvCache(std::string filename)
|
|||||||
// If the parent exists and outside of pretend inventory, generate a new uuid
|
// If the parent exists and outside of pretend inventory, generate a new uuid
|
||||||
if(gInventory.getCategory((*item_iter)->getParentUUID()))
|
if(gInventory.getCategory((*item_iter)->getParentUUID()))
|
||||||
{
|
{
|
||||||
if(!gInventory.isObjectDescendentOf((*item_iter)->getParentUUID(), gLocalInventoryRoot, TRUE))
|
if(!gInventory.isObjectDescendentOf((*item_iter)->getParentUUID(), gSystemFolderRoot, TRUE))
|
||||||
{
|
{
|
||||||
std::map<LLUUID,LLUUID>::iterator itr = conflicting_cats.find((*item_iter)->getParentUUID());
|
std::map<LLUUID,LLUUID>::iterator itr = conflicting_cats.find((*item_iter)->getParentUUID());
|
||||||
if(itr == conflicting_cats.end())
|
if(itr == conflicting_cats.end())
|
||||||
@@ -536,7 +535,7 @@ void LLFloaterNewLocalInventory::onClickOK(void* user_data)
|
|||||||
|
|
||||||
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
||||||
item_id,
|
item_id,
|
||||||
gLocalInventoryRoot,
|
gSystemFolderRoot,
|
||||||
*perms,
|
*perms,
|
||||||
asset_id,
|
asset_id,
|
||||||
type,
|
type,
|
||||||
|
|||||||
@@ -2148,19 +2148,6 @@ bool idle_startup()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// <edit> testing adding a local inventory folder...
|
|
||||||
LLViewerInventoryCategory* test_cat = new LLViewerInventoryCategory(gAgent.getID());
|
|
||||||
test_cat->rename(std::string("Pretend Inventory"));
|
|
||||||
LLUUID test_cat_id;
|
|
||||||
test_cat_id.generate();
|
|
||||||
test_cat->setUUID(test_cat_id);
|
|
||||||
gLocalInventoryRoot = test_cat_id;
|
|
||||||
test_cat->setParent(LLUUID::null);
|
|
||||||
test_cat->setPreferredType(LLAssetType::AT_NONE);
|
|
||||||
|
|
||||||
gInventory.addCategory(test_cat);
|
|
||||||
// </edit>
|
|
||||||
|
|
||||||
// OGPX login-flags : we don't currently get those passed back (there is a gendered hack in the code elsewhere)
|
// OGPX login-flags : we don't currently get those passed back (there is a gendered hack in the code elsewhere)
|
||||||
// unsure if OGPX should be getting all these.
|
// unsure if OGPX should be getting all these.
|
||||||
if (LLUserAuth::getInstance()->mResult["login-flags"].isArray())
|
if (LLUserAuth::getInstance()->mResult["login-flags"].isArray())
|
||||||
@@ -2965,6 +2952,40 @@ bool idle_startup()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// <edit> 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-F113-7357-000000000100");
|
||||||
|
system_folder->setUUID(system_folder_id);
|
||||||
|
gSystemFolderRoot = system_folder_id;
|
||||||
|
system_folder->setParent(LLUUID::null);
|
||||||
|
system_folder->setPreferredType(LLAssetType::AT_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(LLAssetType::AT_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(LLAssetType::AT_NONE);
|
||||||
|
gInventory.addCategory(assets_folder);
|
||||||
|
}
|
||||||
|
// </edit>
|
||||||
|
|
||||||
options.clear();
|
options.clear();
|
||||||
if(LLUserAuth::getInstance()->getOptions("buddy-list", options))
|
if(LLUserAuth::getInstance()->getOptions("buddy-list", options))
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -70,7 +70,7 @@
|
|||||||
#include "object_flags.h"
|
#include "object_flags.h"
|
||||||
#include "llimview.h"
|
#include "llimview.h"
|
||||||
// <edit>
|
// <edit>
|
||||||
#include "llappviewer.h" // gLocalInventoryRoot
|
#include "llappviewer.h" // System Folders
|
||||||
#include "llparcel.h" // always rez
|
#include "llparcel.h" // always rez
|
||||||
#include "llviewerparcelmgr.h" // always rez
|
#include "llviewerparcelmgr.h" // always rez
|
||||||
// </edit>
|
// </edit>
|
||||||
@@ -1161,13 +1161,11 @@ void LLToolDragAndDrop::dropTextureAllFaces(LLViewerObject* hit_obj,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
LLUUID asset_id = item->getAssetUUID();
|
LLUUID asset_id = item->getAssetUUID();
|
||||||
// <edit>
|
BOOL success = handleDropTextureProtections(hit_obj, item, source, src_id);
|
||||||
/*BOOL success = handleDropTextureProtections(hit_obj, item, source, src_id);
|
|
||||||
if(!success)
|
if(!success)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
// </edit>
|
|
||||||
LLViewerImage* image = gImageList.getImage(asset_id);
|
LLViewerImage* image = gImageList.getImage(asset_id);
|
||||||
LLViewerStats::getInstance()->incStat(LLViewerStats::ST_EDIT_TEXTURE_COUNT );
|
LLViewerStats::getInstance()->incStat(LLViewerStats::ST_EDIT_TEXTURE_COUNT );
|
||||||
S32 num_faces = hit_obj->getNumTEs();
|
S32 num_faces = hit_obj->getNumTEs();
|
||||||
@@ -1205,13 +1203,11 @@ void LLToolDragAndDrop::dropTextureOneFace(LLViewerObject* hit_obj,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
LLUUID asset_id = item->getAssetUUID();
|
LLUUID asset_id = item->getAssetUUID();
|
||||||
// <edit>
|
BOOL success = handleDropTextureProtections(hit_obj, item, source, src_id);
|
||||||
/*BOOL success = handleDropTextureProtections(hit_obj, item, source, src_id);
|
|
||||||
if(!success)
|
if(!success)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}*/
|
}
|
||||||
// </edit>
|
|
||||||
// update viewer side image in anticipation of update from simulator
|
// update viewer side image in anticipation of update from simulator
|
||||||
LLViewerImage* image = gImageList.getImage(asset_id);
|
LLViewerImage* image = gImageList.getImage(asset_id);
|
||||||
LLViewerStats::getInstance()->incStat(LLViewerStats::ST_EDIT_TEXTURE_COUNT );
|
LLViewerStats::getInstance()->incStat(LLViewerStats::ST_EDIT_TEXTURE_COUNT );
|
||||||
@@ -1383,8 +1379,11 @@ void LLToolDragAndDrop::dropObject(LLViewerObject* raycast_target,
|
|||||||
msg->addUUIDFast(_PREHASH_GroupID, parcel->getGroupID());
|
msg->addUUIDFast(_PREHASH_GroupID, parcel->getGroupID());
|
||||||
else if(gAgent.isInGroup(parcel->getOwnerID()))
|
else if(gAgent.isInGroup(parcel->getOwnerID()))
|
||||||
msg->addUUIDFast(_PREHASH_GroupID, parcel->getOwnerID());
|
msg->addUUIDFast(_PREHASH_GroupID, parcel->getOwnerID());
|
||||||
else msg->addUUIDFast(_PREHASH_GroupID, gAgent.getGroupID());
|
else
|
||||||
} else msg->addUUIDFast(_PREHASH_GroupID, gAgent.getGroupID());
|
msg->addUUIDFast(_PREHASH_GroupID, gAgent.getGroupID());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
msg->addUUIDFast(_PREHASH_GroupID, gAgent.getGroupID());
|
||||||
|
|
||||||
msg->nextBlock("RezData");
|
msg->nextBlock("RezData");
|
||||||
// if it's being rezzed from task inventory, we need to enable
|
// if it's being rezzed from task inventory, we need to enable
|
||||||
@@ -1994,7 +1993,7 @@ EAcceptance LLToolDragAndDrop::willObjectAcceptInventory(LLViewerObject* obj, LL
|
|||||||
LLViewerInventoryItem* vitem = (LLViewerInventoryItem*)item;
|
LLViewerInventoryItem* vitem = (LLViewerInventoryItem*)item;
|
||||||
// <edit>
|
// <edit>
|
||||||
//if(!vitem->isComplete()) return ACCEPT_NO;
|
//if(!vitem->isComplete()) return ACCEPT_NO;
|
||||||
if(!vitem->isComplete() && !(gInventory.isObjectDescendentOf(vitem->getUUID(), gLocalInventoryRoot))) return ACCEPT_NO;
|
if(!vitem->isComplete() && !(gInventory.isObjectDescendentOf(vitem->getUUID(), gSystemFolderRoot))) return ACCEPT_NO;
|
||||||
// </edit>
|
// </edit>
|
||||||
if (vitem->getIsLinkType()) return ACCEPT_NO; // No giving away links
|
if (vitem->getIsLinkType()) return ACCEPT_NO; // No giving away links
|
||||||
|
|
||||||
@@ -2054,10 +2053,7 @@ EAcceptance LLToolDragAndDrop::willObjectAcceptInventory(LLViewerObject* obj, LL
|
|||||||
{
|
{
|
||||||
return ACCEPT_NO_LOCKED;
|
return ACCEPT_NO_LOCKED;
|
||||||
}
|
}
|
||||||
// <edit> allow dropping textures onto objects
|
return ACCEPT_NO;
|
||||||
//return ACCEPT_NO;
|
|
||||||
return ACCEPT_YES_SINGLE;
|
|
||||||
// </edit>
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -2404,7 +2400,7 @@ EAcceptance LLToolDragAndDrop::dad3dTextureObject(
|
|||||||
locateInventory(item, cat);
|
locateInventory(item, cat);
|
||||||
// <edit>
|
// <edit>
|
||||||
//if(!item || !item->isComplete()) return ACCEPT_NO;
|
//if(!item || !item->isComplete()) return ACCEPT_NO;
|
||||||
if( !item || (!item->isComplete() && !(gInventory.isObjectDescendentOf(item->getUUID(), gLocalInventoryRoot))) ) return ACCEPT_NO;
|
if( !item || (!item->isComplete() && !(gInventory.isObjectDescendentOf(item->getUUID(), gSystemFolderRoot))) ) return ACCEPT_NO;
|
||||||
// </edit>
|
// </edit>
|
||||||
EAcceptance rv = willObjectAcceptInventory(obj, item);
|
EAcceptance rv = willObjectAcceptInventory(obj, item);
|
||||||
if((mask & MASK_CONTROL))
|
if((mask & MASK_CONTROL))
|
||||||
@@ -2415,9 +2411,6 @@ EAcceptance LLToolDragAndDrop::dad3dTextureObject(
|
|||||||
}
|
}
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
// <edit>
|
|
||||||
/*
|
|
||||||
// </edit>
|
|
||||||
if(!obj->permModify())
|
if(!obj->permModify())
|
||||||
{
|
{
|
||||||
return ACCEPT_NO_LOCKED;
|
return ACCEPT_NO_LOCKED;
|
||||||
@@ -2427,9 +2420,6 @@ EAcceptance LLToolDragAndDrop::dad3dTextureObject(
|
|||||||
{
|
{
|
||||||
return ACCEPT_NO;
|
return ACCEPT_NO;
|
||||||
}
|
}
|
||||||
// <edit>
|
|
||||||
*/
|
|
||||||
// </edit>
|
|
||||||
|
|
||||||
if(drop && (ACCEPT_YES_SINGLE <= rv))
|
if(drop && (ACCEPT_YES_SINGLE <= rv))
|
||||||
{
|
{
|
||||||
@@ -2857,13 +2847,11 @@ EAcceptance LLToolDragAndDrop::dad3dRezFromObjectOnLand(
|
|||||||
locateInventory(item, cat);
|
locateInventory(item, cat);
|
||||||
if(!item || !item->isComplete()) return ACCEPT_NO;
|
if(!item || !item->isComplete()) return ACCEPT_NO;
|
||||||
|
|
||||||
// <edit>
|
if(!gAgent.allowOperation(PERM_COPY, item->getPermissions())
|
||||||
//if(!gAgent.allowOperation(PERM_COPY, item->getPermissions())
|
|| !item->getPermissions().allowTransferTo(LLUUID::null))
|
||||||
// || !item->getPermissions().allowTransferTo(LLUUID::null))
|
{
|
||||||
//{
|
return ACCEPT_NO_LOCKED;
|
||||||
// return ACCEPT_NO_LOCKED;
|
}
|
||||||
//}
|
|
||||||
// </edit>
|
|
||||||
if(drop)
|
if(drop)
|
||||||
{
|
{
|
||||||
dropObject(obj, TRUE, TRUE, FALSE);
|
dropObject(obj, TRUE, TRUE, FALSE);
|
||||||
@@ -2893,14 +2881,12 @@ EAcceptance LLToolDragAndDrop::dad3dRezFromObjectOnObject(
|
|||||||
//}
|
//}
|
||||||
//return rv;
|
//return rv;
|
||||||
}
|
}
|
||||||
// <edit>
|
if(!item->getPermissions().allowCopyBy(gAgent.getID(),
|
||||||
//if(!item->getPermissions().allowCopyBy(gAgent.getID(),
|
gAgent.getGroupID())
|
||||||
// gAgent.getGroupID())
|
|| !item->getPermissions().allowTransferTo(LLUUID::null))
|
||||||
// || !item->getPermissions().allowTransferTo(LLUUID::null))
|
{
|
||||||
//{
|
return ACCEPT_NO_LOCKED;
|
||||||
// return ACCEPT_NO_LOCKED;
|
}
|
||||||
//}
|
|
||||||
// </edit>a
|
|
||||||
if(drop)
|
if(drop)
|
||||||
{
|
{
|
||||||
dropObject(obj, FALSE, TRUE, FALSE);
|
dropObject(obj, FALSE, TRUE, FALSE);
|
||||||
|
|||||||
@@ -468,167 +468,6 @@ void upload_error(const std::string& error_message, const std::string& label, co
|
|||||||
LLFilePicker::instance().reset();
|
LLFilePicker::instance().reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class LLFileEnableCloseWindow : public view_listener_t
|
class LLFileEnableCloseWindow : public view_listener_t
|
||||||
{
|
{
|
||||||
bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
|
bool handleEvent(LLPointer<LLEvent> event, const LLSD& userdata)
|
||||||
@@ -959,6 +798,13 @@ void upload_new_resource(const std::string& src_filename, std::string name,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// <edit>
|
||||||
|
else if(exten == "ogg")
|
||||||
|
{
|
||||||
|
asset_type = LLAssetType::AT_SOUND; // tag it as audio
|
||||||
|
filename = src_filename;
|
||||||
|
}
|
||||||
|
// </edit>
|
||||||
else if(exten == "tmp")
|
else if(exten == "tmp")
|
||||||
{
|
{
|
||||||
// This is a generic .lin resource file
|
// This is a generic .lin resource file
|
||||||
@@ -1124,13 +970,6 @@ void upload_new_resource(const std::string& src_filename, std::string name,
|
|||||||
// </edit>
|
// </edit>
|
||||||
}
|
}
|
||||||
// <edit>
|
// <edit>
|
||||||
// <edit>
|
|
||||||
else if(exten == "ogg")
|
|
||||||
{
|
|
||||||
asset_type = LLAssetType::AT_SOUND; // tag it as audio
|
|
||||||
filename = src_filename;
|
|
||||||
}
|
|
||||||
// </edit>
|
|
||||||
else if (exten == "animatn")
|
else if (exten == "animatn")
|
||||||
{
|
{
|
||||||
asset_type = LLAssetType::AT_ANIMATION;
|
asset_type = LLAssetType::AT_ANIMATION;
|
||||||
@@ -1265,9 +1104,14 @@ void temp_upload_callback(const LLUUID& uuid, void* user_data, S32 result, LLExt
|
|||||||
perms->setMaskGroup(PERM_ALL);
|
perms->setMaskGroup(PERM_ALL);
|
||||||
perms->setMaskNext(PERM_ALL);
|
perms->setMaskNext(PERM_ALL);
|
||||||
|
|
||||||
|
LLUUID destination = gInventory.findCategoryUUIDForType(LLAssetType::AT_TEXTURE);
|
||||||
|
if (gSavedSettings.getBOOL("AscentUseSystemFolder") && gSavedSettings.getBOOL("AscentSystemTemporary"))
|
||||||
|
{
|
||||||
|
destination = gSystemFolderAssets;
|
||||||
|
}
|
||||||
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
LLViewerInventoryItem* item = new LLViewerInventoryItem(
|
||||||
item_id,
|
item_id,
|
||||||
gLocalInventoryRoot,
|
destination,
|
||||||
*perms,
|
*perms,
|
||||||
uuid,
|
uuid,
|
||||||
(LLAssetType::EType)data->mAssetInfo.mType,
|
(LLAssetType::EType)data->mAssetInfo.mType,
|
||||||
|
|||||||
@@ -2001,7 +2001,7 @@ BOOL LLVOVolume::lineSegmentIntersect(const LLVector3& start, const LLVector3& e
|
|||||||
|
|
||||||
if (face_hit >= 0 && mDrawable->getNumFaces() > face_hit)
|
if (face_hit >= 0 && mDrawable->getNumFaces() > face_hit)
|
||||||
{
|
{
|
||||||
LLFace* face = mDrawable->getFace(face_hit);
|
LLFace* face = mDrawable->getFace(face_hit);
|
||||||
|
|
||||||
if (pick_transparent || !face->getTexture() || face->getTexture()->getMask(face->surfaceToTexture(tc, p, n)))
|
if (pick_transparent || !face->getTexture() || face->getTexture()->getMask(face->surfaceToTexture(tc, p, n)))
|
||||||
{
|
{
|
||||||
@@ -2414,7 +2414,7 @@ void LLVolumeGeometryManager::rebuildMesh(LLSpatialGroup* group)
|
|||||||
|
|
||||||
if (group->isState(LLSpatialGroup::MESH_DIRTY))
|
if (group->isState(LLSpatialGroup::MESH_DIRTY))
|
||||||
{
|
{
|
||||||
S32 num_mapped_veretx_buffer = LLVertexBuffer::sMappedCount ;
|
S32 num_mapped_vertex_buffer = LLVertexBuffer::sMappedCount ;
|
||||||
|
|
||||||
group->mBuilt = 1.f;
|
group->mBuilt = 1.f;
|
||||||
|
|
||||||
@@ -2473,7 +2473,7 @@ void LLVolumeGeometryManager::rebuildMesh(LLSpatialGroup* group)
|
|||||||
}
|
}
|
||||||
|
|
||||||
//if not all buffers are unmapped
|
//if not all buffers are unmapped
|
||||||
if(num_mapped_veretx_buffer != LLVertexBuffer::sMappedCount)
|
if(num_mapped_vertex_buffer != LLVertexBuffer::sMappedCount)
|
||||||
{
|
{
|
||||||
if (++warningsCount > 20) // Do not spam the log file uselessly...
|
if (++warningsCount > 20) // Do not spam the log file uselessly...
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -83,6 +83,18 @@
|
|||||||
tool_tip="Confirms Power User activation. Turn this on at your own risk, and use any features it enables responsibly. Ascent devs will not replace anything you break if you ruin something important. Unlike most checkboxes, you must apply/ok changes before this will activate."
|
tool_tip="Confirms Power User activation. Turn this on at your own risk, and use any features it enables responsibly. Ascent devs will not replace anything you break if you ruin something important. Unlike most checkboxes, you must apply/ok changes before this will activate."
|
||||||
mouse_opaque="true" name="power_user_confirm_check" radio_style="false"
|
mouse_opaque="true" name="power_user_confirm_check" radio_style="false"
|
||||||
width="400" />
|
width="400" />
|
||||||
|
<check_box bottom_delta="-20" control_name="AscentUseSystemFolder" enabled="true"
|
||||||
|
follows="left|top" font="SansSerifSmall" height="16" initial_value="true"
|
||||||
|
label="Enable Ascent System Inventory (Requires Restart)" left="10"
|
||||||
|
tool_tip="Creates a new folder in the inventory for storing settings files and non-permanent assets."
|
||||||
|
mouse_opaque="true" name="system_folder_check" radio_style="false"
|
||||||
|
width="400" />
|
||||||
|
<check_box bottom_delta="-20" control_name="AscentSystemTemporary" enabled="true"
|
||||||
|
follows="left|top" font="SansSerifSmall" height="16" initial_value="false"
|
||||||
|
label="Temporary uploads go in the System Asset folder." left="20"
|
||||||
|
tool_tip="Puts temporary uploads in the Asset folder which separates them from actual uploads, making them easier to find."
|
||||||
|
mouse_opaque="true" name="temp_in_system_check" radio_style="false"
|
||||||
|
width="400" />
|
||||||
</panel>
|
</panel>
|
||||||
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
||||||
follows="left|top|right|bottom" label="Chat/IM" name="Chat/IM">
|
follows="left|top|right|bottom" label="Chat/IM" name="Chat/IM">
|
||||||
|
|||||||
Reference in New Issue
Block a user